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.
Modify several access destinations in a single API call. Pass an array of target updates to enable or disable multiple Discord roles or Telegram channels at once. This is efficient for bulk operations like temporarily disabling access during maintenance.
PATCH /v2/projects/ {project_id} /targets CopyTry it Authorization Bearer Token Required
Path Parameters The unique identifier of the project.
Request Body The request body should be an array of objects, each containing:
The internal target ID (UUID) to update.
Whether the target is enabled.
Display name for the target.
curl -X PATCH "https://api.botsubscription.com/v2/projects/YOUR_PROJECT_ID/targets" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '[
{
"target_id": "11111111-1111-1111-1111-111111111111",
"is_enabled": true
},
{
"target_id": "22222222-2222-2222-2222-222222222222",
"is_enabled": false
}
]' const project_id = 'YOUR_PROJECT_ID' ;
const response = await fetch ( `https://api.botsubscription.com/v2/projects/${ project_id }/targets` , {
method: 'PATCH' ,
headers: {
'Authorization' : 'Bearer YOUR_TOKEN' ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ([
{
target_id: '11111111-1111-1111-1111-111111111111' ,
is_enabled: true
},
{
target_id: '22222222-2222-2222-2222-222222222222' ,
is_enabled: false
}
])
});
const data = await response. json (); import requests
project_id = 'YOUR_PROJECT_ID'
response = requests.patch(
f 'https://api.botsubscription.com/v2/projects/ { project_id } /targets' ,
headers = {
'Authorization' : 'Bearer YOUR_TOKEN' ,
'Content-Type' : 'application/json'
},
json = [
{
'target_id' : '11111111-1111-1111-1111-111111111111' ,
'is_enabled' : True
},
{
'target_id' : '22222222-2222-2222-2222-222222222222' ,
'is_enabled' : False
}
]
)
data = response.json() $project_id = 'YOUR_PROJECT_ID' ;
$ch = curl_init ();
curl_setopt ($ch, CURLOPT_URL , "https://api.botsubscription.com/v2/projects/{ $project_id }/targets" );
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST , 'PATCH' );
curl_setopt ($ch, CURLOPT_HTTPHEADER , [
'Authorization: Bearer YOUR_TOKEN' ,
'Content-Type: application/json'
]);
curl_setopt ($ch, CURLOPT_POSTFIELDS , json_encode ([
[
'target_id' => '11111111-1111-1111-1111-111111111111' ,
'is_enabled' => true
],
[
'target_id' => '22222222-2222-2222-2222-222222222222' ,
'is_enabled' => false
]
]));
curl_setopt ($ch, CURLOPT_RETURNTRANSFER , true );
$response = curl_exec ($ch); Targets updated application/json
{
"ok" : true ,
"request_id" : "11111111-1111-1111-1111-111111111111" ,
"method" : "PATCH" ,
"path" : "/v2/projects/YOUR_PROJECT_ID/targets" ,
"code" : 200 ,
"total" : 2 ,
"message" : "Successfully updated 2 target(s)" ,
"data" : [
{
"target_id" : "11111111-1111-1111-1111-111111111111" ,
"target_name" : "Premium Members" ,
"platform" : "discord" ,
"kind" : "role" ,
"external_id" : "123456789012345678" ,
"is_enabled" : true ,
"plan_count" : 3 ,
"parent_target_id" : "33333333-3333-3333-3333-333333333333" ,
"participant_count" : 150
},
{
"target_id" : "22222222-2222-2222-2222-222222222222" ,
"target_name" : "VIP Channel" ,
"platform" : "telegram" ,
"kind" : "channel" ,
"external_id" : "-1001234567890" ,
"is_enabled" : false ,
"plan_count" : 1 ,
"parent_target_id" : null ,
"participant_count" : 45
}
]
} Invalid request application/json
{
"ok" : false ,
"request_id" : "11111111-1111-1111-1111-111111111111" ,
"method" : "PATCH" ,
"path" : "/v2/projects/YOUR_PROJECT_ID/targets" ,
"code" : 400 ,
"error" : {
"error_code" : "BAD_REQUEST" ,
"message" : "Request body must be an array of target updates"
}
} Last updated: May 28, 2026
PreviousGet Target Next Update Target