Change a pool
curl --request PATCH \
--url https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"version": 1
}'import requests
url = "https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id}"
payload = { "version": 1 }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const url = 'https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id}';
const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({version: 1})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"id": "ppl_01K9V2C4E6G8J0M2P4R6T8W0Y2",
"name": "Outreach",
"purpose": "outreach",
"max_per_hour": 50,
"max_per_day": 400,
"sticky_retries": true,
"auto_rest": true,
"min_healthy": 2,
"default_for_campaigns": false,
"version": 2,
"created_at": "2026-10-15T06:40:12.118204Z",
"updated_at": "2026-10-15T06:40:12.118204Z",
"number_ids": [
"phn_01K9Q3A7C2E4G6J8M0P2R4T6V8"
],
"object": "phone_pool",
"numbers": 1,
"healthy": 1,
"resting": 0,
"answer_rate_7d": 0.6412,
"used_by": [
{
"campaign_id": "cmp_01K9W1A3C5E7G9J1M3P5R7T9V1",
"name": "Diwali order confirmation"
}
],
"members": [
{
"id": "phn_01K9Q3A7C2E4G6J8M0P2R4T6V8",
"connection_id": "tcn_01K9Q2W5D8F3H6J9KMNPQRSTVW",
"provider": "plivo",
"ownership": "customer",
"number": "+918048123456",
"agent_id": "agt_01K2M4P7QRSTVWXYZ0A1B2C3",
"state": "ready",
"connection_state": "verified",
"version": 3,
"webhook_url": "",
"created_at": "2026-10-09T07:02:11.903215Z",
"health": {
"state": "active",
"resting_until": null,
"cooling_until": null,
"retired_at": null,
"warming": null,
"attempts_this_hour": 12,
"attempts_today": 24,
"answers_today": 17,
"answer_rate_7d": 0.6955,
"series_7d": [
{
"day": "2026-10-09",
"attempts": 52,
"answers": 31
},
{
"day": "2026-10-10",
"attempts": 60,
"answers": 39
},
{
"day": "2026-10-11",
"attempts": 0,
"answers": 0
},
{
"day": "2026-10-12",
"attempts": 58,
"answers": 41
},
{
"day": "2026-10-13",
"attempts": 61,
"answers": 40
},
{
"day": "2026-10-14",
"attempts": 59,
"answers": 43
},
{
"day": "2026-10-15",
"attempts": 24,
"answers": 17
}
],
"rests_today": 0
},
"pools": [
{
"id": "ppl_01K9V2C4E6G8J0M2P4R6T8W0Y2",
"name": "Outreach"
}
]
}
]
}{
"error": {
"code": "conflict",
"message": "The pool changed since you read it; refresh before retrying"
}
}Phone pools
Change a pool
Send the pool’s current version and the fields to change; number_ids replaces the whole list. A change applies from the next call; a contact keeps its number while that number stays in the pool. A stale version is a 409 and changes nothing.
PATCH
/
v2
/
phone-pools
/
{pool_id}
Change a pool
curl --request PATCH \
--url https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"version": 1
}'import requests
url = "https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id}"
payload = { "version": 1 }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const url = 'https://sandbox.voice.miraiminds.co/v2/phone-pools/{pool_id}';
const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({version: 1})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"id": "ppl_01K9V2C4E6G8J0M2P4R6T8W0Y2",
"name": "Outreach",
"purpose": "outreach",
"max_per_hour": 50,
"max_per_day": 400,
"sticky_retries": true,
"auto_rest": true,
"min_healthy": 2,
"default_for_campaigns": false,
"version": 2,
"created_at": "2026-10-15T06:40:12.118204Z",
"updated_at": "2026-10-15T06:40:12.118204Z",
"number_ids": [
"phn_01K9Q3A7C2E4G6J8M0P2R4T6V8"
],
"object": "phone_pool",
"numbers": 1,
"healthy": 1,
"resting": 0,
"answer_rate_7d": 0.6412,
"used_by": [
{
"campaign_id": "cmp_01K9W1A3C5E7G9J1M3P5R7T9V1",
"name": "Diwali order confirmation"
}
],
"members": [
{
"id": "phn_01K9Q3A7C2E4G6J8M0P2R4T6V8",
"connection_id": "tcn_01K9Q2W5D8F3H6J9KMNPQRSTVW",
"provider": "plivo",
"ownership": "customer",
"number": "+918048123456",
"agent_id": "agt_01K2M4P7QRSTVWXYZ0A1B2C3",
"state": "ready",
"connection_state": "verified",
"version": 3,
"webhook_url": "",
"created_at": "2026-10-09T07:02:11.903215Z",
"health": {
"state": "active",
"resting_until": null,
"cooling_until": null,
"retired_at": null,
"warming": null,
"attempts_this_hour": 12,
"attempts_today": 24,
"answers_today": 17,
"answer_rate_7d": 0.6955,
"series_7d": [
{
"day": "2026-10-09",
"attempts": 52,
"answers": 31
},
{
"day": "2026-10-10",
"attempts": 60,
"answers": 39
},
{
"day": "2026-10-11",
"attempts": 0,
"answers": 0
},
{
"day": "2026-10-12",
"attempts": 58,
"answers": 41
},
{
"day": "2026-10-13",
"attempts": 61,
"answers": 40
},
{
"day": "2026-10-14",
"attempts": 59,
"answers": 43
},
{
"day": "2026-10-15",
"attempts": 24,
"answers": 17
}
],
"rests_today": 0
},
"pools": [
{
"id": "ppl_01K9V2C4E6G8J0M2P4R6T8W0Y2",
"name": "Outreach"
}
]
}
]
}{
"error": {
"code": "conflict",
"message": "The pool changed since you read it; refresh before retrying"
}
}Authorizations
Your workspace secret key, sk_live_ followed by 32 hex characters. Create one in the console under Developers.
Path Parameters
The pool's id (ppl_…).
Body
application/json
Response
Changed
⌘I