API
The public API behind the site. Everything the pages show, you can read yourself.
Base URL: https://hiresyncly.site. Responses are JSON unless noted. Everything that reads the books is public. Actions that move a job forward check who is asking: the email on the order, or the wallet that paid, on-chain.
Read
| Endpoint | Returns |
|---|---|
GET /api/health | { ok, mode: "live" | "demo", keys, treasury }. treasury is the treasury's public address, which proves which keys are loaded without revealing them. |
GET /api/services | The menu: each service's price, listed tool cost, team, what you get, and whether it's live |
GET /api/escrow | What a browser needs to pay: chain id, RPC, explorer, and the escrow, vault and USDC addresses |
GET /api/books | Counters, P&L, per-service unit economics, the daily series, the ledger, and the vault's buckets |
GET /api/books.beancount | The ledger as a beancount file (text) |
GET /api/cfo | The CFO's mode, policy, latest snapshot of the vault and agents, this week's plan, metrics, the log's verification result, and the last 150 decisions |
GET /api/team | Each agent's jobs, steps, paid calls, spend and sellers |
GET /api/traction.md | The traction report as Markdown |
GET /api/traction | The same figures as JSON |
GET /api/orders/:id | One order: its quote, status, runs (steps, receipt, deliverable), escrow record and decision. The email is masked. |
GET /api/orders/:id/files/:name | A deliverable file, for example businesses.csv |
GET /api/replay?limit=6 | Recent jobs as event sequences (the office uses this) |
Live events
GET /api/events is a Server-Sent Events stream of everything that moves: step, purchase, order and cfo events. Add ?order=<id> to follow one job.
curl -N https://hiresyncly.site/api/events
Act
| Endpoint | Body | Notes |
|---|---|---|
POST /api/quote | { service, brief, email } | Returns an order with the CFO's quote |
POST /api/orders/:id/start | { mode: "promo" } | Starts a free first job |
POST /api/orders/:id/escrow | { customer } | The CFO opens the escrow for this wallet (it must hold the price) |
POST /api/orders/:id/sync | { tx?, note?, email? } | After your wallet acts on the escrow, the server reads the chain and follows it. A revision note is sent here first, with the order's email. |
POST /api/orders/:id/retry | { email } | Try a failed free job again |
POST /api/orders/:id/accept, /revise, /reject | { email, note? } | For free jobs only. Paid jobs are decided on-chain from the wallet that paid. |
Example: get a quote
curl -s https://hiresyncly.site/api/quote \
-H 'content-type: application/json' \
-d '{"service":"local-business-finder","brief":"Pharmacies in Yaba, Lagos with a phone number","email":"you@business.com"}'
The response includes quote.priceUsd, quote.bondUsd, quote.promo and quote.reasons, the CFO's working.
Something unclear or wrong? See this page's source ↗