List Environment Variables

GET /v1/applications/{uuid}/env

List an app's environment variables. Each variable is injected into the build with its exact name (so VITE_API_URL or NEXT_PUBLIC_* reaches your bundler as-is). A secret's value is never returnedis_secret is true and value is empty.

Variable fields

name string
The variable name ([A-Za-z_][A-Za-z0-9_]*).
value string
The value — empty for secrets (write-only).
is_secret bool
Secrets are encrypted at rest and never returned.
Response — 200 OK
{ "env": [ { "name": "VITE_API_URL", "value": "https://api.example.com", "is_secret": false }, { "name": "SENTRY_TOKEN", "value": "", "is_secret": true } ] }

Set an Environment Variable

PUT /v1/applications/{uuid}/env

Create or update one variable. Mark sensitive values (API keys, tokens) as a secret — they're encrypted at rest and never returned again. Changes apply on your next deploy.

Request (application/json)

name string
Required. Must match [A-Za-z_][A-Za-z0-9_]*.
value string
The value to inject into the build.
is_secret bool
true encrypts the value at rest and hides it from future reads.
Request
curl -X PUT "https://api.ngris.com/v1/applications/a1b2c3d4-…/env" \ -H "X-API-KEY: <your_api_key>" \ -H "Content-Type: application/json" \ -d '{"name":"VITE_API_URL","value":"https://api.example.com","is_secret":false}'
Response — 200 OK
{ "status": "ok", "name": "VITE_API_URL" }

Delete an Environment Variable

DELETE /v1/applications/{uuid}/env/{name}

Remove one variable by name. Returns 204 No Content. Takes effect on the next deploy.

Request
curl -X DELETE \ "https://api.ngris.com/v1/applications/a1b2c3d4-…/env/VITE_API_URL" \ -H "X-API-KEY: <your_api_key>"
Iris