API

Every public route. JSON in and out, no caching, and every address and transaction comes with its explorer link.

Amounts are whole numbers of wei written as strings (1 HYPE is 1000000000000000000). Prices in USD are numbers. Times are milliseconds unless the name says seconds. Errors look like `{ "ok": false, "error": "plain words" }`.

Sign in by signing a one-time message with your wallet: ask `POST /api/auth/nonce`, sign the message it returns, then send the signature to `POST /api/auth/verify`. Send the token you get back as `Authorization: Bearer <token>`. An access key from the connect page works the same way.

Health and settings

RouteWho may call itWhat it does
GET /api/healthNoneWhether the server, its database and each part are up.
GET /api/configNonePublic settings: the fee, the fee choices, desk sizes, the explorer, our coin and every contract address.

Sign in and access keys

RouteWho may call itWhat it does
POST /api/auth/nonceNoneGet a one-time message to sign with your wallet.
POST /api/auth/verifyNoneSend the signature and get a session token.
GET /api/auth/meToken or keyWho you are signed in as.
POST /api/access-keysSignatureMake an access key for an AI app. It is shown once.
GET /api/access-keysSessionList your access keys.
DELETE /api/access-keys/:idSessionRevoke an access key.

Jobs and agents

RouteWho may call itWhat it does
POST /api/jobs/parseNoneRead a job in plain words and get its rules back, plus what the vault needs to be created.
GET /api/drafts/:idNoneA job prepared by an AI app, waiting for you to check and sign.
POST /api/agentsToken or keyRegister the vault you just created. Checked on chain against our factory and your wallet.
GET /api/agentsOptionalPublic agents, or yours with ?mine=1.
GET /api/agents/:idOptionalOne agent: its rules, events and history. Private agents only for their owner.
POST /api/agents/:id/messageToken or keyTell your agent something: status, pause, resume, sell all, change a rule, stop.

Live feed and numbers

RouteWho may call itWhat it does
GET /api/feedOptionalEvery event as it happens, as server-sent events.
GET /api/feed/recentOptionalThe latest events, newest first.
GET /api/statsNoneTotals from public agents, the burn and the fee hooks.
GET /api/burnsNoneThe minute burn: state, budget, totals and the latest burns with both transactions and their inputs.
GET /api/proofNoneKeeper addresses, contracts, and the latest real actions with their transactions.
GET /api/errands/providersNoneEach errand seller and what it can do.

Order book

RouteWho may call itWhat it does
GET /api/bookNoneThe coins whose Hyperliquid order book agents can watch, read from Hyperbook.
GET /api/book/:coinNoneOne checked reading: price, best buy and sell, money on each side within 0.25% of the price, share of buyers and sellers, and its age.

Perps

RouteWho may call itWhat it does
GET /api/perps/marketsNoneThe Hyperliquid perps markets agents can trade, with the most leverage and margin allowed.
POST /api/perps/parseNoneRead a perps job in plain words and get its rules back.
POST /api/perps/prepareSessionMake a trading key for your job and get the Hyperliquid approval to sign. The key can trade but cannot withdraw.
POST /api/perps/activateSessionSend your signed approval. The agent starts watching the price once Hyperliquid lists it.
GET /api/perpsSessionYour perps agents.
GET /api/perps/:idNoneOne perps agent: its job, events and its position on Hyperliquid.
POST /api/perps/:id/closeSessionClose the position at market and stop the agent.

Private jobs

RouteWho may call itWhat it does
POST /api/desk/jobsNoneCreate a private job from commitments and a delivery address. Returns its access token once.
GET /api/desk/jobs/:idDesk tokenA private job's progress.
POST /api/desk/jobs/:id/cancelDesk tokenCancel before the deposit is used.
POST /api/desk/jobs/:id/finishDesk tokenStop an agent job and deliver.
GET /api/desk/statsNoneWhether the desk is taking deposits, and how many jobs it has run.

AI apps

RouteWho may call itWhat it does
POST /mcpOptional keyThe MCP link for Claude, ChatGPT, Cursor and other AI apps.

Private agents and private jobs are only ever shown to their owner. In the public feed they appear as a shadow: the kind of event and its time, nothing else.

Check a burn

Anyone can check a minute burn against the rule, from public chain data only. With this project's code, run `node server/burn/verify.js <burn transaction hash>`. It finds the buy that burn belongs to, works out every number of the rule again from the chain, and prints whether it matches, with each number.