SandboxesSandbox management

Create a sandbox

Create a new sandbox.

POST
/v1/sandboxes

Create a new sandbox.

AuthorizationBearer <token>

API key starting with tektona_. Create one at app-dev.tektona.ai under API Keys.

In: header

Query Parameters

wait?boolean

Block until sandbox reaches running state (30s timeout).

Defaultfalse

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

auto_delete_after?string

Delete TTL after pause: a duration (e.g. '30d'), '0' for never, or omit to inherit.

auto_pause_after?string

Idle timeout before auto-pause: a duration (e.g. '15m'), '0' for never, or omit to inherit the project/platform default.

auto_pause_mode?string

Pause mode for auto-pause; omit to inherit.

Value in

  • "hibernate"
  • "suspend"
auto_resume?boolean

Wake the sandbox on incoming activity; omit to inherit.

egress_network_policy?string

Egress network policy reference: tektona/<name> (system), org/<name>, project/<name>, or a bare <name> (alias for project/<name>). Defaults to the project/org setting.

egress_proxy_profile?string

Egress proxy profile reference: org/<name>, project/<name>, or a bare <name> (alias for project/<name>). Defaults to the project default profile if set.

env?

Environment variables.

location?string

Sandbox location. Defaults to the deployment's configured default location.

org*string

Organization slug.

project*string

Project slug.

public?boolean

If true, sandbox is reachable via canonical preview URLs without a token.

resources?

Resource limits. Defaults: 2 CPU, 2 GiB memory, 10 GiB disk.

tags?array<string>|

Sandbox tags.

Itemsitems <= 20
template?string

Template reference: tektona/<name> (system), org/<name>, project/<name>, or a bare <name> (alias for project/<name>). An optional :<tag> selects a tag, and a version id in that position pins one build. No tag means :default.

Response Body

application/json

application/problem+json

curl -X POST "https://example.com/v1/sandboxes" \  -H "Content-Type: application/json" \  -d '{    "org": "my-org",    "project": "my-project"  }'
{  "egress_network_policy": {    "name": "string"  },  "egress_proxy_profile": {    "name": "string"  },  "id": "01J5K3NDEKTSV4RRFFQ69G5FAV",  "image": "string",  "location": "string",  "org": "string",  "project": "string",  "public": true,  "resources": {    "cpu": 2,    "disk": 10,    "memory": 2  },  "state": "scheduling",  "tags": [    "string"  ],  "template": {    "name": "go-dev",    "reference": "go-dev",    "scope": "system",    "tag": "stable",    "version_id": "01JABCDEF0123456789ABCDEFG"  }}