{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/getchord-xyz/json-schema/getchord-xyz-arc-token-row-schema.json",
  "title": "ArcTokenRow",
  "description": "One token on Arc with its 24-hour tape.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/getchord-xyz-arc-data-api-openapi.yml#/components/schemas/ArcTokenRow",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "EVM address, hex, case-insensitive."
    },
    "symbol": {
      "type": [
        "string",
        "null"
      ],
      "description": ""
    },
    "name": {
      "type": [
        "string",
        "null"
      ],
      "description": ""
    },
    "decimals": {
      "type": [
        "integer",
        "null"
      ],
      "description": ""
    },
    "logoURI": {
      "type": [
        "string",
        "null"
      ],
      "description": "Logo through Chord's proxy (`/v1/logo/5042/{address}`, 128 px WebP)."
    },
    "logoUriRaw": {
      "type": [
        "string",
        "null"
      ],
      "description": "The upstream logo URL the proxy fetched, when there is one."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "`stablecoin`, `fx`, `stock`, … — from the curated list; empty for unlisted tokens."
    },
    "listed": {
      "type": "boolean",
      "description": "On the curated Arc token list (metadata and logo vetted)."
    },
    "priceUsd": {
      "type": [
        "number",
        "null"
      ],
      "description": "Last trade price on the token's dominant venue, USD."
    },
    "change24hPct": {
      "type": [
        "number",
        "null"
      ],
      "description": ""
    },
    "volume24h": {
      "type": "number",
      "description": "USD, every venue, no dust floor."
    },
    "buyVolume24h": {
      "type": "number",
      "description": ""
    },
    "sellVolume24h": {
      "type": "number",
      "description": ""
    },
    "trades24h": {
      "type": "integer",
      "description": ""
    },
    "buys24h": {
      "type": "integer",
      "description": ""
    },
    "sells24h": {
      "type": "integer",
      "description": ""
    },
    "traders": {
      "type": "integer",
      "description": "Distinct attributed wallets over the board's day window. Routers, executors and bots are not wallets."
    },
    "lastTradeTs": {
      "type": "integer",
      "description": "Unix time, seconds, UTC."
    },
    "totalSupply": {
      "type": [
        "number",
        "null"
      ],
      "description": "`totalSupply()` in whole tokens. Null when unreadable."
    },
    "marketCapUsd": {
      "type": [
        "number",
        "null"
      ],
      "description": "totalSupply × price — fully diluted, since nothing on-chain says what is locked."
    },
    "pools": {
      "type": "object",
      "properties": {
        "v3": {
          "type": "integer",
          "description": ""
        },
        "v2": {
          "type": "integer",
          "description": ""
        },
        "v4": {
          "type": "integer",
          "description": ""
        },
        "byDex": {
          "type": "object",
          "properties": {},
          "description": "Pool count per venue id (`uniswap_v3`, `uniswap_v4`, `pools_trade`, `slipstream_fork`, `v3fork_<8hex>`, …).",
          "additionalProperties": {
            "type": "integer"
          }
        }
      },
      "description": "Indexed pools holding the token."
    },
    "routable": {
      "type": "boolean",
      "description": "The engine can quote this token today (at least one pool against a routing anchor)."
    },
    "flags": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "wash",
          "impostor"
        ]
      },
      "description": "Honesty flags. `wash` = a day's volume carried by one or two wallets; `impostor` = an unlisted token wearing a listed symbol. Absent when clean."
    }
  }
}