The Secrets tag group covers the endpoints you use to register project-scoped secrets, rotate their values into new versions, and read back metadata. Plaintext values are accepted only on create and update, and are never returned by API reads. For exact request and response shapes, see the Redoc reference for secrets.

Typical flow

  1. POST /v1/projects/{project}/secrets — register a new secret and its first enabled version. The request body carries a values object whose values are strings; the response returns metadata only.
  2. GET /v1/projects/{project}/secrets/{secret} — fetch metadata by secret ID or project-scoped name. Values are never included.
  3. PATCH /v1/projects/{project}/secrets/{secret} — rotate by sending replacement values; this creates a new enabled SecretVersion. Omit values to update metadata only.
  4. GET /v1/projects/{project}/secrets/{secret}/versions — list version metadata to audit rotation history. Each version reports its lifecycle state (ENABLED, DISABLED, DESTROYED) and a SHA-256 of the canonical plaintext for change detection.

Authentication

All operations require an authenticated request. Unauthenticated calls return 401 Unauthorized.

Common errors

CodeHTTPCauseFix
Bad Request400Request body fails schema validation, or values is empty.Send a non-empty values object whose values are strings.
Unauthorized401Missing or invalid credentials.Attach a valid API key for the project's org.
Not Found404Project, secret, or version is unknown or not visible.Confirm the project handle, secret ID/name, and version.
Conflict409Secret name already exists in the project on create or update.Choose a different name or update the existing secret.

See also

  • Secrets — the Redoc reference for every operation, parameter, and schema in this tag group.