curl --request POST \
--url https://api.social-api.ai/v1/invites \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"brand_id": "b_01HZ9X3Q4R5M6N7P8V2K0W1J",
"expires_in_days": 7,
"permissions": [
"comments.read",
"comments.write"
],
"platform": "facebook"
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
brand_id: 'b_01HZ9X3Q4R5M6N7P8V2K0W1J',
expires_in_days: 7,
permissions: ['comments.read', 'comments.write'],
platform: 'facebook'
})
};
fetch('https://api.social-api.ai/v1/invites', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.social-api.ai/v1/invites"
payload = {
"brand_id": "b_01HZ9X3Q4R5M6N7P8V2K0W1J",
"expires_in_days": 7,
"permissions": ["comments.read", "comments.write"],
"platform": "facebook"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"expires_at": "2026-04-03T12:00:00Z",
"id": "inv_01HZ9X3Q4R5M6N7P8V2K0W1J",
"permissions": [
"comments.read",
"comments.write"
],
"platform": "facebook",
"token": "a55755cf75f73b56deb3dfe0c993fd36fc4c2bfa7",
"url": "https://api.social-api.ai/invite/a55755cf..."
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}Create an invite link
Creates a single-use invite link for an external user to connect a social account to a brand. The brand must not already have a connected account for the specified platform, and no active (unused, unexpired) invite may exist for the same brand+platform combination.
curl --request POST \
--url https://api.social-api.ai/v1/invites \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"brand_id": "b_01HZ9X3Q4R5M6N7P8V2K0W1J",
"expires_in_days": 7,
"permissions": [
"comments.read",
"comments.write"
],
"platform": "facebook"
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
brand_id: 'b_01HZ9X3Q4R5M6N7P8V2K0W1J',
expires_in_days: 7,
permissions: ['comments.read', 'comments.write'],
platform: 'facebook'
})
};
fetch('https://api.social-api.ai/v1/invites', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.social-api.ai/v1/invites"
payload = {
"brand_id": "b_01HZ9X3Q4R5M6N7P8V2K0W1J",
"expires_in_days": 7,
"permissions": ["comments.read", "comments.write"],
"platform": "facebook"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"expires_at": "2026-04-03T12:00:00Z",
"id": "inv_01HZ9X3Q4R5M6N7P8V2K0W1J",
"permissions": [
"comments.read",
"comments.write"
],
"platform": "facebook",
"token": "a55755cf75f73b56deb3dfe0c993fd36fc4c2bfa7",
"url": "https://api.social-api.ai/invite/a55755cf..."
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}{
"error": {
"code": "resource.not_found",
"message": "Account not found",
"meta": {}
}
}Authorizations
Prefix your API key with "Bearer ". Example: Authorization: Bearer sapi_key_...
Body
Invite details
"b_01HZ9X3Q4R5M6N7P8V2K0W1J"
7
The permissions the connected account gets, which are the only ones the invited person is asked to grant. Omit it to keep the brand's current permissions for this platform, or to give every permission if it has none. Valid values: posts.read, posts.write, comments.read, comments.write, messages.read, messages.write, reviews.read, reviews.write, analytics.read.
["comments.read", "comments.write"]
"facebook"
Response
Invite created
"2026-04-03T12:00:00Z"
"inv_01HZ9X3Q4R5M6N7P8V2K0W1J"
The permissions chosen when the invite was created. null means the brand's current permissions for this platform apply when the invite is used, or every permission if it has none.
["comments.read", "comments.write"]
"facebook"
"a55755cf75f73b56deb3dfe0c993fd36fc4c2bfa7"
"https://api.social-api.ai/invite/a55755cf..."