---
title: "Create a new namespace"
method: PUT
path: "/namespaces/{name}"
tags: ["namespaces"]
---

# Create a new namespace

`PUT /namespaces/{name}`

Create a new namespace owned by the authenticated user or an organization. This endpoint is idempotent - if the namespace already exists and is owned by the user/org, returns success. Pass organizationId in the request body to create an org-owned namespace.

## Path parameters

- `name` string, required

## Response `201`

Namespace created successfully

- CreateNamespaceResponse
  - `name` string, required
  - `createdAt` string, required

## Other responses

- `400` — Bad request (invalid name format or user already has a namespace)
- `401` — Unauthorized
- `403` — Forbidden - missing namespaces:write permission
- `409` — Conflict (namespace already exists)

## Changes

- **2026-01-25** `ea538dc2369a` — 2 breaking, 1 info
  - for the `path` request parameter `name`, the maxLength was decreased from `64` to `39`
  - for the `path` request parameter `name`, the minLength was increased from `2` to `3`
  - removed the pattern `^[a-z0-9][a-z0-9-]*[a-z0-9]$` from the `path` request parameter `name`

[Change history](https://skmtc.dev/smithery-ai/apis/smithery-platform-api/changes/namespaces/:name/put.md)

---

[API](https://skmtc.dev/smithery-ai/apis/smithery-platform-api.md) · [All operations](https://skmtc.dev/smithery-ai/apis/smithery-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/smithery-ai/smithery-platform-api/revisions/60b8c3d2fecf/schema)
