> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended**:
> ```bash
> npx @scalekit-inc/cli setup
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Delete a custom connector

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

Deletes a custom connector by its `identifier`. Delete its connections first: while any connection uses the connector, the call returns `400` with `PROVIDER_HAS_EXISTING_CONNECTIONS`. Deletion can't be undone.

**Path parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `identifier` | string | Yes | The connector's `identifier`, from the create response. |

**Errors**

- `400`: Invalid request - error code `PROVIDER_HAS_EXISTING_CONNECTIONS` when a connection still uses the connector. Delete its connections first.
- `404`: Not Found - no custom provider exists with the given identifier

**Request**

```bash
curl -sS -X DELETE \
  "$SCALEKIT_ENVIRONMENT_URL/api/v1/custom-providers/EXAMPLEAPI:12345" \
  -H "Authorization: Bearer $TOKEN"
```

**Python SDK:** `scalekit_client.actions.providers.delete_custom_provider`

Delete a custom provider by identifier. Deletion is permanent. Returns an empty response on success. Any error (provider not found, insufficient permissions) raises a ScalekitServerException subclass before this method returns.

```python
scalekit_client.actions.providers.delete_custom_provider(
    request: DeleteCustomProviderRequest,
) -> DeleteCustomProviderResponse
```

Example:

```python
from scalekit.actions.types import DeleteCustomProviderRequest

result = scalekit_client.actions.providers.delete_custom_provider(
    request=DeleteCustomProviderRequest(identifier="EXAMPLEAPI:12345"),
)
```

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `request` | `DeleteCustomProviderRequest` | Yes | Request object containing the identifier of the provider to delete. |

Returns `DeleteCustomProviderResponse`: Empty response confirming deletion.

**Node.js SDK:** `scalekit.actions.providers.deleteCustomProvider`

Deletes a custom connector. Remove the connector's connections and connected accounts first; the server refuses to delete one that is still in use, with `[invalid_argument] cannot delete custom provider with existing connections`. Connected accounts come off with `actions.deleteConnectedAccount`. The app connection itself has to go from the Scalekit dashboard: this SDK wraps no delete for an environment-scoped connection, and `connection.deleteConnection` takes an `organizationId`, which an app connection does not have.

```ts
scalekit.actions.providers.deleteCustomProvider(
  identifier: string,
): Promise<DeleteProviderResponse>
```

Example:

```ts
const result = await scalekit.actions.providers.deleteCustomProvider("EXAMPLEAPI:12345");
```

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `identifier` | `string` | Yes | The connector's `identifier`, from the create response. |

Returns `Promise<DeleteProviderResponse>`.

**Used in**

- [Create a connector](https://docs.scalekit.com/agentkit/bring-your-own-connector/create-connector/)


Part of [Custom connectors](https://docs.scalekit.com/agentkit/reference/custom-connectors/) in the [AgentKit API reference](https://docs.scalekit.com/agentkit/reference/). Authentication: https://docs.scalekit.com/agentkit/reference/authentication.md. Errors and rate limits: https://docs.scalekit.com/agentkit/reference/errors.md. Pagination: https://docs.scalekit.com/agentkit/reference/pagination.md


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
