---
title: "One exchange as a whole"
method: GET
path: "/v1/entities/{slug}"
tags: ["entities"]
---

# One exchange as a whole

`GET /v1/entities/{slug}`

## Request

- Base URL: `https://stablescan.achivx.com`
- URL: `https://stablescan.achivx.com/v1/entities/{slug}`
- Auth: none required

Every address the label book gives the exchange on our settled networks — its own Proof-of-Reserves wallets and the deposits and collectors derived from on-chain sweeps (`derived: true`) — and its stablecoin flows across the boundary of that set in four windows (24h, 7d, 30d, 90d), per network and per stablecoin; a 90-day series; the exchanges it exchanged stablecoins with; the head of its address list (own wallets, and the 20 busiest deposits per network). Inflow enters the set, outflow leaves it, and a transfer with both ends inside it (a deposit swept into a hot wallet) is `internal`: a customer deposit counts once. Balances are live reads of the own wallets only — a floor of the exchange's on-chain stablecoins, not its reserves. 404 for an exchange that is not published or not built yet.

## Path parameters

- `slug` string, required

## Response `200`

One exchange as a whole.

- Entity
  - `addresses` object, required
    - `active_30d` integer, required: Addresses with at least one stablecoin transfer in the 30d window.
    - `collectors` integer, required: Derived collector wallets: addresses the entity's deposits sweep into and that forward to its reserves.
    - `deposits` integer, required: Derived deposit addresses: customer addresses at the exchange whose outflow sweeps (at least 95 percent) into it.
    - `own` integer, required: Addresses from the exchange's own Proof-of-Reserves list (listed, hot, cold).
    - `total` integer, required: Every address of the entity on the settled networks.
  - `as_of_day` string, required: The newest UTC day (YYYY-MM-DD) the flows may include: the last full day before built_at.
  - `balances` object, required
    - `read` integer, required
    - `read_at` string, required
    - `total` integer, required
    - `total_usd6` integer, nullable, required: Live stablecoin balance of the entity's own wallets that were read; null when none was.
  - `built_at` string, required: When the nightly build assembled this document.
  - `compliance` object, required
    - `frozen` integer, required: Addresses of the entity under a standing issuer freeze or seizure.
    - `frozen_deposits` integer, required: The deposit addresses among frozen: customer funds held at the exchange that the issuer froze.
    - `sanctioned` integer, required: Addresses of the entity on the OFAC SDN list.
  - `counterparties` object[], nullable, required: Other exchanges this entity exchanged stablecoins with over the 30d window, largest first: a transfer whose other end is an address of that exchange.
    - `in_usd6` integer, required: From the counterparty into this entity in the 30d window.
    - `name` string, required
    - `networks` string[], nullable, required: Networks the two exchanged stablecoins on in the window.
    - `out_usd6` integer, required: From this entity to the counterparty in the 30d window.
    - `slug` string, required
    - `transfers` integer, required
  - `daily` object[], nullable, required
    - `day` string, required
    - `inflow_usd6` integer, required
    - `internal_usd6` integer, required
    - `networks` object[], nullable, required
      - `inflow_usd6` integer, required
      - `network` string, required
      - `outflow_usd6` integer, required
    - `outflow_usd6` integer, required
    - `swept_usd6` integer, required
  - `flows` object[], nullable, required: Inflow, outflow and internal movement across the whole entity in four windows ending on as_of_day: 24h, 7d, 30d, 90d.
    - `complete` boolean, required: True when every day of the window is measured.
    - `days_measured` integer, required: Days of the window measured on every network in scope. The sums include every day measured on any network, so a window short of a day on one network is not complete.
    - `from` string, required: First UTC day of the window.
    - `inflow_usd6` integer, required: Transfers from outside the entity's address set into it.
    - `inflow_via_deposits_usd6` integer, required: The part of inflow that landed on a deposit address.
    - `internal_usd6` integer, required: Transfers with both ends in the entity's address set; in neither inflow nor outflow.
    - `netflow_usd6` integer, required: inflow minus outflow.
    - `outflow_usd6` integer, required: Transfers from the entity's address set to outside it.
    - `swept_usd6` integer, required: The part of internal paid by a deposit address: customer deposits collected into the exchange's wallets.
    - `to` string, required: Last UTC day of the window (as_of_day).
    - `transfers` integer, required: Transfers across the boundary (inflow plus outflow), counted per edge-day.
    - `window` string, required: 24h, 7d, 30d or 90d.
    - `window_days` integer, required
  - `indexable` boolean, required: Whether the entity page is offered to search engines: at least two addresses from the exchange's own list, or at least $1M of inflow plus outflow in 30 days.
  - `labels_updated` string: Newest UTC day a label of the entity entered the label book.
  - `last_active_day` string: Newest measured UTC day with a stablecoin transfer on any of the entity's addresses.
  - `list_carries_deposits` boolean, required: True when the exchange's own Proof-of-Reserves list names its customers' deposit addresses alongside its wallets without telling them apart (OKX): addresses.own counts the whole list, and balances are read on its busiest addresses, not on its wallets alone.
  - `members` object[], nullable, required: The head of the address list: the entity's own wallets (up to 100 per network) and the 20 deposit addresses with the most 30d turnover on each network. The rest: GET /v1/entities/{slug}/addresses.
    - `address` string, required
    - `balance_usd6` integer, nullable, required: Live stablecoin balance; null when not read (deposit addresses are not read, and a failed read is not a zero).
    - `balances` object[], nullable, required: balance_usd6 by stablecoin, largest first; null when not read.
      - `symbol` string, required
      - `usd6` integer, required
    - `chain_id` integer, required
    - `derived` boolean, required: True when the scanner derived the address from on-chain sweeps rather than reading it from the exchange's own list.
    - `frozen` boolean, required
    - `group` string, required: own (the exchange's wallets) or deposit (its customers' deposit addresses).
    - `in_30d_usd6` integer, required: Everything the address received in the 30d window, internal transfers included.
    - `last_active_day` string: Newest UTC day with a stablecoin transfer since the pass started measuring; empty when none.
    - `network` string, required
    - `out_30d_usd6` integer, required: Everything the address sent in the 30d window, internal transfers included (a deposit's sweep is its outflow).
    - `rank` integer, required: Position within (network, group): own by balance then turnover, deposits by 30d turnover.
    - `role` string, required: listed, hot or cold (the exchange's own list), collector or deposit (derived by the label graph).
    - `sanctioned` boolean, required
    - `tx_30d` integer, required
  - `name` string, required: The entity's name as the exchange's own Proof-of-Reserves list carries it.
  - `networks` object[], nullable, required
    - `active_30d` integer, required
    - `balance_usd6` integer, nullable, required: Live stablecoin balance of the entity's own wallets read on this network; null when none was read.
    - `balances_read` integer, required
    - `balances_total` integer, required
    - `chain_id` integer, required
    - `collectors` integer, required
    - `deposits` integer, required
    - `flows` object[], nullable, required
      - `complete` boolean, required: True when every day of the window is measured.
      - `days_measured` integer, required: Days of the window measured on every network in scope. The sums include every day measured on any network, so a window short of a day on one network is not complete.
      - `from` string, required: First UTC day of the window.
      - `inflow_usd6` integer, required: Transfers from outside the entity's address set into it.
      - `inflow_via_deposits_usd6` integer, required: The part of inflow that landed on a deposit address.
      - `internal_usd6` integer, required: Transfers with both ends in the entity's address set; in neither inflow nor outflow.
      - `netflow_usd6` integer, required: inflow minus outflow.
      - `outflow_usd6` integer, required: Transfers from the entity's address set to outside it.
      - `swept_usd6` integer, required: The part of internal paid by a deposit address: customer deposits collected into the exchange's wallets.
      - `to` string, required: Last UTC day of the window (as_of_day).
      - `transfers` integer, required: Transfers across the boundary (inflow plus outflow), counted per edge-day.
      - `window` string, required: 24h, 7d, 30d or 90d.
      - `window_days` integer, required
    - `frozen` integer, required: Addresses of the entity on this network under a standing issuer freeze or seizure.
    - `last_indexed_block` integer, required: The network's indexing cursor when the document was built.
    - `measured_from` string: First UTC day this network's flows are measured from; empty when none is measured yet.
    - `network` string, required: The network's URL word (ethereum, tron, bnb-chain, ...).
    - `own` integer, required
    - `present` boolean, required: True when the entity moved stablecoins on this network in the 90d window or its own wallets hold a balance here.
    - `prev_as_of_day` string
    - `prev_balance_usd6` integer, nullable, required: balance_usd6 in the previous build, of prev_as_of_day; null when there was none.
    - `sanctioned` integer, required: Addresses of the entity on this network on the OFAC SDN list.
    - `volume_30d_usd6` integer, required: All stablecoin volume settled on this network on the 30d window's measured days: the denominator of the entity's share here.
  - `note` string, required
  - `partial` boolean, required: True when some figure covers less than its window or its address set; partial_reasons names which.
  - `partial_reasons` string[], nullable, required: Why partial is true: flows_window_incomplete (a window has days not yet measured on some network), balances_incomplete (some own wallets were not read).
  - `share` object, required
    - `entity_30d_usd6` integer, required: The entity's inflow plus outflow over the 30d window's measured days.
    - `volume_30d_usd6` integer, required: All stablecoin volume settled on our networks on the same measured days: the denominator.
  - `slug` string, required: The entity's URL word: /entity/{slug}.
  - `tokens` object[], nullable, required
    - `balance_usd6` integer, nullable, required: Live balance of the entity's own wallets read; null when none was read.
    - `freezable_on` string[], nullable, required: Networks where this stablecoin's contract lets its issuer freeze or seize a balance (a capability of the contract, not a record of its use).
    - `holders` integer, required: Own wallets read that hold a non-zero balance of this stablecoin.
    - `inflow_30d_usd6` integer, required
    - `networks` string[], nullable, required: Networks (URL words) where the entity moved or holds this stablecoin.
    - `outflow_30d_usd6` integer, required
    - `symbol` string, required

## Other responses

- `404`: The one error envelope. Branch on `error.code`, not on the status.
- `429`: The per-IP token bucket (20 requests/second, burst 40) is empty — wait `Retry-After`.
- `500`: The one error envelope. Branch on `error.code`, not on the status.
- `503`: The one error envelope. Branch on `error.code`, not on the status.

---

[API](https://skmtc.dev/achivx/apis/stablecoin-scanner-rest-api.md) · [All operations](https://skmtc.dev/achivx/apis/stablecoin-scanner-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/achivx/apis/stablecoin-scanner-rest-api/revisions/cbd001c8925c?raw)
