> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.galleon8.com/api-reference/advanced-api/overview/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.galleon8.com/_mcp/server. # Advanced API Overview > Understand the W3API Advanced API reference structure. The **Advanced API** reference documents W3API JSON-RPC methods for indexed blockchain data retrieval across supported chains. Use it when your application needs normalized token, NFT, block, log, transaction, or chain statistics data without building and maintaining its own indexer. The generated method reference is built from the OpenRPC specification at `fern/openrpc/advanced-api/openrpc.json`. The spec is the source of truth for method names, parameters, response schemas, examples, and grouping. --- ## Endpoint Advanced API requests use JSON-RPC 2.0 over HTTPS: ```text https://rpc.ankr.com/multichain/ ``` Replace `` with your project API key. Request bodies include the JSON-RPC version, method name, params object, and request ID: The interactive **Try it** playground uses a docs proxy to make sample requests without exposing a project API key. Production applications should call the multichain endpoint above with their own project API key. ```json { "jsonrpc": "2.0", "method": "ankr_getTokenPrice", "params": { "blockchain": "eth", "contractAddress": "0x990f341946a3fdb507ae7e52d17851b87168017c" }, "id": 1 } ``` Successful JSON-RPC responses include a `result` object. Failed JSON-RPC responses include an `error` object with error details. Advanced API can return HTTP `200` with a JSON-RPC `error`, so clients should inspect the response body before treating a request as successful. --- ## Errors Advanced API follows JSON-RPC 2.0 response semantics and can also return implementation-specific server errors. | Code | Message | Meaning | | -------- | ----------------- | ------------------------------------------------------------------------------------------------------ | | `-32602` | `Invalid params` | The request contains invalid method parameters, such as an invalid address, blockchain, or page token. | | `-32603` | `Internal error` | The upstream JSON-RPC service hit an internal error while processing the request. | | `-32000` | Server error | Implementation-defined upstream error, such as a missing transaction or backend parsing failure. | | `-32075` | Method disabled | The method is restricted by the active project or blockchain schema. | | `-32090` | Too many requests | The upstream rate limit is exhausted. Retry after the delay in the error message, if provided. | The interactive **Try it** proxy can also return HTTP errors before a request reaches Advanced API. | HTTP status | Meaning | | ----------- | ------------------------------------------------------------------------------ | | `400` | Invalid JSON body or missing JSON-RPC method. | | `403` | Request origin is not allowed, or the method is not enabled in the docs proxy. | | `405` | Only `POST` requests are accepted. | | `413` | Request body exceeds the proxy size limit. | | `415` | `Content-Type` must be `application/json`. | | `429` | The docs proxy rate limit is exhausted. | | `500` | The docs proxy is not configured with an upstream Advanced API key. | --- ## Method Groups The generated reference includes 12 methods grouped by use case: * **Query API**: blocks, logs, address interactions, and transaction lookups. * **Token API**: balances, currencies, token prices, token holders, and token holder counts. * **NFT API**: NFT ownership, NFT metadata, and NFT holder queries. Use **Quickstart** to make a first request, then open **Methods** for the generated method list, request parameters, response schemas, and examples. > Understand the W3API Advanced API reference structure.