---
title: "Update a custom provider"
method: PUT
path: "/api/v1/custom-providers/{identifier}"
tags: ["Connectors"]
---

# Update a custom provider

`PUT /api/v1/custom-providers/{identifier}`

Updates an existing environment-scoped custom provider (connector) by its identifier. Only the fields provided in the request are modified.

## Path parameters

- `identifier` string, required

## Request body

- V1providersUpdateCustomProvider
  - `auth_patterns` object[] — Authentication patterns for the connected app provider
  - `description` string — Description of the connected app provider
  - `display_name` string — Display name for the connected app provider
  - `icon_src` string — URL for the provider icon. Should be an SVG image sized 800x800 pixels for best rendering experience.
  - `metadata` object — Custom key-value metadata for this provider. Keys must be 3-25 characters, values must be 1-256 characters, with a maximum of 20 key-value pairs.
  - `proxy_enabled` boolean — This flag indicates whether proxying is turned on for the connected app provider. When enabled, requests are routed through the provider proxy instead of being sent directly.
  - `proxy_url` string — Proxy URL for the connected app provider. Must start with https://

## Response `200`

Returns the updated custom provider with its current configuration

- ProvidersUpdateProviderResponse
  - `provider` ProvidersProvider
    - `auth_patterns` object[]
    - `categories` string[]
    - `coming_soon` boolean
    - `description` string
    - `display_name` string
    - `display_priority` integer
    - `icon_src` string
    - `id` string
    - `identifier` string
    - `is_custom` boolean — Indicates whether the provider is environment-scoped (custom provider)
    - `is_custom_mcp` boolean — Indicates whether this is an environment-scoped MCP-based custom provider
    - `metadata` object — Custom key-value metadata stored for this provider. Returned for all providers; defaults to {} when no metadata has been set.
    - `proxy_enabled` boolean
    - `proxy_url` string

## Other responses

- `400` — Invalid request - the update payload failed validation
- `404` — Not Found - no custom provider exists with the given identifier

---

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