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

# Update Custom Dialing Pool

> Update an existing custom dialing pool with new phone numbers or credentials.

> [!NOTE]
>
> **Enterprise Feature** - Custom dialing is only available on Enterprise plans. Contact your Bland representative for access.

Update an existing custom dialing pool by replacing its phone numbers and/or Twilio credentials. This operation will completely replace the existing phone numbers with the new ones provided.

### Headers

**authorization** `string` *required*

Your API key for authentication.

### Path Parameters

**pool\_id** `string` *required*

The unique identifier of the custom dialing pool to update.

**Format**: UUID format (e.g., `550e8400-e29b-41d4-a716-446655440000`)

### Body

**phone\_numbers** `array` *required*

Array of phone numbers to replace the existing numbers in the pool. All numbers must be valid US phone numbers with +1 prefix.

**Format**: Each phone number must be exactly 12 characters: `+1` followed by 10 digits.

**Example**: `["+12345678901", "+19876543210"]`

> [!WARNING]
>
> This will completely replace all existing phone numbers in the pool. Any numbers not included in this array will be removed.

**encrypted\_key** `string`

Optional UUID of Twilio credentials to associate with this pool. If provided, must be valid credentials that belong to your account. To remove credentials, pass `null`.

**Format**: UUID format (e.g., `550e8400-e29b-41d4-a716-446655440000`) or `null`

Learn more about BYOT [here](https://docs.bland.ai/tutorials/custom-twilio.md).

### Response

**status** `string`

Can be `success` or `error`.

**data** `object`

The updated custom dialing pool object (present only if status is `success`).

**data properties**

**id** `string`

Unique identifier for the pool.

**owner\_id** `string`

Organization ID that owns this pool.

**phone\_numbers** `array`

Array of phone numbers in the pool (updated).

**encrypted\_key** `string`

UUID of associated Twilio credentials (or null if none).

**created\_at** `string`

Timestamp when the pool was created.

**errors** `array`

Array of error objects (present only if status is `error`).

**error object properties**

**error** `string`

Error code indicating the type of error.

**message** `string`

Human-readable error message.

```bash cURL theme={null}
curl -X POST "https://us.api.bland.ai/v1/custom-dialing-pools/550e8400-e29b-41d4-a716-446655440001/update" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "phone_numbers": ["+12345678901", "+19876543210", "+15551234567", "+17775551234"],
    "encrypted_key": "550e8400-e29b-41d4-a716-446655440000"
  }'
```

```javascript JavaScript theme={null}
const poolId = '550e8400-e29b-41d4-a716-446655440001';
const response = await fetch(`https://us.api.bland.ai/v1/custom-dialing-pools/${poolId}/update`, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    phone_numbers: ['+12345678901', '+19876543210', '+15551234567', '+17775551234'],
    encrypted_key: '550e8400-e29b-41d4-a716-446655440000'
  })
});

const data = await response.json();
console.log(data);
```

```python Python theme={null}
import requests

pool_id = "550e8400-e29b-41d4-a716-446655440001"
url = f"https://us.api.bland.ai/v1/custom-dialing-pools/{pool_id}/update"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}
data = {
    "phone_numbers": ["+12345678901", "+19876543210", "+15551234567", "+17775551234"],
    "encrypted_key": "550e8400-e29b-41d4-a716-446655440000"
}

response = requests.post(url, headers=headers, json=data)
print(response.json())
```

```json Success Response theme={null}
{
  "status": "success",
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440001",
    "owner_id": "550e8400-e29b-41d4-a716-446655440002",
    "phone_numbers": ["+12345678901", "+19876543210", "+15551234567", "+17775551234"],
    "encrypted_key": "550e8400-e29b-41d4-a716-446655440000",
    "created_at": "2024-01-15T10:30:00Z"
  },
  "errors": null
}
```

```json Error Response - Pool Not Found theme={null}
{
  "status": "error",
  "data": null,
  "errors": [
    {
      "error": "POOL_NOT_FOUND",
      "message": "Geospatial dialing pool not found"
    }
  ]
}
```

```json Error Response - Invalid Phone Numbers theme={null}
{
  "status": "error",
  "data": null,
  "errors": [
    {
      "error": "INVALID_PHONE_NUMBERS",
      "message": "All phone numbers must be valid US numbers with +1 prefix"
    }
  ]
}
```

```json Error Response - Invalid Credentials theme={null}
{
  "status": "error",
  "data": null,
  "errors": [
    {
      "error": "INVALID_CREDENTIALS",
      "message": "Twilio credentials not found or do not belong to your account"
    }
  ]
}
```

## Removing Credentials

To remove Twilio credentials from a pool, set `encrypted_key` to `null`:

```json theme={null}
{
  "phone_numbers": ["+12345678901", "+19876543210"],
  "encrypted_key": null
}
```

***

Docs for agents: [llms.txt](https://docs.bland.ai/llms.txt)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.