API reference
Every public route, with what it takes and what it answers. A route that is not on this page is not served; a route that is here and cannot answer says so rather than failing quietly.
Base URLs
| Host | What it serves |
|---|---|
api.stonereason.com |
The API. Everything below. |
stonereason.com |
The site, the dashboard, the status page. |
Authentication
Authorization: Bearer xck_… on every route below except
/v1/status. See Authentication.
Routes
Reads
| Route | Takes | Answers |
|---|---|---|
POST /v1/rpc |
method, network, and the fields that method needs |
The answer, plus a trust block and a request id |
GET /v1/status |
Nothing. No key needed. | Per-network availability and per-product state |
GET /v1/products |
Nothing | The commercial catalogue: products, methods, per-network availability |
GET /v1/networks |
A key | Registered networks with their standings and ceilings |
GET /v1/directory |
A key | Assets this deployment can identify, with issuer standing and conflicts |
Methods available to /v1/rpc
| Method | Fields | Networks |
|---|---|---|
balance.get |
address, and asset for a token — omit it for
the native coin |
6 |
network.status |
Nothing beyond network |
6 |
network.capabilities |
Nothing beyond network |
6 |
Other methods exist in the build and are refused here with
CAPABILITY_NOT_AVAILABLE. Availability is per network and per
product: see Products.
Payments
| Route | Takes | Answers |
|---|---|---|
POST /v1/payments/watch |
network, asset, asset_decimals,
recipient, expected_amount,
amount_match_policy, finality_policy, and
routing where the network needs one |
The watch, its coverage, and whether anything is following it |
GET /v1/payments | A key | Your watches |
GET /v1/payments/{id} | A key | One watch and its standing |
GET /v1/payments/acquisition | A key | Which networks are followed, and how |
GET /v1/payments/docs | A key | Worked guides, generated from the build |
Other
| Route | What it is |
|---|---|
GET /v1/docs |
This reference, machine-readable |
GET /v1/openapi.json |
OpenAPI, generated from the running build rather than maintained by hand |
WSS /v1/events |
Payment events for watches you opened |
POST /v1/onboard |
A sandbox key with no account. TEST only — there is no anonymous path to production authority. |
Machine-readable
The OpenAPI document is served from the deployment itself:
curl https://api.stonereason.com/v1/openapi.json
Generated from the running build, so a route that is documented is a route that exists. Generate clients from it rather than from this page.
What every response carries
- A
request_id, on answers and refusals alike. - A trust block on an answer: what it rests on, what it covers, and what this chain means by settled.
- A
codeand aretryon a refusal. See the error model.