Messari (Blockworks Data API)
- Free allowance
- 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
- Verdict
- paidno free allowance; listed for its price
- Cost
- no price stated
- Identity
- emailno card, no phone
- Binding limit
- write-gatedpaid or permission-gated access: a free-plan key answers 403 on models of the paid tier
- Evidence
- documented7 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-04checked 2026-11-03 (live); stale on 2026-12-04
| Free tier | 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; 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. |
|---|---|
| Price | none stated |
| Limits |
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 Access to a model, not a request count, decides what a free key can read. |
| Identity | email 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. |
| Egress | not metered in bytes |
| Per-object cap | not stated |
| Interface | rest 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 |
| Composes with | Crypto market data from here needs a paid plan; CoinPaprika and CoinLore give keyless prices, DefiLlama keyless DeFi metrics. |
| Reliability | A keyless call answered HTTP 401 on the assets model the quickstart calls public; the legacy host answered 403. |
| Notes | No keyless route; a free key reaches only unpaid-tier models. Bulk path: sales-gated. Storage terms: unverified. |
| Evidence note | documented Access tiers and the pricing table are first-party; the keyless 401 contradicts the quickstart; the free key was not exercised. |
| Parsed numbers |
|
Evidence 7
| date | source | what it proved |
|---|---|---|
| 2026-11-02 | docs.blockworks.com/getting-started/authentication | unpaid-tier models work with any valid key |
| 2026-11-02 | docs.blockworks.com/getting-started/authentication | paid models refuse a free-plan key with 403 |
| 2026-11-02 | docs.blockworks.com/getting-started/authentication | the Data API enforces no rate limit and caches 30 minutes |
| 2026-11-02 | app.blockworks.com/pricing | Pro opens only the Assets endpoints of the API |
| 2026-11-02 | docs.messari.io/api-reference/permissions | legacy docs set unpaid keys at 200 requests a minute |
| 2026-11-02 | probe: https://api.blockworks.com/query/tabular/assets?pageSize=2 | a keyless call to the assets model answered HTTP 401 |
| 2026-11-02 | probe: https://api.blockworks.com/query/tabular/assets?pageSize=2 | the 401 says the model requires authentication |
More fields 1
| bulk path | legacy Bulk API by tier; Datashares by sales |
|---|
Unknown values 1
- retention stated: the field does not apply to this kind of offer