Developers
Rooq's services return only public chain data and encrypted records. Your keys and proofs stay on the client. The full reference is on the docs site: API and SDK.
Read API
Base URL: https://api.rooq.trade. It holds no keys and keeps no per-client state.
| GET /v1/sync | How far the service has read the chain |
| GET /v1/deployment | Deployment ID, addresses and public keys |
| GET /v1/records | Encrypted records, by page |
| GET /v1/tree/path/:index | A proof path for one note tree leaf |
| POST /v1/nullifiers | Whether notes are spent |
| GET /v1/spot/pools | Pool list |
| POST /v1/spot/quote | A rounded swap estimate |
| GET /v1/markets | All markets, with price and funding |
| GET /v1/markets/:id/funding | A market's funding history |
Relayer
Base URL: https://api.rooq.trade. It submits proofs and pays gas, and it can't sign for anyone.
| POST /v1/relay/:action | Submits a proof you have already made |
| GET /v1/jobs/:id | Status of a submission |
| GET /v1/relayer | Fee address and minimum fees |
SDK
import { addressOf, deriveKeys, scanCreated } from "@rooq/private-sdk";
const keys = deriveKeys(seed); // keep the seed on the client
const privateAddress = addressOf(keys); // share this to receive transfers
const notes = scanCreated(keys, deploymentId, events); // decrypt your notes locallyTestnet only. Rooq has not been audited.