api.botsubscription.com
GET /v1/endpoint
Authentication Bearer
Token
Stays in this tab. Required for this endpoint — the value below is what gets sent.
Request GET Response —
cURL Node Python PHP Go Ruby
Copy curl --request GET \
--url https://api.botsubscription.com/v1/endpoint \
--header 'Authorization: Bearer sk_live_•••'— — · — · —
Response will appear here.
Change several configuration options in a single API call. Pass an object with setting keys and their new values. This is more efficient than making individual update requests when you need to modify multiple settings at once, such as during initial setup.
PATCH /v2/projects/ {project_id} /settings CopyTry it Authorization Bearer API Key Required
API key access: Unrestricted project API key required. Restricted keys cannot call this endpoint.
Project keys can change only supported settings. Notification-destination changes can return 403 BACKOFFICE_DESTINATION_PERMISSION_REQUIRED; unsupported AI-model selections can return 422 VALIDATION_ERROR. An unrestricted key does not bypass these setting-specific restrictions.
Path Parameters The unique identifier of the project.
Request Body The request body should be an object with setting keys and their new values.
curl -X PATCH "https://api.botsubscription.com/v2/projects/YOUR_PROJECT_ID/settings" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"default_language": "en",
"timezone_preference": "America/New_York",
"collect_email_on_subscribe": true
}' const project_id = 'YOUR_PROJECT_ID' ;
const response = await fetch ( `https://api.botsubscription.com/v2/projects/${ project_id }/settings` , {
method: 'PATCH' ,
headers: {
'Authorization' : 'Bearer YOUR_API_KEY' ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ({
default_language: 'en' ,
timezone_preference: 'America/New_York' ,
collect_email_on_subscribe: true
})
});
// 204 No Content on success import requests
project_id = 'YOUR_PROJECT_ID'
response = requests.patch(
f 'https://api.botsubscription.com/v2/projects/ { project_id } /settings' ,
headers = {
'Authorization' : 'Bearer YOUR_API_KEY' ,
'Content-Type' : 'application/json'
},
json = {
'default_language' : 'en' ,
'timezone_preference' : 'America/New_York' ,
'collect_email_on_subscribe' : True
}
)
# 204 No Content on success $project_id = 'YOUR_PROJECT_ID' ;
$ch = curl_init ();
curl_setopt ($ch, CURLOPT_URL , "https://api.botsubscription.com/v2/projects/{ $project_id }/settings" );
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST , 'PATCH' );
curl_setopt ($ch, CURLOPT_HTTPHEADER , [
'Authorization: Bearer YOUR_API_KEY' ,
'Content-Type: application/json'
]);
curl_setopt ($ch, CURLOPT_POSTFIELDS , json_encode ([
'default_language' => 'en' ,
'timezone_preference' => 'America/New_York' ,
'collect_email_on_subscribe' => true
]));
curl_setopt ($ch, CURLOPT_RETURNTRANSFER , true );
$response = curl_exec ($ch);
// 204 No Content on success Settings updated application/json
No response body is returned on successful update.
Invalid setting value application/json
{
"ok" : false ,
"request_id" : "11111111-1111-1111-1111-111111111111" ,
"method" : "PATCH" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/settings" ,
"code" : 400 ,
"error" : {
"error_code" : "BAD_REQUEST" ,
"message" : "Invalid value for setting 'timezone_preference'"
}
} Notification destination change refused application/json
{
"ok" : false ,
"request_id" : "44444444-4444-4444-8444-444444444444" ,
"method" : "PATCH" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/settings" ,
"code" : 403 ,
"error" : {
"error_code" : "BACKOFFICE_DESTINATION_PERMISSION_REQUIRED" ,
"message" : "The supplied API key cannot change this notification destination."
}
} Unsupported model selection application/json
{
"ok" : false ,
"request_id" : "44444444-4444-4444-8444-444444444444" ,
"method" : "PATCH" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/settings" ,
"code" : 422 ,
"errors" : [
{
"error_code" : "VALIDATION_ERROR" ,
"message" : "Unsupported AI-model selection."
}
]
} Invalid or expired API key application/json
{
"ok" : false ,
"request_id" : "44444444-4444-4444-8444-444444444444" ,
"method" : "PATCH" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/settings" ,
"code" : 401 ,
"error" : {
"message" : "Invalid or expired authentication token." ,
"error_code" : "UNAUTHORIZED"
}
} Last updated: November 4, 2026
PreviousConfigure Custom Hostname Next Update Setting