Native Core API
The Native Core API is the direct integration surface for the on-chain CLOB. Clients submit signed business actions with POST /trade and read business state with POST /info, or stream both over a WebSocket connection. It serves market makers, trading bots, AI agents, and anyone integrating directly with Native Core.
Operational, recovery, and node-private interfaces are intentionally not part of this contract.
Native Core runs on mainnet (https://api.native.org), with a testnet (https://api-test.native.org) for integration and testing. See environments for base URLs and signing chain ids.
Start here
New to Native Core? The guides take you from zero to a working integration — start with your first order over REST:
Trade over RESTGuidesPrefer a client library? The official Python SDK wraps both REST endpoints and the WebSocket, signs /trade for you, and ships an MCP server for AI agents:
Conventions
API_URLexamples usehttps://api.native.org(mainnet); for testnet and signing chain ids, see environments.Hex values are
0x-prefixed lowercase strings unless noted otherwise.Protocol numeric fields in signed actions are decimal strings; integer-valued fields (ids, nonces) also accept an unsigned JSON integer, while decimal price/quantity/amount fields must be strings.
Business query responses carry
query_heightandapp_hash— the chain height the answer was read at.POST /tradeis synchronous: it blocks for the execution outcome and returnssubmission_status(accepted/rejected/timeout) with atx_hash. It reports that a write landed, not an order's fill state — read the outcome per the Handle outcomes & timeouts playbook.
Reference & concepts
The exhaustive contract — every endpoint, field, and error code — and the models it assumes:
ReferenceConcepts