MINARA

Single crypto price quote

GET /v1/quote/crypto/:symbol — Price and 24-hour percentage change from Backend /assets/quote. The Agent resolves a canonical assetId through /assets/r

GET /v1/quote/crypto/:symbol

Price and 24-hour percentage change from Backend /assets/quote. The Agent resolves a canonical assetId through /assets/resolve, then reads that exact asset. referenceDataSource/sourceRef are not required; no direct CMC/CoinGecko request or price-provider fallback is made. With address and chain, the symbol is only a display label. Unmatched identities, missing snapshots and transport failures remain explicitly unavailable. Coverage and source timestamps are preserved. USD market statistics are a separate resource at /v1/markets/crypto/stats and remain available independently of price coverage. The UI uses the Token Info percentage from that resource only when this Backend change field is absent.

MethodGET
Path/v1/quote/crypto/:symbol
AuthAuthorization: Bearer <token> required when GATEWAY_AUTH_TOKEN is set
Categorymarket

Response body

{"connected": true, "supported": true, "assetId": "crypto:bitcoin", "symbol": "BTC", "source": "minara", "price": 78000.12, "price_change_24h_pct": 1.2, "currency": "USD", "asOf": "2026-09-14T08:00:00.000Z", "retrievedAt": "2026-09-14T08:00:05.000Z", "coverage": {"status": "partial", "sources": ["hyperliquid_snapshot"], "stale": false, "dataAgeMs": 5000, "reason": "partial_coverage", "missing": []}}

Notes

Gateway and AI get_price share this reader and a five-second Backend snapshot cache, cleared on account or backend changes. Every call checks authenticated asset identity. Coverage.sources identifies the actual stored data source, which may be a Hyperliquid mark-price snapshot; this endpoint does not relabel it as CMC spot data. asOf is the Backend primary quote timestamp, while retrievedAt is local retrieval time. Missing numeric fields remain absent, never zero-filled. Fixed-exchange, stock and K-line readers retain their own paths.

On this page