Agora Public API

Getting started with Agora's API.

The endpoints exposed here are currently in Beta! As we continue to build our initial offering, these endpoints may implement breaking changes. Be sure to check back for our change log regularly as a precaution.

The Agora Public API exposes real-time data and operations for the Agora stablecoin platform. The current surface covers:

  • Metrics — real-time AUSD supply, aggregate and per-chain, across every supported chain. Public, no authentication required.
  • Accounts — the bank accounts and blockchain wallets registered to your organization.
  • Routes — reusable mint and redeem routes (fiat ↔ AUSD, stablecoin ↔ AUSD) and the settlement instructions for each.

Accounts and Routes are authenticated; Metrics is open.

Download OpenAPI spec

Base URL

All endpoints are served from https://api.agora.finance.

Authentication

Public-supply (metrics) endpoints require no authentication. Every other endpoint is in Beta and requires an API key, which you exchange for a short-lived session JWT. API keys are issued by Agora on request during Beta: to inquire about getting one, reach out to the Agora team. See the Authentication guide for the full flow.

Make your first request

The metrics endpoints are public, so you can make a call without any credentials:

$curl https://api.agora.finance/v0/metrics

For authenticated endpoints, exchange your API key for a session JWT first (see Authentication), then attach it as a bearer token. The full surface, with request and response schemas for every endpoint, lives under Endpoints.

Conventions

A few conventions hold across the API:

  • Monetary values are decimal strings, not numbers. Amount fields are strings like "987654321.654321". AUSD carries six decimals of precision; representing an amount as a JSON number would silently truncate it. Parse with a decimal library (decimal.Decimal in Python, BigNumber.js in JavaScript, rust_decimal in Rust). This follows industry standard practice (Circle, Stripe).
  • Every response carries a Request-Id header. Capture it in your logs — it’s how Agora support traces a specific request end-to-end.

Endpoint-specific response details — such as the per-chain shape and partial-state behavior of /v0/metrics — are documented on each endpoint under Endpoints.

Errors

Errors share a common JSON shape with a stable code, a human-readable message, and a docs_url. Triggered rate limits return 429 rate_limit_exceeded with a Retry-After header. See the Error Reference for the full code list, the 401 reason taxonomy, and handling guidance.