Retrieve an asset
GET /capabilities/assets/{symbol} - Read one asset capability record by symbol.
0Gate is the primary public integration path for hosted payment, ramp, and swap experiences. Keep secret-key operations on your server and hand only browser-safe values to the widget.
Endpoint
| Field | Value |
|---|---|
| Method | GET |
| Path | /v1/capabilities/assets/{symbol} |
| Area | Capabilities |
| Operation id | getAsset |
| Auth boundary | Secret key from your server. |
The {symbol} path parameter is a crypto asset symbol, discovered from GET /capabilities/assets. An unknown or inactive symbol returns 404.
Use it for
Read a single asset's capability record by symbol when you already know the asset and want its current networks, active flag, and limits — for example to validate an asset on your server before creating a session, or to render an asset detail view.
Use this endpoint only for discovery. It is read-only and never moves money, locks a quote, or creates a session.
Production rules
- Keep secret keys on your server. This endpoint requires an
sk_*key; a publishablepk_*key can only call embed-bootstrap. - Validate the asset
symboland the chosennetworks[].chainon your server before quoting or creating a session. - Treat a
404as "not transactable here" — both an unknown symbol and an asset not offered in the resolved region return404, with no leak about which assets exist elsewhere. - Branch on machine-readable fields (
symbol,active,networks[].chain) and theX-Request-Idheader, not on display strings. - Treat examples and placeholder values as fake data only.
Request
This is a GET with no body.
| Parameter | In | Required | Type | Use it for |
|---|---|---|---|---|
symbol | path | Yes | string | The asset symbol to retrieve, for example USDC. Case-insensitive. |
side | query | No | on_ramp / off_ramp | Resolve the record for that side. Defaults to on_ramp; a symbol not transactable on the requested side returns 404. |
Response
Returns a single asset object (not wrapped in a list envelope). It carries the same fields as a list element, plus the echoed currency.
| Field | Type | Description |
|---|---|---|
object | string | Always asset. |
symbol | string | Asset symbol. Use this as the canonical id. |
name | string | Human-readable asset name; falls back to symbol. |
side | on_ramp / off_ramp | The side this record was resolved for. |
active | boolean | false when temporarily disabled — do not offer it. |
icon_url | string | null | Asset icon URL, or null. |
networks | array | Supported on-chain networks (see below). |
networks[].chain | string | Network/chain identifier. |
networks[].name | string | Display name for the network. |
networks[].contract_address | string | null | Token contract address on that chain, or null for a native asset. |
min_amount | string | null | Per-asset minimum, as a decimal string, or null when not set. |
max_amount | string | null | Per-asset maximum, as a decimal string, or null when not set. |
currency | string | null | The echoed fiat (ISO 4217) the record was resolved for, or null. |
Examples
curl 'https://gate-api.0bit.app/v1/capabilities/assets/USDC?side=on_ramp' \
-H "Authorization: Bearer sk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"{
"object": "asset",
"symbol": "USDC",
"name": "USD Coin",
"side": "on_ramp",
"active": true,
"icon_url": "https://cdn.example/usdc.svg",
"networks": [
{
"chain": "ethereum",
"name": "ethereum",
"contract_address": "0x0000000000000000000000000000000000000000"
}
],
"min_amount": null,
"max_amount": null,
"currency": null
}Errors
All errors use the unified envelope and carry an X-Request-Id response header. Branch on code/type/statusCode, not on the free-form message.
{
"type": "not_found",
"code": "not_found",
"message": "Example not-found error using fake data.",
"request_id": "req_test_000000000123",
"doc_url": null,
"statusCode": 404
}| Status | type | When it happens |
|---|---|---|
401 | unauthorized | Missing or invalid secret key. |
404 | not_found | Unknown symbol, not transactable on the requested side, or not offered in the resolved region. |
429 | rate_limited | Request throttled. Back off and retry. |
5xx | server_error | Transient server or upstream failure. Retry with backoff. |
Related pages
List supported assets
Read the full asset capability catalog and filter it.
List supported currencies
Read fiat currency capability data before creating a session.
Check 0Gate eligibility
Probe region, currency, and asset eligibility in one call.
Errors
Handle the unified error envelope, request ids, and retries.
Public boundary
This reference covers partner-scoped capability discovery. Internal operations, administrative routes, settlement venues and providers, and unsupported availability claims are outside the public API contract.