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

# Assign Tags to Lead Lists

> Add or remove tags from one or more lead lists

## Query Parameters

<ParamField query="api_key" type="string" required>
  Your SmartLead API key
</ParamField>

## Request Body

<ParamField body="listIds" type="array" required>
  Array of lead list IDs to tag. 1-10 lists allowed.
</ParamField>

<ParamField body="tagIds" type="array" required>
  Array of tag IDs to assign. 1-10 tags allowed.
</ParamField>

<ParamField body="removeTagIds" type="array">
  Array of tag IDs to remove. 1-10 tags allowed.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://server.smartlead.ai/api/v1/lead-list/assign-tags?api_key=YOUR_KEY" \
    -H "Content-Type: application/json" \
    -d '{"listIds": [500, 501], "tagIds": [1, 2], "removeTagIds": [3]}'
  ```
</RequestExample>

## Response Codes

<ResponseField name="200" type="Success">
  Request successful
</ResponseField>

<ResponseField name="400" type="Bad Request">
  Invalid request parameters or malformed request body
</ResponseField>

<ResponseField name="401" type="Unauthorized">
  Invalid or missing API key
</ResponseField>

<ResponseField name="422" type="Validation Error">
  Request validation failed. Check parameter types and constraints.
</ResponseField>

<ResponseExample>
  ```json 200 - Success theme={null}
  {
    "ok": true,
    "message": "Tags updated successfully"
  }
  ```

  ```json 401 - Unauthorized theme={null}
  {
    "message": "Invalid API Key"
  }
  ```
</ResponseExample>
