Skip to main content
ResQ exposes two HTTPS APIs:
APIBase URLStack
Infrastructure APIhttps://api.resq.softwareRust + Axum
Coordination APIhttps://coordination.resq.softwareTypeScript + Elysia
If you are running a self-hosted deployment, swap the base URLs above for your own. The request shapes are identical.

Steps

1

Confirm the service is up

Hit /health on the Infrastructure API. No auth required.
curl https://api.resq.software/health
A healthy response looks like:
{
  "status": "ok",
  "pinata": true,
  "gemini": true,
  "spoon_os": "0.1.0"
}
2

Get a JWT

The Infrastructure API uses bearer JWTs. Trade credentials for a token at POST /login.
curl -X POST https://api.resq.software/login \
  -H "Content-Type: application/json" \
  -d '{"username":"YOUR_USERNAME","password":"YOUR_PASSWORD"}'
The response carries a token and a Unix expiry:
{
  "token": "eyJhbGciOi...",
  "expires_at": 1746345600
}
Store the token securely. See Authentication for refresh and rotation guidance.
3

Call an authenticated endpoint

Send the token as a Bearer header.
curl https://api.resq.software/evidence \
  -H "Authorization: Bearer $RESQ_TOKEN"
4

Stream telemetry from the Coordination API

The Coordination API exposes Prometheus metrics and Server-Sent Events for real-time fleet state.
curl -N https://coordination.resq.software/events
Each line is a JSON event: telemetry frames, mission state changes, and HITL approvals.
5

Pick an SDK

Skip writing a client — install one of the official SDKs instead.

TypeScript

@resq-sw/http, @resq-sw/security, UI components.

Python

resq-mcp (FastMCP server) and resq-dsa.

Rust

Unified resq CLI plus seven TUI tools.

.NET

Typed clients, Protobuf contracts, sim harnesses.

Next

Authentication

JWT lifecycle, scopes, and rotation.

Errors

Error envelope and status codes.

API reference

Every endpoint, request, and response.