---
title: "Update registry configuration"
method: PUT
path: "/api/v1beta/registry/{name}"
tags: ["registry"]
---

# Update registry configuration

`PUT /api/v1beta/registry/{name}`

Update registry URL or local path for the default registry

## Path parameters

- `name` string, required

## Request body

- union
  - object
  - PkgApiV1UpdateRegistryRequest — Request containing registry configuration updates
    - `allow_private_ip` boolean — Allow private IP addresses for registry URL or API URL
    - `api_url` string — MCP Registry API URL
    - `auth` PkgApiV1UpdateRegistryAuthRequest — OAuth authentication configuration (optional)
      - `audience` string — OAuth audience (optional)
      - `client_id` string — OAuth client ID
      - `issuer` string — OIDC issuer URL
      - `scopes` string[] — OAuth scopes (optional)
    - `local_path` string — Local registry file path
    - `url` string — Registry URL (for remote registries)

## Response `200`

OK

- PkgApiV1UpdateRegistryResponse — Response containing update result
  - `type` string — Registry type after update

## Other responses

- `400` — Bad Request
- `403` — Forbidden - blocked by policy
- `404` — Not Found
- `502` — Bad Gateway - Registry validation failed
- `504` — Gateway Timeout - Registry unreachable

## Changes

- **2026-04-13** `9d90f835d94c` — 1 info
  - added the non-success response with the status `403`
- **2026-03-24** `4d5fd24904e8` — 1 info
  - added the new optional request property `oneOf[#/components/schemas/pkg_api_v1.UpdateRegistryRequest]/auth`
- **2026-03-17** `8ab2f5690c97` — 1 breaking, 1 info
  - removed `#/components/schemas/v1.UpdateRegistryRequest` from the request body `oneOf` list
  - added `#/components/schemas/pkg_api_v1.UpdateRegistryRequest` to the request body `oneOf` list
- **2026-01-30** `67267695ab9f` — 1 warning, 2 info
  - removed the optional property `message` from the response with the `200` status
  - added the non-success response with the status `502`
  - added the non-success response with the status `504`
- **2026-01-29** `ff6ce8dd8f3a` — 1 breaking, 5 info
  - removed `#/components/schemas/pkg_api_v1.UpdateRegistryRequest` from the request body `oneOf` list
  - added `#/components/schemas/v1.UpdateRegistryRequest` to the request body `oneOf` list
  - removed the non-success response with the status `403`
  - removed the non-success response with the status `502`
  - …2 more

[Change history](https://skmtc.dev/stacklok/apis/toolhive-api/changes/api/v1beta/registry/:name/put.md)

---

[API](https://skmtc.dev/stacklok/apis/toolhive-api.md) · [All operations](https://skmtc.dev/stacklok/apis/toolhive-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stacklok/toolhive-api/revisions/e9f942effcda/schema)
