API Reference
Rack Gateway exposes a JSON REST API for authentication, admin workflows, and Convox proxying. The OpenAPI spec is the source of truth, but this page summarizes the current surface area.
Base URL
Section titled “Base URL”| Environment | Base URL |
|---|---|
| Development | http://localhost:8447/api/v1 |
| Production | https://gateway.example.com/api/v1 |
Authentication
Section titled “Authentication”Most endpoints require either a session cookie (browser/CLI login) or an API token (automation).
Session Authentication
Section titled “Session Authentication”# Session cookie name is session_tokencurl -b "session_token=YOUR_SESSION_TOKEN" \ https://gateway.example.com/api/v1/infoAPI Token Authentication
Section titled “API Token Authentication”curl -H "Authorization: Bearer YOUR_API_TOKEN" \ https://gateway.example.com/api/v1/rack-proxy/appsEndpoint Summary
Section titled “Endpoint Summary”Health
Section titled “Health”GET /health- Liveness check
OAuth + CLI Login
Section titled “OAuth + CLI Login”POST /auth/cli/startGET /auth/cli/callbackPOST /auth/cli/completeGET /auth/cli/mfaPOST /auth/cli/mfaGET /auth/web/login(also supportsHEAD)GET /auth/web/callbackGET /auth/web/logout
MFA Management
Section titled “MFA Management”All under /auth/mfa:
GET /auth/mfa/statusPOST /auth/mfa/enroll/totp/startPOST /auth/mfa/enroll/totp/confirmPOST /auth/mfa/enroll/yubiotp/startPOST /auth/mfa/enroll/webauthn/startPOST /auth/mfa/enroll/webauthn/confirmPOST /auth/mfa/verifyPOST /auth/mfa/webauthn/assertion/startPOST /auth/mfa/webauthn/assertion/verifyPUT /auth/mfa/preferred-methodPUT /auth/mfa/methods/:methodIDDELETE /auth/mfa/methods/:methodIDPOST /auth/mfa/backup-codes/regeneratePOST /auth/mfa/trusted-devices/trustDELETE /auth/mfa/trusted-devices/:deviceID
Admin & Settings
Section titled “Admin & Settings”GET /users,POST /users,PUT /users/:email,DELETE /users/:emailGET /users/:email/sessionsPOST /users/:email/sessions/:sessionID/revokePOST /users/:email/sessions/revoke_allPOST /users/:email/lock,POST /users/:email/unlockGET /api-tokens,GET /api-tokens/:tokenID,POST /api-tokensPUT /api-tokens/:tokenID,DELETE /api-tokens/:tokenIDGET /api-tokens/permissionsGET /audit-logs,GET /audit-logs/exportGET /jobs,GET /jobs/:id,DELETE /jobs/:id,POST /jobs/:id/retryGET /settingsPUT /settings/mfa-configuration,DELETE /settings/mfa-configurationPUT /settings/allow-destructive-actions,DELETE /settings/allow-destructive-actionsPUT /settings/vcs-and-ci-defaults,DELETE /settings/vcs-and-ci-defaultsPUT /settings/deploy-approvals,DELETE /settings/deploy-approvalsPUT /settings/session-configuration,DELETE /settings/session-configurationPOST /settings/rack-tls-cert/refreshPOST /diagnostics/sentry- Slack integration under
/integrations/slack/*
Deploy Approvals
Section titled “Deploy Approvals”GET /deploy-approval-requestsGET /deploy-approval-requests/:idGET /deploy-approval-requests/:id/audit-logsPOST /deploy-approval-requestsPOST /deploy-approval-requests/:id/approvePOST /deploy-approval-requests/:id/rejectPOST /deploy-approval-requests/:id/extend
Convox Proxy
Section titled “Convox Proxy”* /rack-proxy/*(all HTTP methods; CLI-only)GET /convox/*(limited GET-only compatibility)
Error Responses
Section titled “Error Responses”Errors use a simple JSON payload:
{ "error": "message"}OpenAPI Specification
Section titled “OpenAPI Specification”The generated OpenAPI spec is available at:
GET /openapi.jsonThis schema is generated from the Go handlers and used to build the TypeScript API client.