Skip to main content
Base URL: https://api.eco.com. Use the v1 API to discover supported assets, request quotes, fund intents, track their status, and create Circle Gateway deposit addresses. Integrate a transfer in four stages:
  1. GET /v1/chains and GET /v1/tokens to discover supported assets. Refresh cached discovery data periodically.
  2. POST /v1/quotes to price a transfer. The response includes the exact transaction to send.
  3. Fund the quote: send execution.transaction from the funder, or post a signed authorization to a submit endpoint.
  4. GET /v1/intents/status to track the delivery intent. On multi-intent routes, source-leg fulfillment is not final delivery.

Authentication

The key is sent as an x-api-key header and belongs on a server, never in a browser or mobile app. Partner pricing and features are tied to the key. Contact Eco to get one. Key errors are listed in Errors and retries. On 2026-09-30 (UTC), keyless requests to chains, tokens, and intent status still succeeded in a read-only check. The documented integration policy requires a v1 key for those operations; do not depend on that observed access behavior.

Conventions

  • Requests are JSON with Content-Type: application/json. Unknown or misplaced keys are rejected with 400.
  • Amounts are base-unit decimal strings ("1000000" is 1 USDC). Arithmetic belongs in bigint.
  • slippage is a decimal fraction from 0.0001 to 1; 0.005 means 0.5%.
  • v1 quote and status timestamps are Unix seconds. Legacy deposit records can contain ISO 8601 timestamps.
  • Quote, fee, step, and transaction discriminators use type.
  • A quote can contain more than one intent. steps[] tells you the route shape; Intent types explains how to interpret those shapes.
  • IDs carry a type prefix (quote:, gasless:, intent:). Status filters quoteId and jobId take the bare UUID.
  • Page size (limit) is 1 to 50, default 20.
  • Circle Gateway deposit-address create and lookup keep a { data: … } envelope and their own error format.
  • Every quote is signed. See Quote verification.
  • Endpoint examples use mainnet token and contract addresses with placeholder wallets, hashes, signatures, and IDs. They are not executable quotes or authorizations.

Rate limits and retries

No requests-per-second quota is published. Handle 429 with backoff and honor Retry-After when present. Preserve signed submit payloads so that uncertain responses can be retried without creating a new authorization. See Errors and retries.

Next steps