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

# Remove Tag

> Remove a tag from a subscriber

Remove a tag from a subscriber. If the subscriber doesn't exist, they will be created (without the tag).

## Request Body

<ParamField body="email" type="string">
  Subscriber delivery email address. Required when creating a new subscriber.
</ParamField>

<ParamField body="externalId" type="string">
  Your app/customer/user ID for this subscriber. You can remove tags with only
  `externalId` when the subscriber already exists.
</ParamField>

<ParamField body="tag" type="string" required>
  Tag name to remove
</ParamField>

<ParamField body="firstName" type="string">
  First name (used if creating new subscriber)
</ParamField>

<ParamField body="lastName" type="string">
  Last name (used if creating new subscriber)
</ParamField>

```bash theme={null}
curl -X POST "https://api.sequenzy.com/api/v1/subscribers/tags/remove" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "user@example.com",
    "externalId": "user_123",
    "tag": "premium"
  }'
```

## Responses

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "subscriber": {
      "id": "sub_abc123",
      "email": "user@example.com",
      "externalId": "user_123",
      "tags": ["newsletter"],
      "created": false
    },
    "tag": {
      "name": "premium",
      "removed": true
    }
  }
  ```

  ```json 401 theme={null}
  {
    "success": false,
    "error": "Unauthorized"
  }
  ```

  ```json 500 theme={null}
  {
    "success": false,
    "error": "Internal server error"
  }
  ```
</ResponseExample>

## Response Fields

| Field                | Description                                       |
| -------------------- | ------------------------------------------------- |
| `subscriber.created` | `true` if subscriber was created by this request  |
| `tag.removed`        | `true` if the tag was removed from the subscriber |

## Use Cases

### Downgrade Customer Status

```bash theme={null}
# When customer cancels subscription
curl -X POST "https://api.sequenzy.com/api/v1/subscribers/tags/remove" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "user@example.com",
    "tag": "premium"
  }'
```

### Remove Interest Tag

```bash theme={null}
# When user unsubscribes from a topic
curl -X POST "https://api.sequenzy.com/api/v1/subscribers/tags/remove" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "reader@example.com",
    "tag": "interested-ai"
  }'
```

<Note>
  If the subscriber doesn't have the specified tag, the request will still
  succeed with `tag.removed: false`.
</Note>
