---
title: "Update Namespace"
method: PATCH
path: "/namespaces/{namespace_id}"
tags: ["Namespaces"]
---

# Update Namespace

`PATCH /namespaces/{namespace_id}`

Update a namespace's properties.

## Path parameters

- `namespace_id` string, required

## Request body

- UpdateNamespaceRequest — Request model for updating a namespace. Infrastructure fields (k8s_namespace, gcs_bucket, gcp_sa_email) are NOT exposed here — they are set exclusively by the provisioning workflow via the repository layer.
  - `name` string, nullable — Human-readable name.

## Response `200`

Successful Response

- Namespace — Response model for namespace.
  - `artifact_registry` string, nullable — Artifact Registry repository name.
  - `created_at` string, date-time, nullable — When the namespace was created.
  - `created_by` string, required — member_id of the creator.
  - `error` string, nullable — Error message if provisioning failed.
  - `error_step` string, nullable — Which provisioning step failed (e.g., 'create_gcs_bucket').
  - `gcp_sa_email` string, nullable — GCP service account email.
  - `gcs_bucket` string, nullable — GCS bucket name.
  - `id` string, required — The unique identifier of the namespace.
  - `k8s_namespace` string, nullable — K8s namespace name.
  - `name` string, required — Human-readable name for the namespace.
  - `owner_org_id` string, required — WorkOS organization ID that owns this namespace.
  - `registry_sa_email` string, nullable — Registry service account email for token generation.
  - `slug` string, required — URL-friendly unique identifier.
  - `status` 'PENDING' | 'READY' | 'FAILED' — Status of namespace infrastructure provisioning.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/terminaluse/apis/sb0-api.md) · [All operations](https://skmtc.net/terminaluse/apis/sb0-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/terminaluse/sb0-api/revisions/f24a474dc415/schema)
