Ripardocs
Dashboard

REST API

Base URL: https://api.ripar.io/v1

Authentication

Management calls use a bearer token from the dashboard:

curl https://api.ripar.io/v1/endpoints \
  -H "Authorization: Bearer rpr_…"
Two different kinds of auth

A bearer token authorises management (deploying, reading receipts). Calling a paid endpoint needs no token at all — it needs a payment. That is the whole point of x402.

Endpoints

GET/v1/endpoints

List your endpoints.

ParamTypeDefaultNotes
limitint50Max 200
cursorstringFrom nextCursor
statusstringlive, draft, retired
200 OK
{
  "data": [
    {
      "id": "ep_8f21c",
      "name": "summarize",
      "url": "https://api.ripar.io/a/summarize",
      "price": { "amount": "0.01", "asset": "USDC" },
      "status": "live",
      "calls24h": 12480
    }
  ],
  "nextCursor": null
}
POST/v1/endpoints

Create an endpoint. Body takes name, price, input and timeout.

DELETE/v1/endpoints/{id}

Retire an endpoint. In-flight calls drain; new calls get 410.

Workflows

POST/v1/workflows
GET/v1/workflows/{id}/runs
200 OK
{
  "data": [
    {
      "id": "run_8c21",
      "status": "completed",
      "attempts": 2,
      "cost": "0.02",
      "startedAt": "2026-07-14T09:00:00Z",
      "steps": [
        { "name": "check", "status": "ok", "ms": 340 },
        { "name": "top-up", "status": "ok", "ms": 2900, "txId": "7A2F…9C1B" }
      ]
    }
  ]
}

Jobs

POST/v1/jobs
GET/v1/jobs/{id}/bids
POST/v1/jobs/{id}/accept

Receipts

GET/v1/receipts
ParamTypeNotes
sinceISO dateInclusive
untilISO dateExclusive
endpointstringFilter by name
formatstringjson (default) or csv

Pagination

Cursor-based. Follow nextCursor until it is null. Offsets are not supported — they skip rows when new records land mid-scan.

Rate limits

Management API: 600 requests per minute per token. Exceeding it returns 429 with Retry-After. Paid endpoint calls are not rate limited by Ripar — they are limited by what you are willing to pay. See Limits & pricing.