GET /execute.json
Public configuration for building a signature request — a contract address, a chain id, and the contract’s own constants. Nothing here is a secret; that’s deliberate, since a config endpoint that needed to hide something would mean the design was wrong.The relay service
A separate process (apps/api/execution/server.ts) that holds the only key Scienter itself operates — one that can pay gas and pick a route, and structurally cannot sign for a user, store an order, or fetch a quote. You run this yourself; it isn’t hosted.
GET /health
POST /preflight
Dry-run a signed order against on-chain state before spending gas.200 with {"ok": true, ...} or 409 with {"ok": false, "problems": [...]}.
POST /relay
Submits a preflighted, signed order on-chain with relayer-supplied router calldata.amountIn, quotedAmountOut, sizeUSD, expiry, nonce) cross the wire as decimal strings, not JS numbers — a silently truncated amountIn produces a signature mismatch, not a wrong trade amount, so the server rejects anything that isn’t a string here.
Scienter publishes impersonal market signals of general and regular circulation. Nothing here is investment, legal, or tax advice, or a recommendation to buy, sell, or hold any asset. Scienter is not a registered investment adviser or broker-dealer. Trading digital assets can result in the total loss of your funds — see Disclaimers for the full text.