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 that Cloud Run base. Replace API_BASE only after a custom domain is confirmed.

Endpoint families

FamilyExamplePrimary authPurpose
Runtime v1/v1/leaderboard/{id}/inferenceDr.Gero API tokenInference, 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/integrations/validateSupabase user sessionWorkspace admin actions from the UI.
Operator APIs/api/leaderboard-schedules/run-due, /api/push-datasets/consolidate-dueDeployment cron secretBackend cron jobs.

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/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.
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/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/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

A draft OpenAPI 3.1 file is included at /openapi.yaml. Treat it as implementation documentation, not a public stability guarantee.