Skip to main content
Onstacks is the control plane for workspace identity, wallet operations, transfers, webhooks, and provider routing. Frontend apps call the Onstacks backend. The backend owns application identity, workspace authorization, wallet state, and money-moving orchestration. Privileged wallet operations do not run directly from the frontend.

Quickstart

Sign in, exchange a session token, and make your first authenticated request.

Authentication

Use workspace API keys as bearer tokens for API requests.

Wallets and balances

Create wallets, derive accounts, read balances, and manage address book entries.

Transfers

Preview withdrawals, create transfers, approve or cancel transfers, and reconcile status.

Core concepts

  • A workspace scopes API keys, webhooks, wallets, balances, transfer policy, and environment settings.
  • An API key authenticates requests with Authorization: Bearer <api_key>.
  • An environment partitions mutable platform resources. Use environment=sandbox for tests and environment=live for production operations.
  • A wallet is an Onstacks record linked to BlockOps custody infrastructure.
  • A wallet account is an asset and network-specific deposit lane.
  • A transfer records the local lifecycle before and after provider submission.

Base URL

Local development runs on:
https://api.onstacks.io
Use the environment-specific production base URL supplied by your Onstacks deployment.

Response format

Successful responses use a consistent envelope:
{
  "data": {},
  "error": null,
  "request_id": "req_..."
}
Errors return data: null and an error object:
{
  "data": null,
  "error": {
    "code": "unauthorized",
    "message": "Caller is not authenticated"
  },
  "request_id": "req_..."
}