0Bit Documentation

Read pool capabilities

GET /pools/{id}/capabilities - Read the self-describing networks, fees, limits, and deposit address for an entitled pool.

0Pools API pages are for approved headless partners. They cover the partner-visible quote, transact, status, trade, and balance lifecycle only.

Endpoint

FieldValue
MethodGET
Path/pools/{id}/capabilities
AreaCapabilities
Operation idgetCapabilities
Auth boundarySecret key from your server.

Use it for

Read the self-describing configuration for an entitled pool: the crypto networks it supports, the side(s) it allows, your per-tier draw fee and spread cap, your order-size limits, and your dedicated deposit address.

Read capabilities, do not hard-code

Treat this endpoint as the source of truth for supported networks, the draw fee, the spread cap, and minimum and maximum order sizes. Read it at startup and refresh it periodically instead of hard-coding values in your integration. Configuration is provisioned per partner and can change without a code release on your side.

Use this endpoint only for the partner-scoped resource it describes. Store your own reference id, the returned 0Bit object id, the request id, timestamps, and the current configuration so support and reconciliation do not depend on browser callbacks alone.

Response fields

FieldTypeUse
poolIdstringPool selected by entitlement; join quote, transact, and balance records.
pairstringHuman-readable currency pair for display and reconciliation.
fiatCurrencystringFiat side of the pool.
cryptoCurrencystringCrypto side of the pool.
supportedNetworksstring arrayCrypto networks this pool may transact and deliver on (for example tron, ethereum).
sidesstring arrayAllowed sides for this pool: on_ramp, off_ramp, or both.
tierstringYour provisioned tier for the pool.
drawFeeBpsintegerYour per-tier draw fee, in basis points. This is the fee charged, not a ceiling.
spreadCapBpsintegerMaximum FX spread that can be quoted, in basis points. This is the only capped value here.
minOrderUsdtnumberMinimum order size. Validate order amounts against this before quoting.
maxOrderUsdtnumber or nullMaximum order size, or null when no maximum applies. Validate order amounts before quoting.
cryptoDepositAddressstring or nullYour dedicated 0Pools deposit address, or null until provisioned (see below).

Order-size limits and basis-point values are JSON numbers on this response. Do not parse the pair string for machine logic; use fiatCurrency and cryptoCurrency.

About cryptoDepositAddress

cryptoDepositAddress is your dedicated 0Pools deposit address. It is null until provisioned; once present, you send crypto to it for off-ramp (sell) receipt to credit your per-partner crypto balance, which the fiat payout is then drawn against. Send only the pool's cryptoCurrency on one of the pool's supportedNetworks. This address is partner-scoped: treat it as static configuration and re-read it from this endpoint rather than caching it indefinitely.

Request

curl https://pools-api.0bit.app/v1/pools/EUR-USDT/capabilities \
  -H "Authorization: Bearer sk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Response

{
  "poolId": "EUR-USDT",
  "pair": "EUR/USDT",
  "fiatCurrency": "EUR",
  "cryptoCurrency": "USDT",
  "supportedNetworks": ["tron", "ethereum", "bsc", "polygon", "solana"],
  "sides": ["on_ramp", "off_ramp"],
  "tier": "standard",
  "drawFeeBps": 1234,
  "spreadCapBps": 4321,
  "minOrderUsdt": 11,
  "maxOrderUsdt": 99999,
  "cryptoDepositAddress": "0x00000000000000000000000000000000000Test"
}

Values shown are fake placeholders. Read the live response for your account; do not copy these into production configuration.

Errors

The API returns a unified error envelope with type, code, message, request_id, doc_url, and statusCode. Every response carries an X-Request-Id header. Branch on code, not on the free-form message.

StatustypeNotable code valuesWhat it means
401unauthorizedMissing or invalid secret key. Fix credentials before retrying.
403forbiddenpools_not_enabled, pool_access_suspended, kyc_not_approved, pool_not_allowed, key_mode_mismatchValid key but access is denied. Branch on the denial code.
404not_foundPool not found or not scoped to your account. Cross-tenant reads return 404.
429rate_limitedThrottled. Retry with backoff.
5xxserver_errorServer or upstream failure. Retry bounded with backoff.

Production rules

  • Keep secret keys on your server.
  • Read capabilities to drive supported networks, fees, spread caps, and order limits instead of hard-coding them.
  • Validate environment, mode, entitlement, asset, network, and amount against this response before quoting.
  • Branch on machine-readable fields, error code, object id, and request id.
  • Treat examples and placeholder ids as fake data only.

Public boundary

This reference covers partner-visible discovery, quote, transact, status, trade, and balance behavior. Liquidity operations, routing internals, provider details, reserve logic, and runbooks are outside the public API contract.

On this page