Skip to main content
The public API base is https://api.usespoke.xyz/v1. Client methods share Zod input and output schemas with the frontend. Routes, authentication requirements, and availability are published through the endpoint registry.
At the documented release, the contract defines 189 client methods: 135 core live methods, 4 optional Aurora funding methods, and 50 designed but unavailable methods. A method appearing in the registry does not mean it is enabled. Unavailable methods return FEATURE_NOT_AVAILABLE.

Make your first request

Public reads do not require a session. Account and merchant reads require an authenticated session; writes additionally require the application’s origin and CSRF controls. See authentication.

Response shape

A successful response contains data, requestId, and an ISO timestamp. Depending on the method, it can also include schemaVersion, chainId, contractAddress, blockNumber, and indexingStatus.
This is a readable summary. The shared Zod schemas are the exact field-level source, including method-specific models and optional values.

Core read routes

All paths below are relative to /v1. Path IDs and money amounts are canonical unsigned decimal strings, except the numeric chain ID. Use the exact method schema for query filters and pagination; do not assume every collection shares the same filters.

Checkout and delivery

Keep the same order key when retrying the same logical checkout. For direct checkout use nodeId: "0". The API intent is not the payment: the wallet must execute the contract purchase, and the chain result must be indexed. Product and policy versions are checked. Handle PRODUCT_VERSION_MISMATCH or POLICY_MISMATCH by refreshing the preview and obtaining the user’s confirmation of the updated terms.

Optional mainnet funding routes

The current provider configuration is disabled. Read wallet funding before integrating; mainnet USDC never credits testnet checkout.

Money and identifiers

A value such as "1000000" means 1 SDUSD when token decimals are 6. Keep values as strings across JSON and use bigint for arithmetic. Do not convert token base units to JavaScript floating-point numbers for settlement calculations. Addresses are 20-byte hexadecimal strings; hashes and order keys are 32-byte hexadecimal strings. Check both chainId and contractAddress when combining data from different deployments.

Errors and retries

The error definitions contain the full union. Preserve requestId in bug reports. A retryable transport error does not authorize a duplicate financial action.

Complete field-level reference

The earlier tables are a quick entry point. The complete client reference covers every one of the 189 methods with typed field tables, input/output schema projections, availability labels, and pinned source links. The HTTP transport guide explains request serialization; the checkout integration guide explains the multi-step purchase flow.