Products

PaymentsSmart contractsAttributionTokenizationTreasury & walletsComplianceGovernanceSecurity

Solutions

Platforms & marketplacesAgencies & service firmsEnergy & infrastructureAI agents & autonomous commerceReal-world assets

Developers

DocumentationAPI referenceNetwork statusBridge & webhooks

Company

Pricing Company Contact sales Sign in

XODIAK / Developers / API reference

API reference

Plain HTTP, JSON in and out. Read endpoints are unauthenticated; write endpoints require a signed payload.

Read

EndpointReturns
GET /chain/statusChain id, height, latest block hash, supply, validator counts, crypto stack, peer count and protocol config.
GET /blocksPaginated block list. Takes limit and offset.
GET /block/{height|hash}A single block with its encoded object, signature and transactions.
GET /transactionsTransactions currently in the mempool.
GET /tx/{hash}A single transaction with its legs, signature and committed height.
GET /accountsAccounts ordered by balance. Takes limit.
GET /account/{address}Balance, stake and nonce for one address.
GET /validatorsAll validators with stake, status, attested reserve and blocks produced.
GET /peersConnected peers on the P2P transport.
GET /proposalsGovernance proposals. Takes status.
GET /proposal/{id}One proposal with its votes and tally.
GET /oracle/priceLatest oracle price. Takes symbol.
GET /oracle/historyPrice history. Takes symbol and limit.
GET /compliance/{userId}Verification tier and permission flags for an identity.

Write

EndpointDoes
POST /account/createGenerates an ML-DSA-65 keypair and derives an xdk1 address.
POST /tx/submitSubmits a signed transaction to the mempool. Verifies signature, balance and nonce before admitting it.
POST /validator/registerRegisters a validator. Requires a minimum stake of 10,000 XDK and a vault attestation to become eligible.
POST /faucetDevelopment and test networks only. Not available on a production chain.

The transaction path.

Worth understanding before you integrate, because it explains why signatures are over the hash of the encoded object rather than over the JSON you sent.

  • Plaintext fields are encoded under QBC-G1 into a geometric object
  • SHA-256 of that object is the transaction hash
  • ML-DSA-65 signs the hash
  • Mempool verifies signature, balance and nonce
  • The block producer drains the mempool and executes state transitions
  • Consensus commits, and the bridge mirrors the block to Postgres
GET /chain/status
{
  "chainId": "xodiak-1",
  "height": 887992,
  "totalSupply": "1000000000000000",
  "config": {
    "blockTimeMs": 5000,
    "minStakeAmount": "10000000000",
    "blockReward": "2000000"
  },
  "crypto": {
    "signatures": "ML-DSA-65",
    "keyExchange": "ML-KEM-768",
    "consensus": "Proof-of-Anchor"
  }
}

Ready to get started?

Create an account instantly, or talk to us about a settlement design for your business.

See what you'll pay

Per-settlement pricing tied to what actually moves. No seat licences, no hidden spread.

Pricing details

Start building

Open an account, sign a transaction, read a block. About ten minutes end to end.

Integration options