> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whitebit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Asset status list

> Get the deposit and withdrawal status for all supported assets on WhiteBIT via the V4 API.

* [Fee](/api-reference/market-data/fee) — deposit and withdrawal fee schedule per asset.
* [Market info](/api-reference/market-data/market-info) — trading pair configuration and rules.

## Notes

### Asset type classification

The endpoint returns three structurally distinct asset types. Use the presence or absence of the `confirmations` and `providers` fields to classify each asset.

| Asset type          | `confirmations` field | `providers` field      |
| ------------------- | --------------------- | ---------------------- |
| Crypto asset        | Present               | Absent                 |
| Fiat currency       | Absent                | Present (may be empty) |
| Fiat payment method | Absent                | Absent                 |

**Crypto assets** (e.g., `BTC`, `ETH`, `USDT`) include a `confirmations` object with required blockchain confirmation counts per network.

**Fiat currencies** (e.g., `EUR`, `USD`, `UAH`) include a `providers` object listing available payment processors. The `providers` field is present even when the list is empty.

**Fiat payment methods** (e.g., `EUR_ADVCASH`, `USD_VISAMASTER`) represent individual payment channels. These entries include neither `confirmations` nor `providers`. The network identifier in the `networks` field matches the asset ticker.


## OpenAPI

````yaml /openapi/public/http-v4.yaml GET /api/v4/public/assets
openapi: 3.0.3
info:
  title: Public HTTP API V4
  description: >
    WhiteBIT Public HTTP API V4 for market data and trading information.

    Base URL: https://whitebit.com

    All endpoints return time in Unix-time format.

    All endpoints return either a JSON object or array.

    Use HTTP method GET for API calls.

    Send parameters as query string when an endpoint requires them.


    <Warning>

    Rate limit: 2000 requests/10 sec for most endpoints (specific limits noted
    per endpoint).

    </Warning>


    ## Caching and data freshness


    Most public endpoints serve cached data. The cache is **shared across all
    callers** — values are keyed by the resource (market, currency), never by
    account — and invalidates on a **time basis only**: an upstream change
    becomes visible after the next refresh, not immediately.


    Two refresh tiers apply:


    - **Reference data** (`markets`, `assets`, `fee`, `collateral/markets`,
    `futures`) refreshes from the database on a fixed interval, ranging from
    about 10 seconds to about 1 minute depending on the endpoint.

    - **Market data** (`trades`, `orderbook`, `orderbook/depth`, `ticker`) uses
    a short-lived cache, about 1 second by default.


    `time` and `ping` are computed per request and are not cached. Each endpoint
    states its own refresh interval. Polling faster than that interval returns
    identical data and consumes rate-limit budget without producing fresher
    results.


    ## Error responses


    Public V4 endpoints do not share a single error schema. Depending on the
    endpoint, an error arrives in one of three shapes (there is no `params`
    field on any public error):


    - **Flat validation bag (HTTP 422)** — `{ "<field>": ["<message>"] }`. No
    envelope. Used by the market endpoints (`orderbook`, `orderbook/depth`,
    `trades`). Example: `{ "market": ["Market is not available."] }`. On
    `funding-history` the values are single strings rather than arrays.

    - **Wrapped, HTTP 200 even on validation errors** — `{ "success": false,
    "message": { "<field>": ["<message>"] }, "result": null }`. Used by the V4
    `kline` endpoint (not part of this portal — the documented Kline endpoint is
    V1).

    - **Wrapped string message (HTTP 4xx)** — `{ "success": false, "message":
    "<string>", "errors": [] }`. Used by the margin/futures collateral subset of
    endpoints. Parameterless endpoints (`markets`, `ticker`, `assets`, `fee`)
    take no input and so produce no validation errors — they fail only at the
    infrastructure level below.


    Common failures are produced at the infrastructure layer, not by the
    application, and do not follow these shapes:


    - **Maintenance** — every endpoint returns **HTTP 503** with a non-JSON body
    served by the gateway.

    - **Rate limit exceeded** — **HTTP 429** with a non-JSON body served by the
    gateway/CDN.

    - **Internal server error** — **HTTP 500** with a flat body `{ "error":
    ["Internal server error."] }`.

    - **Unknown route** — **HTTP 404** with an empty body.
  version: 4.0.0
