API Reference
This page summarizes the current public API surface. The canonical request and response contract lives in:
-
backend/internal-tooling/apidog/dartcloudfunctions.openapi.yaml
Base Model
| Property | Value |
|---|---|
Public API host |
|
Authentication |
Firebase ID token in |
Canonical public contract |
|
Main Endpoint Groups
Authoring Metadata
-
GET /api/v1/functions/trigger-types -
GET /api/v1/runtimes -
GET /api/v1/runtime-versions(legacy alias)
Artifact Uploads
-
POST /api/v1/functions/upload/code -
POST /api/v1/functions/upload/docker -
POST /api/v1/functions/upload/yaml -
POST /api/v1/functions/get-file
Function Drafts And Lists
-
POST /api/v1/functions -
POST /api/v1/functions/save -
PUT /api/v1/functions/update -
GET /api/v1/functions/{projectId} -
GET /api/v1/functions/{projectId}/non-draft -
GET /api/v1/functions/{projectId}/deployed -
GET /api/v1/functions/tenant/all -
GET /api/v1/functions/list-by-status -
DELETE /api/v1/functions/{id}
Contract Notes
-
/api/v1/runtimesis the source of truth for selectable and deployable Dart runtime versions. -
The GCP WIF public API is strict and expects the split-field provider shape, not a raw STS audience shortcut.
-
The async project deployment API is the preferred public deployment contract.
Error Model
The backend uses normal HTTP status codes plus error bodies that describe the validation or policy failure. Common cases include:
-
400for malformed requests -
401for missing or invalid auth -
403for access-denied or provider-RBAC failures -
404for missing project, function, or deployment rows -
409for lifecycle conflicts such as blocked deployment or unsafe delete -
415for invalid upload content type