curl -X POST "https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pause-2026-08-01-client-1001" \
-d '{
"mode": "hard"
}'
const response = await fetch(
'https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause',
{
method: 'POST',
headers: {
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json',
'Idempotency-Key': 'pause-2026-08-01-client-1001'
},
body: JSON.stringify({
mode: 'hard'
})
}
);
const data = await response.json();
console.log(data);
Agency
Pause Client Workspace
Pauses a client workspace with a hard or soft stop
POST
/
v1
/
agency
/
clients
/
{client_id}
/
pause
curl -X POST "https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pause-2026-08-01-client-1001" \
-d '{
"mode": "hard"
}'
const response = await fetch(
'https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause',
{
method: 'POST',
headers: {
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json',
'Idempotency-Key': 'pause-2026-08-01-client-1001'
},
body: JSON.stringify({
mode: 'hard'
})
}
);
const data = await response.json();
console.log(data);
Available on agency plans. The API token must belong to the agency owner.
Use this when a client cancels or fails payment. You choose the stop behavior per call:
- hard: the client’s AI agents stop answering right away and the widget no longer loads on their site.
- soft: the client’s AI agents keep answering until their remaining monthly message credits run out. Credits are not refilled while paused.
Top-up credits freeze during any pause: they are not drained, not served, and come back untouched on resume. A soft pause drains only the client’s remaining monthly allowance, so a client currently serving on top-up credits stops right away.
Path Parameters
| Name | Type | Description |
|---|---|---|
| client_id* | String | The ID of the client workspace. |
Headers
| Name | Type | Description |
|---|---|---|
| Accept* | String | application/json |
| Authorization* | String | Bearer |
| Content-Type* | String | application/json |
| Idempotency-Key* | String | A unique key for this request. Retrying with the same key and body returns the original response. |
Body Parameters
| Name | Type | Description |
|---|---|---|
| mode* | String | hard or soft. |
curl -X POST "https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pause-2026-08-01-client-1001" \
-d '{
"mode": "hard"
}'
const response = await fetch(
'https://api.sitespeak.ai/v1/agency/clients/{client_id}/pause',
{
method: 'POST',
headers: {
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json',
'Idempotency-Key': 'pause-2026-08-01-client-1001'
},
body: JSON.stringify({
mode: 'hard'
})
}
);
const data = await response.json();
console.log(data);
Response
Returns the client workspace with its new status. After a hard pause,messages_remaining is 0 while the pause lasts.
- 200 Success
- 403 Not an agency account
- 404 Not found
- 422 Validation error
{
"client": {
"id": "dfcee2e1-3ace-41c6-9803-fb2b7c7cdfc7",
"name": "Acme Inc",
"external_reference": "billing-account-1001",
"status": "paused",
"pause_mode": "hard",
"paused_at": "2026-08-01T09:15:00+00:00",
"byok_enabled": false,
"limits": {
"chatbots": 2,
"sources": 50,
"messages": 5000,
"response_tokens": null
},
"usage": {
"chatbots": 1,
"sources": 12,
"messages": 1240
},
"messages_remaining": 0,
"topup_credits_remaining": 0,
"credits_exhausted_at": null,
"credits_reset_at": null,
"created_at": "2026-07-22T19:31:40+00:00"
}
}
Returns when the API token does not belong to an agency account owner.
Returns when no client workspace with this ID exists in your agency.
Returns when
mode is missing or not hard or soft.Last modified on August 25, 2026