Health
Lightweight liveness probe scoped to the authenticated workspace. Confirms the API is reachable, your key is valid, and returns your workspace identity and plan.
Use this when
- Smoke-testing a new API key before wiring it into your app.
- Confirming which workspace and plan a key belongs to.
- Powering an external uptime monitor or readiness check in CI.
| Method | GET |
| Path | /api/v1/health |
| Auth | Bearer |
| Credits | 0 |
Request
No body. No query parameters.
Response
| Field | Type | Description |
|---|---|---|
status | string | Always `"healthy"` when the endpoint returns 200. |
workspace_id | uuid | ID of the workspace owning the API key used on this request. |
plan_name | string | Plan identifier for the workspace (e.g. `"free"`). |
Example response
{
"ok": true,
"data": {
"status": "healthy",
"workspace_id": "8f3a1c20-9b4e-4d77-bc1e-3e5a7d2c9f10",
"plan_name": "free"
}
}Example
curl https://www.gyrence.com/api/v1/health \
-H "Authorization: Bearer $GYRENCE_API_KEY"Errors
| Code | Type | Description |
|---|---|---|
unauthorized | 401 | Missing or invalid `Authorization: Bearer <key>` header. |
unavailable | 503 | "health check unavailable" — the workspace plan lookup (`get_plan_name` RPC) failed. Retry with backoff. |
0 credits per call regardless of frequency. Calls are still recorded in usage_events for audit.
A 200 here only confirms the Gyrence API, your API key, and the workspace plan lookup are alive. It does not probe Brave Search, the headless-browser worker, or the AI Gateway. Search, Fetch (browser tier), and Extract can be degraded independently.
Unauthenticated probe
For a public liveness check (no API key, no workspace context), call GET /api/public/health. Unlike the authenticated endpoint, the response is not wrapped in the standard envelope:
{
"status": "ok",
"timestamp": "2026-05-30T18:42:00.000Z",
"uptime": 1284.31
}Use this when you can't safely embed an API key (e.g. status-page pingers).
