Background
No route namespaces by network — /accounts, /summary/:address, /subscribe/:address, /graphql all hit the single global RPC/DB. Once storage and indexing are network-aware (W070–W072), the API must let callers pick a network (default testnet for back-compat).
What to build
Accept a network via ?network= (and/or a path segment) and thread it into RPC + DB reads.
Key files
src/api.ts — routes (98-111, 157-763), getLatestLedger uses (189, 199, 227)
- GraphQL resolvers
Suggested execution
git checkout -b feat/api-network-selector
- Parse
network from query/header; validate against enabled networks; default testnet
- Pass it to DB queries (W070) and
getRpc(network) (W071)
- Document the param in the OpenAPI spec
Acceptance criteria
Drips Wave · Complexity: Intermediate · 150 points
Required: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk
Background
No route namespaces by network —
/accounts,/summary/:address,/subscribe/:address,/graphqlall hit the single global RPC/DB. Once storage and indexing are network-aware (W070–W072), the API must let callers pick a network (default testnet for back-compat).What to build
Accept a network via
?network=(and/or a path segment) and thread it into RPC + DB reads.Key files
src/api.ts— routes (98-111, 157-763),getLatestLedgeruses (189, 199, 227)Suggested execution
networkfrom query/header; validate against enabled networks; defaulttestnetgetRpc(network)(W071)Acceptance criteria
?network=mainnetreturns mainnet data; default stays testnet/readyz//statusreport per-network healthRequired: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk