List token

Answers one token's daily history — open, high, low, close, price and volume per UTC day, oldest first.

GET /v1/market/token

Addresshttps://api.hanzo.ai/v1/market/token
MethodGET
Operationget_market_token
AuthAuthorization: Bearer $HANZO_API_KEY

Answers one token's daily history — open, high, low, close, price and volume per UTC day, oldest first.

Every figure is the indexer's own arithmetic, passed through as the decimal string it computed. Nothing here rounds one, converts one, or fills a gap: a day the indexer holds no figure for arrives with that field absent, which says "not indexed" where a zero would say "worth nothing".

Request

2 fields.

FieldInTypeRequiredDescription
chainquerystring—
atquerystring—At is the token's contract address.

Response

StatusBodyMeaning
200market.Historyok
defaultproblem-detailsrefused

200 body — 15 fields.

FieldInTypeAlwaysDescription
atbodystring—At is the token this is the history of, lowercased.
chainbodystring—
daysbodymarket.Day[]—Days is oldest first, which is the order a chart draws.
days[].closebodystring—
days[].countbodyinteger (int64)—Count is transactions in the day, where the table keeps one.
days[].datebodyinteger (int64)—Date is the day's start, unix seconds.
days[].highbodystring—
days[].lockedbodystring—
days[].lowbodystring—
days[].openbodystring—
days[].pricebodystring—
days[].volumebodystring—
reachbodymarket.Reach—
reach.atbodystring—At is read, unconfigured, unreachable or refused.
reach.whybodystring—Why is the upstream's own words, on Unreachable and Refused, and empty otherwise.

Failure carries the platform error shape — see Errors.

Examples

hanzo market token
import { Configuration, MarketApi } from 'hanzoai';

const api = new MarketApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getMarketToken();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import MarketApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = MarketApi(client).get_market_token()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.MarketAPI.GetMarketToken(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, market_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = market_api::get_market_token(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.MarketApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new MarketApi(client).getMarketToken();
curl https://api.hanzo.ai/v1/market/token \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches market through the market tool, which names its 3 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_market_chains"
         }
       }
     }'

Market API · All Hanzo APIs · Interactive reference

Was this page useful?