v3.19.0
Release notes
v3.19.0 renames the public API surface from Token API to Pinax API and moves x402 enforcement to the proxy layer. Also includes a Hyperliquid /markets fix that surfaces non-spot pairs.
Rebrand to Pinax API
- Public docs, OpenAPI metadata, banner, and the agent skill identify the API as Pinax API. (#542)
- Repository identifier renamed from
token-apitopinax-api: package name, build output, README clone commands, Docker image examples, badges, and historical changelog links. (#544) - Plan-limit gateway headers renamed to
x-pinax-api-*(batch-size,items-returned,lowest-time-parameter). The legacyx-token-api-*headers continue to work as aliases with regression tests covering each. (#544, #545) - Agent skill file moved to the canonical
skills/SKILL.mdlayout;/SKILL.md,/SKILLS.md,/skills.md,/skill.md, and/skills/SKILL.mdall serve or redirect to the same content. (#540) - Public docs links repointed at
https://app.pinax.network/docsandhttps://app.pinax.network/help. (#547)
Proxy-layer x402 discovery
GET /.well-known/x402 returns a machine-readable payment-discovery document describing the proxy-enforced x402 contract (authentication, verification, settlement, metering). GET /x402.json is an alias. The API layer itself no longer carries x402 middleware — discovery only. (#543)
The free-routes list is kept in sync with skills/SKILL.md and public/llms.txt, including the SKILL.md alias paths so the proxy doesn't 401 them before the in-app 301 redirect can fire. (#545)
Hyperliquid /markets returns perps
state_spot_pair_names is sourced from HL's spotMeta, which only covers spot pairs. Builder-DEX perps (xyz:CL, cash:TSLA, km:US500) and core perps (BTC, ETH) had no row to JOIN against, so market_name fell back to the raw coin and base_token / quote_token were NULL — /v1/hyperliquid/markets filters missed every perp market.
The perp fields are now derived from the coin string when the JOIN misses: strip any prefix before : to get the ticker (xyz:CL → CL), use the ticker as base_token and USDC as quote_token. HIP-4 outcome markets (#N) stay NULL — labels live in outcomeMeta, which isn't ingested yet. (#546)
Included PRs
- #540 — Move agent skill file to canonical path
- #542 — Rebrand public docs to Pinax API
- #543 — Add proxy-layer x402 discovery
- #544 — Rename repository identifiers to Pinax API
- #545 — fix(x402): align free-routes list and cover legacy header fallbacks
- #546 — fix(hyperliquid): derive market_name and base/quote tokens for non-spot markets
- #547 — docs: point public links to app.pinax.network
Full Changelog: v3.18.0...v3.19.0