{"eid":"blockworks","name":"Messari","domain":"blockworks.com","resolved_by":"domain","topics":["data-apis"],"n_records":1,"best_vorder":3,"review":null,"aliases":["Messari","Messari (Blockworks Data API)","blockworks.com"],"records":[{"rid":"data-apis/messari","card":{"rid":"data-apis/messari","eid":"blockworks","topic":"data-apis","slug":"messari","provider":"Messari (Blockworks Data API)","url":"https://docs.blockworks.com/getting-started/authentication","domain":"blockworks.com","category":"crypto market and onchain data API (assets, protocols, exchanges, timeseries)","tier":"Free","verdict":"paid-only","vorder":3,"grp":"paid","self_hosted":0,"confidence":"documented","binding":"write-gated","identity_kind":"email","identity_basis":"stated","needs_card":0,"needs_phone":0,"needs_id":0,"needs_institution":0,"country":null,"crypto":null,"interfaces":"rest","egress_metered":0,"per_object_bytes":null,"retention_days":null,"verified_at":"2026-11-03T00:30:00.000Z","verified_basis":"live","checked_on":"2026-11-03","stale_on":"2026-12-04","n_evidence":7,"usd_month":null,"usd_per_tb_month":null,"summary":"No free market-data allowance found: every call needs an API key, the Free plan lists no Assets endpoints, and most models need a paid plan; models of the un...","duplicate_of":null,"n_unknown":1,"free_unit":"none"},"record":{"topic":"data-apis","slug":"messari","provider":"Messari (Blockworks Data API)","url":"https://docs.blockworks.com/getting-started/authentication","category":"crypto market and onchain data API (assets, protocols, exchanges, timeseries)","tier":"Free","free_tier":{"stated":"No free market-data allowance found: every call needs an API key, the Free plan lists no Assets endpoints, and most models need a paid plan; models of the unpaid access tier work with any valid key, and the docs do not list them","unit":"none","metered_on":"none","source_url":"https://docs.blockworks.com/getting-started/authentication","read_on":"2026-11-02","notes":"The Data API enforces no rate limit and caches answers for 30 minutes. A keyless call to the tabular assets model answered HTTP 401 although the quickstart calls that model public; the legacy api.messari.io v1 endpoint answered 403 invalid auth mechanism. The Pro plan opens only the Assets endpoints; its price is not on the page."},"per_object_cap":{"stated":"not stated","bytes":null,"source_url":"https://docs.blockworks.com/getting-started/authentication","notes":""},"retention":{"stated":"not applicable","days":null,"notes":""},"egress":{"terms":"not metered in bytes","metered":false,"free_allowance":null,"price_per_tb":null,"source_url":"https://docs.blockworks.com/getting-started/authentication"},"interface":["rest"],"interface_detail":"GET https://api.blockworks.com/query/tabular/... and /query/timeseries/... with the X-Blockworks-API-Key header; the legacy x-messari-api-key header is still accepted","endpoint":"https://api.blockworks.com","tooling":"curl or any HTTP client; an MCP server, warehouse Datashares and spreadsheet plugins are sales-gated","chaining":"Crypto market data from here needs a paid plan; CoinPaprika and CoinLore give keyless prices, DefiLlama keyless DeFi metrics.","limits":[{"kind":"write-gated","value":"paid or permission-gated access: a free-plan key answers 403 on models of the paid tier","source":"https://docs.blockworks.com/getting-started/authentication"}],"limits_note":"Bulk path: the legacy Bulk API gave CSV or JSONL downloads by subscription tier; the current Datashares are sales-gated. Storage terms: unverified. Rate limit: none enforced by the Data API; the legacy docs gave 200 requests a minute for unpaid keys.","binding":"write-gated","binding_note":"Access to a model, not a request count, decides what a free key can read.","identity_cost":{"kind":"email","detail":"A key is made in an account at app.blockworks.com; the sign-up form was not read, so what it asks is unverified: behind a sign-up.","country":null},"reliability_note":"A keyless call answered HTTP 401 on the assets model the quickstart calls public; the legacy host answered 403.","confidence":"documented","confidence_note":"Access tiers and the pricing table are first-party; the keyless 401 contradicts the quickstart; the free key was not exercised.","evidence":[{"url":"https://docs.blockworks.com/getting-started/authentication","date":"2026-11-02","proved":"unpaid-tier models work with any valid key","capture":"sha256:1359bc90b5da1124b6cd4de373205c29e73e681201da5307235baaf6a7beefe2","quote":"Any request that carries a valid API key, on any plan."},{"url":"https://docs.blockworks.com/getting-started/authentication","date":"2026-11-02","proved":"paid models refuse a free-plan key with 403","capture":"sha256:1359bc90b5da1124b6cd4de373205c29e73e681201da5307235baaf6a7beefe2","quote":"`403 this model requires a paid subscription` with a free-plan key"},{"url":"https://docs.blockworks.com/getting-started/authentication","date":"2026-11-02","proved":"the Data API enforces no rate limit and caches 30 minutes","capture":"sha256:1359bc90b5da1124b6cd4de373205c29e73e681201da5307235baaf6a7beefe2","quote":"The Data API itself enforces no rate limit and sends no `RateLimit-*` or `Retry-After` headers."},{"url":"https://app.blockworks.com/pricing","date":"2026-11-02","proved":"Pro opens only the Assets endpoints of the API","capture":"sha256:ba3334e423dfa99270a1e1ec42da34af22477ebcd555709147a8eb406d4a449f","quote":"Pro provides access to only the Assets endpoints in the API."},{"url":"https://docs.messari.io/api-reference/permissions","date":"2026-11-02","proved":"legacy docs set unpaid keys at 200 requests a minute","capture":"sha256:f2a86683d9b6aef28b6cca433a6af83e2be0452bf721965b90819a71b83e9d82","quote":"| Unpaid / Lite / Pro | 200 requests / min |"},{"url":"probe:https://api.blockworks.com/query/tabular/assets?pageSize=2","date":"2026-11-02","proved":"a keyless call to the assets model answered HTTP 401","capture":"sha256:5ade858281fa1069b39c764932b32416c0c8d74e80257bf674c3ef647cf00b39","quote":"\"status\": 401"},{"url":"probe:https://api.blockworks.com/query/tabular/assets?pageSize=2","date":"2026-11-02","proved":"the 401 says the model requires authentication","capture":"sha256:47c9d8318f3d9d2f8618e615863608039ae059858e7372140c3113e07c95dfd5","quote":"this model requires authentication"}],"verdict":"paid-only","verified_at":"2026-11-03T00:30:00.000Z","notes":"No keyless route; a free key reaches only unpaid-tier models. Bulk path: sales-gated. Storage terms: unverified.","extras":{"bulk_path":"legacy Bulk API by tier; Datashares by sales"}},"claims":[{"path":"$.free_tier","kind":"has-free-tier","num":0.0,"unit":null,"per":null,"currency":null,"usd":null,"fx_date":null,"parse":"ok"},{"path":"$.free_tier.stated","kind":"free-quota","num":null,"unit":null,"per":null,"currency":null,"usd":null,"fx_date":null,"parse":"unparsed"},{"path":"$.limits[0].value","kind":"limit:write-gated","num":null,"unit":null,"per":null,"currency":null,"usd":null,"fx_date":null,"parse":"unparsed"}],"unknown":[["$.retention.stated","not-applicable"]],"history":[],"drift":[]}]}