URLs
Each chain answers on two equivalent forms. Use whichever suits your client.
Append the route:
…/query, …/query/json, …/status, …/v1/schema, …/v1/sets,
…/v1/queries, …/v1/account.
api.bloklake.com without /v1/chains/<name> does not pick a chain. It returns 404 with a
hint to add the chain to the path.Keys, billing and limits across chains
- One API key works on every chain. You don’t need a key per chain.
- Billing is per project, across chains. Data from every chain counts toward the same pay-as-you-go balance or subscription allowance. The dashboard breaks usage down by chain.
- The requests-per-second limit counts all chains together. 10 rps on Standard means 10 per second in total, not 10 per chain.
- The limit on open requests is per chain. See Rate limits.
- Sets and prepared queries are stored by each chain’s server. Create them on every chain you use them on (creating a set is idempotent, so just create it again).
One client for every chain
Requests and responses have the same shape on every chain. You can select any field on any chain; a field the chain doesn’t have comes back as an all-null column and is listed inunavailable_fields. That way one client and one schema work everywhere. See
Fields a chain doesn’t have.
Chain status
The chain status page shows each chain’s latest and finalized block, the first block served, and which fields it doesn’t fill. The same information is available from the API:GET /status: latest block, finalized block, block range.GET /v1/schema: every field and whether this chain has it.