servers:
  - url: https://whitebit.com
    description: WhiteBIT Global Server
  - url: https://whitebit.eu
    description: WhiteBIT EU Server
security: []
tags:
  - name: Public API V4
    description: Public endpoints for market data, trading information, and platform status
paths:
  /api/v4/public/assets:
    get:
      tags:
        - Public API V4
      summary: Asset Status List
      description: >
        The endpoint retrieves the deposit and withdrawal status for every
        supported asset. Use the response to check whether deposits and
        withdrawals are enabled, read per-network fee and limit details, and
        determine required blockchain confirmation counts. The response includes
        crypto assets, fiat currencies, and fiat payment methods.


        <Note>

        Asset status is reference data, re-synced approximately once per minute.
        Polling more frequently returns identical data. The cache is shared
        across all callers.

        </Note>


        <Warning>

        Rate limit: 2000 requests/10 sec. See [Public API V4
        overview](/public/http-v4/index) for rate limit details.

        </Warning>
      parameters: []
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/Asset'
              example:
                BTC:
                  name: Bitcoin
                  unified_cryptoasset_id: 1
                  can_withdraw: true
                  can_deposit: true
                  min_withdraw: '0.001'
                  max_withdraw: '2'
                  maker_fee: '0.1'
                  taker_fee: '0.1'
                  min_deposit: '0.0001'
                  max_deposit: '0'
                  currency_precision: 18
                  is_memo: false
                  memo:
                    deposit: false
                    withdraw: false
                  networks:
                    deposits:
                      - BTC
                    withdraws:
                      - BTC
                    default: BTC
                  limits:
                    deposit:
                      BTC:
                        min: '0.001'
                    withdraw:
                      BTC:
                        min: '0.002'
                  confirmations:
                    BTC: 2
                USDT:
                  name: Tether US
                  unified_cryptoasset_id: 825
                  can_withdraw: true
                  can_deposit: true
                  min_withdraw: '5'
                  max_withdraw: '0'
                  maker_fee: '0.1'
                  taker_fee: '0.1'
                  min_deposit: '0'
                  max_deposit: '0'
                  currency_precision: 6
                  is_memo: false
                  memo:
                    deposit: false
                    withdraw: false
                  networks:
                    deposits:
                      - ERC20
                      - TRC20
                      - OMNI
                      - BEP20
                    withdraws:
                      - ERC20
                      - TRC20
                      - OMNI
                      - BEP20
                    default: ERC20
                  limits:
                    deposit:
                      ERC20:
                        min: '5'
                        max: '1000'
                      TRC20:
                        min: '5'
                    withdraw:
                      ERC20:
                        min: '10'
                        max: '1000'
                      TRC20:
                        min: '10'
                  confirmations:
                    ERC20: 20
                    TRC20: 20
        default:
          description: Error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorV4'
