---
title: "Upsert environment"
method: PUT
path: "/v1/workspaces/{workspaceId}/environments/{environmentId}"
---

# Upsert environment

`PUT /v1/workspaces/{workspaceId}/environments/{environmentId}`

## Path parameters

- `workspaceId` string, required
- `environmentId` string, required

## Request body

- UpsertEnvironmentRequest
  - `description` string
  - `metadata` object
  - `name` string, required
  - `resourceSelector` string — CEL expression to determine if the environment should be used

## Response `202`

Accepted response

- EnvironmentRequestAccepted
  - `id` string, required
  - `message` string, required

## Other responses

- `400` — Invalid request
- `404` — Resource not found
- `409` — Environment name already exists in this workspace

---

[API](https://skmtc.net/ctrlplanedev/apis/ctrlplane-api.md) · [All operations](https://skmtc.net/ctrlplanedev/apis/ctrlplane-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ctrlplanedev/ctrlplane-api/versions/156e0d264995/schema)
