Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/sochain-com:sochain-com-charts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Sochain Com Charts API
version: '3'
description: 'Operations tagged Charts across 3 of this provider''s published API definitions: sochain-com-openapi.json, dev-sochain-com-openapi.json, sochain-com-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://sochain.com/api/v3
- url: https://dev.sochain.com/api/v3
security:
- ApiKey: []
- ApiKeyQuery: []
tags:
- name: Charts
paths:
/charts/{network}/{series}/{interval}:
get:
operationId: get_chart
tags:
- Charts
summary: A chart series as data
description: Price, fees, activity, mining and supply per block, hour, day or minute. One request per call; cached until the network's next block (minute series about 10 seconds).
parameters:
- $ref: '#/components/parameters/network'
- $ref: '#/components/parameters/series'
- $ref: '#/components/parameters/interval'
- $ref: '#/components/parameters/from'
- $ref: '#/components/parameters/to'
- name: currency
in: query
required: false
description: 'price_usd only: the price in this currency. The series keeps its name; the answer adds currency.'
schema:
type: string
enum:
- AUD
- BRL
- CAD
- CHF
- CNY
- CZK
- DKK
- EUR
- GBP
- HKD
- HUF
- IDR
- ILS
- INR
- ISK
- JPY
- KRW
- MXN
- MYR
- NOK
- NZD
- PHP
- PLN
- RON
- SEK
- SGD
- THB
- TRY
- USD
- ZAR
security:
- {}
- ApiKey: []
- ApiKeyQuery: []
responses:
'200':
description: The series.
content:
application/json:
schema:
type: object
required:
- status
- data
properties:
status:
const: success
data:
$ref: '#/components/schemas/Chart'
example:
status: success
data:
series: tx_count
interval: block
points:
- t: 1790661897
v: 5295
height: 969107
- t: 1790662420
v: 5397
height: 969108
- t: 1790662458
v: 88
height: 969109
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Unknown network code.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
example:
status: fail
data:
error_message: Unsupported network. Use BTC, LTC, DOGE, ZEC, BTCTEST, LTCTEST, DOGETEST or ZECTEST.
'429':
$ref: '#/components/responses/TooManyRequests'
'503':
$ref: '#/components/responses/Unavailable'
externalDocs:
url: https://sochain.com/docs/charts
servers:
- url: https://sochain.com/api/v3
components:
responses:
Unauthorized:
description: An invalid key, no key where one is needed (buckets, webhooks, /account_info), a locked account or expired plan, or both the month's requests and the keyless rate used up. Kept as 401, with this message, for v3 compatibility.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
example:
status: fail
data:
error_message: API Key invalid, account access expired, or this account's daily request limit has been exhausted.
Unavailable:
description: Briefly unavailable; retry with backoff. May carry Retry-After.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
example:
status: fail
data:
error_message: Temporarily unavailable. Try again in a few minutes.
BadRequest:
description: A bad parameter or body; the message says which.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
TooManyRequests:
description: 'Without a key, past the day''s 2,500 lookups from this IP while SoChain is busy (Retry-After: 60), or past the day''s most (Retry-After: seconds to 00:00 UTC). With or without one, too many requests in flight at once (Retry-After: 1, not counted).'
headers:
Retry-After:
schema:
type: integer
description: Seconds to wait.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
example:
status: fail
data:
error_message: 'Lookups without a key are 2,500 a day per IP, and today''s are used up; they reset at 00:00 UTC. A free API key gives you 75,000 a month: https://sochain.com/signin?from=limit'
TooManyRequests_2:
description: 'Without a key, past the day''s 2,500 lookups from this IP while SoChain is busy (Retry-After: 60), or past the day''s most (Retry-After: seconds to 00:00 UTC). With or without one, too many requests in flight at once (Retry-After: 1, not counted).'
headers:
Retry-After:
schema:
type: integer
description: Seconds to wait.
content:
application/json:
schema:
$ref: '#/components/schemas/Fail'
example:
status: fail
data:
error_message: 'Lookups without a key are 2,500 a day per IP, and today''s are used up; they reset at 00:00 UTC. A free API key gives you 75,000 a month: https://dev.sochain.com/signin?from=limit'
parameters:
to:
name: to
in: query
required: false
description: End of the range, inclusive, in the same units. Defaults to now; later times are now, and heights stop at the tip. Times are rounded down like from.
schema:
type: integer
minimum: 0
interval:
name: interval
in: path
required: true
description: 'Not every series has every interval: block and hour/day for most; minute only for tx_per_min, mempool_txs and mempool_bytes.'
schema:
enum:
- block
- hour
- day
- minute
example: block
series:
name: series
in: path
required: true
schema:
enum:
- tx_count
- fees_total
- fees_median
- block_size
- difficulty
- hashrate
- supply
- price_usd
- tx_per_min
- block_interval
- pool_share
- lookalikes
- mempool_txs
- mempool_bytes
- holder_share
- new_addresses
- active_addresses
- transfers
- mweb_pool
- mweb_flows
- zcash_pools
example: tx_count
from:
name: from
in: query
required: false
description: 'Start of the range, inclusive: a block height for the block interval, else Unix seconds (rounded down to the start of its minute, hour or day, and no earlier than the network''s first block).'
schema:
type: integer
minimum: 0
network:
name: network
in: path
required: true
description: Network code (any case).
schema:
enum:
- BTC
- LTC
- DOGE
- ZEC
- BTCTEST
- LTCTEST
- DOGETEST
- ZECTEST
example: BTC
schemas:
Chart:
type: object
required:
- series
- interval
- points
properties:
series:
enum:
- tx_count
- fees_total
- fees_median
- block_size
- difficulty
- hashrate
- supply
- price_usd
- tx_per_min
- block_interval
- pool_share
- lookalikes
- mempool_txs
- mempool_bytes
- holder_share
- new_addresses
- active_addresses
- transfers
- mweb_pool
- mweb_flows
- zcash_pools
interval:
enum:
- block
- hour
- day
- minute
points:
type: array
description: Oldest first.
items:
$ref: '#/components/schemas/ChartPoint'
Fail:
type: object
required:
- status
- data
properties:
status:
const: fail
data:
type: object
required:
- error_message
properties:
error_message:
type: string
ChartPoint:
type: object
required:
- t
- v
properties:
t:
type: integer
description: Block time (block interval) or the start of the hour, day or minute (Unix time).
v:
type:
- string
- number
- object
- 'null'
description: A string for amounts (fees_total, fees_median, supply, price_usd), an object for pool_share, transfers, holder_share, lookalikes, mweb_flows and zcash_pools (mweb_pool is an amount string), otherwise a number; null where there is no data.
height:
type: integer
description: Block height (block interval only).
provisional:
type: boolean
description: 'Only on the newest hour of price_usd: true while v is the latest price, until that hour''s opening price is settled. Absent otherwise, never false.'
securitySchemes:
ApiKey:
type: apiKey
in: header
name: API-KEY
description: Your key, from the dashboard.
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: Your key as a URL parameter, for lookups (GET) from tools that can't send a header, such as spreadsheets. Best a read-only key.
x-refined-from:
- sochain-com-openapi.json
- dev-sochain-com-openapi.json
- sochain-com-openapi.json