Show where each name a deployment's pack declares is set
const url = 'https://example.com/v1/deployments/example/pack-env';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/v1/deployments/example/pack-env \ --header 'Authorization: Bearer <token>'On a server that runs a pack service per deployment and gives it the env its pack declares: each declared name, where it’s set (the deployment’s project, then its org, then the tenant, at the env the server serves) and why it can’t be given, if it can’t. Never a value. A name set only as a secret can’t be given into the pack service’s environment yet: a tool reads it per call (ctx.secrets).
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Deployment id assigned by the ledger at register time.
Responses
Section titled “Responses”Where each declared name is set.
Where each name the deployment’s pack declares is set, at the env the server serves. Never a value.
object
The env the values are read at (KINDGI_ENV).
Every declared name, required ones first, each list in name order.
One name the deployment’s pack declares: where it’s set, and why it can’t be given to the pack service, if it can’t (secretScope, for ambiguous only, names the secret’s scope). Each name is looked for at the deployment’s project, then its org, then the tenant (most specific wins); a tenant-wide deployment’s, at the tenant’s Default project. Never a value.
object
Set nowhere, as a plain value or a secret (optional names too).
Why it can’t be given to the pack service. ambiguous: set both as a secret and as a plain value (secretScope names the secret’s scope). secret-not-yet: set only as a secret, and the orchestrator didn’t ask for secret values (secrets=values); a tool reads it per call (ctx.secrets). missing: a required name set nowhere. unreadable: set as a secret, and it can’t be read for a reason the platform fixes, not the owner. Absent when it can be given, and for an optional name set nowhere. The owner’s check (GET /v1/deployments/{deploymentId}/pack-env) lists a name set only as a secret as kind: 'secret', with no problem.
Where a value is set: the deployment’s project, the project’s org, or the tenant.
object
The project’s or the org’s id. Absent for the tenant.
Why a deployment’s pack service can’t be given its declared environment, the first in this order: pack-env-ambiguous (a name is set both as a secret and as a plain value), pack-env-secret-not-yet (a name is set only as a secret, and its value wasn’t asked for), pack-env-missing (a required name is set nowhere), pack-env-secret-unreadable (a name’s secret is set, but it can’t be read for a reason the platform fixes, not the owner; only a read with secrets=values finds it, and only when there’s no other problem). A later runtime may add codes, so treat an unknown one as a reason not yet named.
Example
{ "data": [ { "kind": "env", "scope": { "kind": "project" }, "problem": "ambiguous", "secretScope": { "kind": "project" } } ], "problem": "pack-env-ambiguous"}Missing / malformed / expired / revoked bearer token.
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}No deployment with that id under this tenant, or one in a project the caller doesn’t read (deployment-not-found).
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}The server’s pack services take their env from how they’re run, not from the env store (pack-env-not-served).
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}See also
GET /v1/deployments/{deploymentId}: Fetch a signed deployment recordPOST /v1/deployments/{deploymentId}/secrets: Sync secrets against a deploymentGET /v1/deployments/{deploymentId}/values: List the values a deployment needs in a projectPOST /v1/deployments/{deploymentId}/promotions: Promote a deployment to the next environment- Kindgi 0.1.9
- Error code
deployment-not-found - Error code
pack-env-not-served - Every error code