SDLC_API_URL in CI workflows accordingly.
Authentication
Session-protected routes
Require authenticated GitHub OAuth session:/api/dashboard/api/repos/api/milestones(most routes)/api/sync/api/quality/api/projects/api/team/api/settings/api-keys/api/config/repo-warnings/api/events/api/debug
CI-authenticated routes
RequireAuthorization: Bearer with GitHub OIDC JWT or LaneSync API key:
POST /api/evidence/uploadPOST /api/evidence/upload-reportGET /api/milestones/check
repository_owner for OIDC) or API key scope — not from an unauthenticated body field.
Public routes (no auth)
GET /api/healthGET /api/auth/*GET /api/config/status,/manifest-start, install callbacksPOST /api/webhook(HMAC verified)POST /api/config/setup(first-run only)
Content type
JSON endpoints returnContent-Type: application/json unless noted. Multipart used for /api/evidence/upload-report.
Error format
Errors return a JSON body with anerror field:
HTTP status codes
Key endpoints by area
Deploy gate (CI)
CI pipelines check production readiness with CI auth:Evidence upload (CI)
OpenAPI specification
The API Reference tab auto-generates interactive endpoint documentation fromopenapi.json. Use it for request/response schemas and try requests against your instance.