> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.taigabilling.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.taigabilling.com/_mcp/server.

# Add providers to contract

POST https://api.taigabilling.com/api/contracts/v3/{contract_id}/providers
Content-Type: application/json

Appends a list of rendering provider IDs to the contract. Provider IDs already on the contract are silently ignored.

Reference: https://docs.taigabilling.com/api-reference/contracts-v-3/contracts-v-3-add-contract-providers

## Authentication

- `Authorization` header (bearer token, required) — Send your Taiga API key as a Bearer token. Create and manage keys in the Taiga developer portal.

## Servers

- `https://api.taigabilling.com` (Production, default)
- `https://api-staging.taigabilling.com` (Staging)

## Request

### Path parameters

- `contract_id` (string, required)

### Body (application/json)

This endpoint expects an object.

- `rendering_provider_ids` (list of string, required) — Provider IDs to add to the contract. Max 100,000 per request.

## Response

### 200

- `provider_count` (integer, required) — The total number of rendering providers currently associated with this contract after the operation
- `added_count` (integer, required) — The number of rendering providers that were newly added to the contract
- `ignored_count` (integer, required) — The number of rendering provider IDs that were already associated with the contract and thus ignored

## Errors

### 404 Not Found Error

- `Contracts_v3_add_contract_providersRequestNotFoundError`
  - ContractsV3AddContractProvidersRequestNotFoundError0

### 422 Unprocessable Entity Error

- `Contracts_v3_add_contract_providersRequestUnprocessableEntityError`
  - ContractsV3AddContractProvidersRequestUnprocessableEntityError0

## Types

### ContractsV3AddContractProvidersRequestNotFoundError0

- `errorName` (enum, optional)
  - Allowed values: `UnprocessableEntityError`
- `content` (EntityNotFoundErrorMessage, optional)

### ContractsV3AddContractProvidersRequestUnprocessableEntityError0

- `errorName` (enum, optional)
  - Allowed values: `UnprocessableEntityError`
- `content` (UnprocessableEntityErrorMessage, optional)

### EntityNotFoundErrorMessage

- `id` (string, required)

### UnprocessableEntityErrorMessage

- `message` (string, optional, nullable)

## Examples

**Request**

```json
{
  "rendering_provider_ids": [
    "string"
  ]
}
```

**Response**

```json
{
  "provider_count": 1,
  "added_count": 1,
  "ignored_count": 1
}
```

**SDK Code**

```python
import requests

url = "https://api.taigabilling.com/api/contracts/v3/contract_id/providers"

payload = { "rendering_provider_ids": ["string"] }
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```