| env | No | Environment variables defined on the GVC. Workloads with inheritEnv=true redeploy when these values change. | |
| org | Yes | Organization slug (lowercase kebab-case). NEVER guess — if the user has not named one, ask. On org-not-found, stop and ask; do not retry variants. | |
| keda | No | KEDA autoscaling configuration for the GVC. | |
| name | Yes | Resource name (lowercase kebab-case, starts with a letter, 2-64 chars). Names are IMMUTABLE — renaming = delete + recreate (loses URL, DNS, policy links). | |
| tags | No | Optional tags (key-value pairs such as env=prod). Use them like Kubernetes labels for governance and search. | |
| tracing | No | Distributed tracing configuration. | |
| locations | No | Locations the GVC deploys to — any location the org has: a built-in cloud region ("aws-eu-central-1"), a BYOK location registered from your own cluster, or a friendly name like "frankfurt" (resolved server-side against the org's own list). REQUIRED unless locationQuery provides placement instead. If the user has not named one, ASK which location(s) to use (list_resources kind="location" shows the options); never pick one silently. | |
| description | No | Description (surfaced in tooling similar to a Kubernetes annotation). | |
| loadBalancer | No | GVC load balancer configuration. | |
| sidecarEnvoy | No | Advanced Envoy sidecar filters (maps to spec.sidecar.envoy). | |
| locationQuery | No | Dynamic placement: a query that selects locations. | |
| locationOptions | No | Per-location DNS geo-routing options (routingTier priority, latency bias/cutoff) for locations already placed via `locations` or `locationQuery`. Routing only — it does NOT place the GVC anywhere. | |
| pullSecretLinks | No | Secret links for docker/ecr/gcp secrets so workloads can pull from private registries (e.g., /org/{org}/secret/{secret} or //secret/{secret}). | |
| aliasWorkloadLink | No | Link to a workload in this GVC whose canonical endpoint backs the GVC alias DNS record (e.g. //gvc/{gvc}/workload/{name}). NOTE: the alias is INERT while the target workload is suspended (suspend=true or maxScale=0) — it takes effect only while the workload runs. | |
| endpointNamingFormat | No | Subdomain format for the canonical workload endpoint. "default": {workload}-{gvc}.cpln.app; "org": {workload}-{gvc}.{org}.cpln.app; "legacy": legacy scheme. When omitted on create, the platform defaults to "org". | |