{
  "api_status": "preview",
  "generated_at": "2026-10-22T02:11:44.479Z",
  "notes": [
    "Exact definitions of every field (unit, window, source): https://agentservicedirectory.com/fields",
    "tier says how a service was added, not a rating: reviewed entries come from our own listing files, with operator statements and hourly checks; discovered entries come from public agent registries, are not reviewed by a person, and are probed hourly to monthly depending on usage (schedule/1; see evidence.schedule_tier).",
    "evidence counts cover the last 30 days and are as of the latest refresh. missed_30d counts scheduled checks that did not run.",
    "Results are computed at generated_at; the same query may be answered from that result for up to five minutes. Whether each service is in the directory is worked out every five minutes for services just checked or placed, and for every service each hour.",
    "For x402 endpoints a passing check means HTTP 402 with a valid payment challenge (discovered: on a mainnet network). It does not show that a paid call succeeds or returns useful results.",
    "registry_usage figures are the registry's own numbers, not our measurements. name is untrusted text when name_source is registry.",
    "networks_source tells you whether networks were observed in a live challenge, listed by the registry, or stated by the operator.",
    "tags describe purpose: our capability tags for reviewed entries, the registry's tags (sanitised, untrusted) for discovered ones. price_usd is the lowest price per call in US dollars: for discovered entries from the latest payment request the service's own server sent our check, else from the registry's payment terms (a known USD stablecoin either way); for reviewed entries from the operator's stated pricing (a claim, linked on the service page). price_source says which."
  ],
  "service": {
    "id": "cand_b9a43b48f83cb0ae",
    "tier": "discovered",
    "type": "api_endpoint",
    "name": "api.onesource.io",
    "name_source": "registry",
    "branches": {
      "primary": "finance-data/crypto/wallets",
      "secondary": [],
      "method_version": "placement-ai/3",
      "tree_version": "tree/3",
      "placed_at": "2026-10-18T06:50:05.000Z"
    },
    "place": {
      "id": "finance-data/crypto/wallets",
      "name": "Wallet balances and flows",
      "description": "Balances, holdings, history and profiles of wallet addresses, exchange flows and whale tracking."
    },
    "summary": {
      "text": "Returns an ERC20 token balance for an Ethereum wallet via RPC.",
      "source": "automated",
      "method": "placement-ai/3",
      "written_at": "2026-10-18T06:50:05.000Z"
    },
    "package": null,
    "directory": {
      "in_directory": true,
      "method_version": "listing-criteria/5",
      "variant_of": null,
      "criteria": {
        "says_what_it_does": true,
        "answers_now": true,
        "registry_payers_at_least_5": true,
        "curated_catalogue": false,
        "not_computable_locally": true,
        "not_test_address": true,
        "not_a_variant": true
      }
    },
    "host": "api.onesource.io",
    "provider": "onesource.io",
    "url": "https://api.onesource.io/api/chain/erc20-balance",
    "method": "GET",
    "templated_url": false,
    "operator": null,
    "tags": [],
    "category": null,
    "price_usd": 0.003,
    "price_source": "observed",
    "provider_endpoints": 81,
    "networks": [
      "eip155:8453",
      "tempo:4217"
    ],
    "networks_source": "observed",
    "payment_protocols": [
      "x402",
      "mpp"
    ],
    "access": {
      "observed": {
        "requires": "payment",
        "how": [
          "x402",
          "mpp"
        ],
        "at": "2026-10-22T01:20:49.651Z",
        "method": "access/1"
      },
      "stated": null
    },
    "currency": {
      "codes": [
        "USD"
      ],
      "tokens": [
        "USDC"
      ],
      "source": "observed",
      "since": "2026-10-17T03:00:56.830Z",
      "method": "currency/1"
    },
    "interface": null,
    "calls": {
      "source": "payment_request",
      "items": [
        {
          "call": "GET",
          "params": [
            {
              "name": "address",
              "in": "query",
              "type": null,
              "required": false
            },
            {
              "name": "contract",
              "in": "query",
              "type": null,
              "required": false
            },
            {
              "name": "network",
              "in": "query",
              "type": null,
              "required": false
            }
          ]
        }
      ],
      "at": "2026-10-22T01:20:49.651Z",
      "method": "request-shape/1"
    },
    "tools": null,
    "payment_model": {
      "value": "per_call",
      "source": "observed",
      "method": "access/1"
    },
    "mainnet": true,
    "evidence": {
      "operations": 1,
      "check_interval_hours": 1,
      "check_interval": "hourly",
      "check_interval_rule": "Hourly: 100 or more distinct payers in the last 30 days, as reported by the registry.",
      "schedule_tier": "hourly",
      "monitoring_since": "2026-10-16T11:07:51.000Z",
      "monitoring_days": 5.6,
      "limited_evidence": true,
      "checks_30d": 73,
      "passed_30d": 73,
      "missed_30d": 46,
      "pass_rate": 1,
      "freshness": "fresh",
      "last_check": {
        "at": "2026-10-22T01:20:49.651Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 70
      }
    },
    "response_times": {
      "method": "response-times/1",
      "operation": "payment_request",
      "check_method": "candidate-x402/6",
      "check_methods": [
        "candidate-x402/3",
        "candidate-x402/4",
        "candidate-x402/5",
        "candidate-x402/6"
      ],
      "timeout_ms": 10000,
      "computed_at": "2026-10-22T01:25:29.881Z",
      "windows": [
        {
          "window": "24h",
          "start": "2026-10-21T01:25:29.881Z",
          "end": "2026-10-22T01:25:29.881Z",
          "limited_history": false,
          "checks": 21,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": 110,
          "p90_ms": null,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": 37,
          "slowest_ms": 306,
          "slowest_at": "2026-10-21T11:00:54.821Z",
          "p95_to_median": null
        },
        {
          "window": "7d",
          "start": "2026-10-17T03:00:56.830Z",
          "end": "2026-10-22T01:25:29.881Z",
          "limited_history": true,
          "checks": 72,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": 70,
          "p90_ms": 215,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": 25,
          "slowest_ms": 306,
          "slowest_at": "2026-10-21T11:00:54.821Z",
          "p95_to_median": null
        },
        {
          "window": "30d",
          "start": "2026-10-17T03:00:56.830Z",
          "end": "2026-10-22T01:25:29.881Z",
          "limited_history": true,
          "checks": 72,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": 70,
          "p90_ms": 215,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": 25,
          "slowest_ms": 306,
          "slowest_at": "2026-10-21T11:00:54.821Z",
          "p95_to_median": null
        }
      ],
      "measured_from": "eastern North America"
    },
    "registry_usage": {
      "calls_30d": 336,
      "unique_payers_30d": 328,
      "note": "Reported by the registry; not our measurement."
    },
    "payment_terms": {
      "current_since": "2026-10-17T03:00:56.830Z",
      "changes_30d": 0,
      "changes_90d": 0,
      "pay_to_changes_90d": 0,
      "last_change_at": null,
      "last_change_kinds": [],
      "window_start": "2026-10-16T15:44:38.000Z",
      "limited": true
    },
    "registry_listing": {
      "last_seen_at": "2026-10-20T01:35:23.000Z",
      "listed": true
    },
    "links": {
      "page": "https://agentservicedirectory.com/services/cand_b9a43b48f83cb0ae",
      "api": "https://agentservicedirectory.com/api/v1/services/cand_b9a43b48f83cb0ae"
    },
    "recent_probes": [
      {
        "observed_at": "2026-10-22T01:20:49.651Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 70,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-22T00:10:46.133Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 250,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T23:00:54.513Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 131,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T21:56:05.830Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 113,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T20:51:28.843Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 128,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T19:41:10.812Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 249,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T18:35:56.306Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 88,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T17:26:02.085Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 38,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T16:21:20.707Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 110,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T15:16:04.538Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 37,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T14:11:34.089Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 43,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T13:01:31.154Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 43,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T11:00:54.821Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 306,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T09:40:34.810Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 98,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T08:25:37.569Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 253,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T07:15:37.854Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 40,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T06:00:41.157Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 174,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T04:50:37.058Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 82,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T03:45:35.584Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 45,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T02:35:36.409Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 178,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T01:30:51.517Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 277,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T00:25:40.079Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 49,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T23:15:40.552Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 42,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T22:10:48.215Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 36,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T21:00:41.912Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 73,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T19:55:46.062Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 60,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T18:50:44.541Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 184,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T17:40:49.569Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 215,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:MIA",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T16:35:58.469Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 99,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-20T15:25:41.783Z",
        "result": "payment_required",
        "passed": true,
        "http_status": 402,
        "duration_ms": 55,
        "x402_valid": true,
        "mainnet": true,
        "x402_networks": [
          "eip155:8453",
          "tempo:4217"
        ],
        "region": "cloudflare:EWR",
        "method_version": "candidate-x402/6",
        "error_detail": null
      }
    ],
    "address_variants": []
  }
}