Skip to content

API overview ​

Base URL ​

bash
export API_BASE="https://dr-gero-frontend-99142474693.europe-west1.run.app"

All runtime examples in this documentation use the production API base.

This reference intentionally covers only endpoints intended for customer use. Browser implementation details, payment and provider callbacks, and operator-only routes are not part of the public API.

Endpoint families ​

FamilyExamplePrimary authPurpose
Runtime v1/v1/leaderboard/{id}/inference, /v1/models/{id}/inferenceDr.Gero API tokenLeaderboard/model inference, traces, and push datasets.
Resource API/api/leaderboards, /api/modelsDr.Gero API tokenAutomate leaderboard/model CRUD and runs.
Browser-session APIs/api/tokens, /api/invite-user, /api/integrationsSupabase user sessionWorkspace administration and model deployment.

Health check ​

bash
curl -sS "$API_BASE/healthz" | jq

The readiness endpoint is also available at /readyz.

Content type ​

Use JSON for request bodies:

http
Content-Type: application/json

Most successful responses are JSON. Trace export can return JSONL when format=jsonl or format=ndjson is requested.

Public API conventions ​

  • IDs are UUIDs.
  • List endpoints support limit and offset where available.
  • Errors return JSON with at least error or message.
  • Runtime inference responses include Dr.Gero headers for trace ID, selected model, and budget state when available.

API map ​

MethodPathDescription
GET/healthzService health.
GET/readyzService readiness.
GET/api/leaderboardsList leaderboards.
POST/api/leaderboardsCreate a leaderboard.
GET/api/leaderboards/{leaderboard_id}Get leaderboard detail.
PATCH/api/leaderboards/{leaderboard_id}Update leaderboard.
DELETE/api/leaderboards/{leaderboard_id}Delete leaderboard.
GET/api/leaderboards/{leaderboard_id}/modelsList candidate models.
POST/api/leaderboards/{leaderboard_id}/modelsAdd a candidate model.
DELETE/api/leaderboards/{leaderboard_id}/models/{leaderboard_model_id}Remove a candidate model.
POST/api/leaderboards/{leaderboard_id}/models/auto-selectAuto-select OpenRouter candidate models. UI session endpoint.
GET, POST, PUT, DELETE/api/leaderboards/{leaderboard_id}/human/...Human case, review, document and export APIs. Supabase session required.
GET/api/leaderboards/{leaderboard_id}/runsList leaderboard runs.
POST/api/leaderboards/{leaderboard_id}/runStart a leaderboard run.
POST/api/leaderboards/{leaderboard_id}/improve-datasetRun with dataset improvement behavior.
GET/api/leaderboards/{leaderboard_id}/artifactsList downloadable run artifacts.
GET/api/leaderboards/{leaderboard_id}/artifacts/{artifact_id}/downloadCreate a short-lived artifact download URL.
PATCH, PUT, POST/api/leaderboards/{leaderboard_id}/run/webhookConfigure run-event delivery.
PATCH, PUT, POST/api/leaderboards/{leaderboard_id}/inference/webhookConfigure inference-event delivery.
POST/v1/leaderboard/{leaderboard_id}/inferenceRun inference through the selected leaderboard model.
GET/v1/leaderboard/{leaderboard_id}/tracesExport traces.
POST/v1/leaderboard/{leaderboard_id}/dataset/pushPush rows into a PUSH dataset.
GET/v1/leaderboard/{leaderboard_id}/dataset/statusView push dataset status.
GET/v1/leaderboard/{leaderboard_id}/datasetDownload consolidated JSONL dataset.
POST/v1/leaderboard/{leaderboard_id}/dataset/tokenCreate a push dataset token.
DELETE/v1/leaderboard/{leaderboard_id}/dataset/tokensRevoke push dataset tokens.
POST/v1/leaderboard/{leaderboard_id}/dataset/consolidateConsolidate pending push dataset rows.
POST/v1/leaderboard/{leaderboard_id}/dataset/auto-labelsGenerate/update dataset labels.
GET/api/modelsList Dr.Gero models.
POST/api/modelsCreate a Dr.Gero model.
GET/api/models/{model_id}Get model detail.
PATCH/api/models/{model_id}Update model.
DELETE/api/models/{model_id}Delete model.
GET/api/models/{model_id}/leaderboardsList leaderboards assigned to a model.
GET/api/models/{model_id}/fine-tune/runsList fine-tune runs.
POST/api/models/{model_id}/fine-tune/runStart fine-tuning.
POST/api/models/{model_id}/fine-tune/syncSync fine-tune state.
GET/api/models/{model_id}/versionsList successful immutable model versions.
POST/api/models/{model_id}/versions/{version_id}/deployDeploy a selected model version. Browser session endpoint.
POST/v1/models/{model_id}/inferenceRun inference through the model's active deployment.
POST/v1/models/{model_id}/versions/{version_id}/inferenceRun inference through one exact deployed version.
GET/api/models/{model_id}/inference/logsList model inference logs.
PATCH, PUT, POST/api/models/{model_id}/inference/webhookConfigure model inference log delivery.
GET/api/base-modelsList supported base models.
POST/api/datasets/huggingface/checkValidate a Hugging Face JSONL dataset URL.
GET/api/tokensList API tokens. Browser session endpoint.
POST/api/tokensCreate an API token. Browser session endpoint.
POST/api/tokens/{token_id}/revokeRevoke an API token. Browser session endpoint.
DELETE/api/tokens/{token_id}Delete an API token. Browser session endpoint.
POST/api/integrations/validateValidate provider credentials. Browser session endpoint.
GET, POST, PUT, PATCH/api/integrationsList or save workspace integrations. Browser session endpoint.
POST, PUT, PATCH, DELETE/api/integrations/{provider}Save or remove one workspace integration. Browser session endpoint.
GET/api/invite-userList workspace members/invites. Browser session endpoint.
POST/api/invite-userInvite a workspace user. Browser session endpoint.
DELETE/api/invite-userRemove a member or revoke invite. Browser session endpoint.

OpenAPI ​

An OpenAPI 3.1 file for the public API is available at /openapi.yaml. It intentionally excludes private operational and third-party callback routes.