> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cuprice.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Remove Feature from Plan

> Remove a feature assignment from a pricing plan

Removes a feature from a pricing plan. The feature itself is not deleted — it is only unassigned from the plan.

## Endpoint

```
DELETE /api/v1/projects/{slug}/plans/{planId}/features
```

## Authentication

<ParamField header="Authorization" type="string" required>
  Bearer token with your API key. Requires `read_write` permission.
</ParamField>

## Path Parameters

<ParamField path="slug" type="string" required>
  The project's URL-friendly slug identifier.
</ParamField>

<ParamField path="planId" type="number" required>
  The plan's unique ID.
</ParamField>

## Query Parameters

<ParamField query="featureId" type="number" required>
  The ID of the feature to remove from the plan.
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  `true` if the feature was successfully removed from the plan.
</ResponseField>

## Example

```bash theme={null}
curl -X DELETE "https://cuprice.io/api/v1/projects/my-saas-app/plans/201/features?featureId=103" \
  -H "Authorization: Bearer cpk_your_key_here"
```

```json theme={null}
{
  "success": true
}
```

<Note>
  This only removes the feature from the plan. The feature still exists in the project and can be assigned to other plans.
</Note>

## Errors

| Status | Description                                    |
| ------ | ---------------------------------------------- |
| `400`  | Missing `featureId` query parameter            |
| `401`  | Invalid or missing API key                     |
| `403`  | API key does not have `read_write` permission  |
| `404`  | Project, plan, or feature assignment not found |