components:
  schemas:
    Asset:
      type: object
      properties:
        name:
          type: string
          description: Full name of cryptocurrency
          example: Bitcoin
        unified_cryptoasset_id:
          type: integer
          description: >-
            Unique ID of cryptocurrency assigned by Unified Cryptoasset ID, 0 if
            unknown
          example: 1
        can_withdraw:
          type: boolean
          description: Indicates withdrawal status (enabled or disabled)
          example: true
        can_deposit:
          type: boolean
          description: Indicates deposit status (enabled or disabled)
          example: true
        min_withdraw:
          type: string
          description: Minimum withdrawal amount for the asset
          example: '0.001'
        max_withdraw:
          type: string
          description: Maximum withdrawal amount for the asset
          example: '2'
        maker_fee:
          type: string
          description: >-
            Maker fee expressed as a direct percentage value (e.g., "0.1" means
            0.1%). Note: GET /api/v4/public/markets expresses the same fee as a
            decimal ratio (e.g., "0.001" = 0.1%) — the formats differ between
            endpoints.
          example: '0.1'
        taker_fee:
          type: string
          description: >-
            Taker fee expressed as a direct percentage value (e.g., "0.1" means
            0.1%). Note: GET /api/v4/public/markets expresses the same fee as a
            decimal ratio (e.g., "0.001" = 0.1%) — the formats differ between
            endpoints.
          example: '0.1'
        min_deposit:
          type: string
          description: Min deposit amount
          example: '0.0001'
        max_deposit:
          type: string
          description: Max deposit amount; omitted if no limit, 0 if unlimited
          example: '0'
        currency_precision:
          type: integer
          description: Max number of digits to the right of the decimal point
          example: 18
        is_memo:
          type: boolean
          description: Indicates whether the asset requires a memo address
          example: false
        memo:
          type: object
          description: >-
            Indicates whether the asset requires a memo for deposits and
            withdrawals
          properties:
            deposit:
              type: boolean
              example: false
            withdraw:
              type: boolean
              example: false
        networks:
          type: object
          description: Currency networks
          properties:
            deposits:
              type: array
              description: >-
                Networks available for depositing. Absent when deposits are
                disabled for the asset (can_deposit: false). Examples of assets
                where the field may be absent: AMB, AVA, A, KZT.
              items:
                type: string
              example:
                - BTC
            withdraws:
              type: array
              description: >-
                Networks available for withdrawing. Absent when withdrawals are
                disabled for the asset (can_withdraw: false). Examples: AVA, A
                (Vaulta).
              items:
                type: string
              example:
                - BTC
            default:
              type: string
              description: >-
                Default network used when no specific network is selected by the
                user. Absent when multiple networks exist but no explicit
                default priority has been configured (e.g., AGRS, ANKR, APE,
                POL).
              example: BTC
        limits:
          type: object
          description: Currency limits by each network
          properties:
            deposit:
              type: object
              description: Deposits limits
              additionalProperties:
                type: object
                properties:
                  min:
                    type: string
                    example: '0.001'
                  max:
                    type: string
                    example: '1000'
            withdraw:
              type: object
              description: Withdraws limits
              additionalProperties:
                type: object
                properties:
                  min:
                    type: string
                    example: '0.002'
                  max:
                    type: string
                    example: '1000'
        confirmations:
          type: object
          description: >-
            Required blockchain confirmations for deposits, mapped by network
            name (e.g., {"BTC": 2, "ERC20": 20}). Absent for fiat currencies,
            demo assets, and internal exchange tokens (e.g., UAH, EUR, DBTC,
            DUSDT). Individual network keys may also be absent if a network was
            historically supported but is currently disabled.
          additionalProperties:
            type: integer
          example:
            BTC: 2
        providers:
          type: object
          description: >-
            Payment provider identifiers for fiat assets (e.g., VISAMASTER,
            ADVCASH, GEOPAY). Use these identifiers as the network parameter
            value when making fiat deposits or withdrawals via the API —
            equivalent to network codes such as ERC20 or TRC20 for crypto
            assets.
          properties:
            deposits:
              type: array
              items:
                type: string
              example:
                - VISAMASTER
                - ADVCASH
            withdraws:
              type: array
              items:
                type: string
              example:
                - VISAMASTER
                - GEOPAY
    ErrorV4:
      type: object
      description: >-
        Generic wrapped error envelope (fallback). Market-data validation errors
        use the flat PublicValidationError shape (HTTP 422) instead, and
        infrastructure-level failures (maintenance, rate limit, internal error,
        unknown route) are non-JSON or flat. See the API description for the
        full set of public error shapes.
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
          description: Error message
          example: Internal server error.
        errors:
          type: array
          items:
            type: string
          example: []

````