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.
Get the registry of scope identifiers for configuring restricted project API keys. Use the returned identifiers and descriptions to build permission choices for your integration.
GET /v2/projects/ {project_id} /integrations/api-keys/scopes CopyTry it Authorization Bearer API Key Required
API key access: Unrestricted project API key required. Restricted keys cannot call this endpoint.
For this REST API, select entries with realm: "project" and surface: "rest" or "shared". Each endpoint page lists its required scopes. This endpoint returns no key material.
Path Parameters The unique identifier of the project.
curl -X GET "https://api.botsubscription.com/v2/projects/YOUR_PROJECT_ID/integrations/api-keys/scopes" \
-H "Authorization: Bearer YOUR_API_KEY" const project_id = 'YOUR_PROJECT_ID' ;
const response = await fetch ( `https://api.botsubscription.com/v2/projects/${ project_id }/integrations/api-keys/scopes` , {
method: 'GET' ,
headers: {
'Authorization' : 'Bearer YOUR_API_KEY'
}
});
const data = await response. json (); import requests
project_id = 'YOUR_PROJECT_ID'
response = requests.get(
f 'https://api.botsubscription.com/v2/projects/ { project_id } /integrations/api-keys/scopes' ,
headers = { 'Authorization' : 'Bearer YOUR_API_KEY' }
)
data = response.json() $project_id = 'YOUR_PROJECT_ID' ;
$ch = curl_init ();
curl_setopt ($ch, CURLOPT_URL , "https://api.botsubscription.com/v2/projects/{ $project_id }/integrations/api-keys/scopes" );
curl_setopt ($ch, CURLOPT_HTTPHEADER , [ 'Authorization: Bearer YOUR_API_KEY' ]);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER , true );
$response = curl_exec ($ch); Success application/json
{
"ok" : true ,
"request_id" : "11111111-1111-1111-1111-111111111111" ,
"method" : "GET" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/integrations/api-keys/scopes" ,
"code" : 200 ,
"data" : {
"scopes" : [
{
"id" : "plans:read" ,
"description" : "Read membership plans — buyer-eligibility view only (GET /v2/projects/:projectId/plans)" ,
"realm" : "project" ,
"surface" : "shared"
},
{
"id" : "payment-requests:add" ,
"description" : "Create or resume a checkout payment request through REST or MCP (creating one also needs payment-history:read; applying a coupon also needs coupons:read)" ,
"realm" : "project" ,
"surface" : "shared"
},
{
"id" : "targets:read" ,
"description" : "Read project notification targets through REST or MCP" ,
"realm" : "project" ,
"surface" : "shared"
}
]
},
"message" : "Available API key scopes retrieved successfully"
} Invalid or expired API key application/json
{
"ok" : false ,
"request_id" : "44444444-4444-4444-8444-444444444444" ,
"method" : "GET" ,
"path" : "/v2/projects/11111111-1111-4111-8111-111111111111/integrations/api-keys/scopes" ,
"code" : 401 ,
"error" : {
"message" : "Invalid or expired authentication token." ,
"error_code" : "UNAUTHORIZED"
}
} Last updated: November 4, 2026
Next List Webhooks