Connected Accounts
curl --request POST \
--url https://public.plai.io/auth/get_connected_accounts_data \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"userId": "<string>"
}
'import requests
url = "https://public.plai.io/auth/get_connected_accounts_data"
payload = { "userId": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({userId: '<string>'})
};
fetch('https://public.plai.io/auth/get_connected_accounts_data', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://public.plai.io/auth/get_connected_accounts_data",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'userId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://public.plai.io/auth/get_connected_accounts_data"
payload := strings.NewReader("{\n \"userId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://public.plai.io/auth/get_connected_accounts_data")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"userId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.plai.io/auth/get_connected_accounts_data")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"userId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"results": {
"success": true,
"connectedAccounts": {
"facebookAds": {
"userName": "<string>",
"adAccountId": 123,
"adAccountName": "<string>",
"currencyCode": "<string>",
"fbPage": {
"id": "<string>",
"name": "<string>",
"pictureUrl": "<string>",
"businessManagerId": "<string>"
},
"igPage": {
"id": "<string>",
"name": "<string>",
"pictureUrl": "<string>",
"businessManagerId": "<string>"
}
},
"linkedinAds": {
"userName": "<string>",
"accountId": 123,
"accountName": "<string>",
"currencyCode": "<string>",
"organizationId": "<string>"
},
"googleAds": {
"userName": "<string>",
"email": "<string>",
"accountId": 123,
"accountName": "<string>",
"currencyCode": "<string>",
"managerId": "<string>"
}
},
"error": "<string>"
}
}Authentication
Connected Accounts
This endpoint allows you to retrieve a list of ads accounts (e.g., Facebook, Instagram, etc.) that are connected to a user’s profile on our platform. By specifying the user’s unique ID, you can access information about the ads accounts they have linked, enabling you to manage or interact with these accounts for further operations, such as advertising or analytics.
POST
/
auth
/
get_connected_accounts_data
Connected Accounts
curl --request POST \
--url https://public.plai.io/auth/get_connected_accounts_data \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"userId": "<string>"
}
'import requests
url = "https://public.plai.io/auth/get_connected_accounts_data"
payload = { "userId": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({userId: '<string>'})
};
fetch('https://public.plai.io/auth/get_connected_accounts_data', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://public.plai.io/auth/get_connected_accounts_data",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'userId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://public.plai.io/auth/get_connected_accounts_data"
payload := strings.NewReader("{\n \"userId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://public.plai.io/auth/get_connected_accounts_data")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"userId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.plai.io/auth/get_connected_accounts_data")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"userId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"results": {
"success": true,
"connectedAccounts": {
"facebookAds": {
"userName": "<string>",
"adAccountId": 123,
"adAccountName": "<string>",
"currencyCode": "<string>",
"fbPage": {
"id": "<string>",
"name": "<string>",
"pictureUrl": "<string>",
"businessManagerId": "<string>"
},
"igPage": {
"id": "<string>",
"name": "<string>",
"pictureUrl": "<string>",
"businessManagerId": "<string>"
}
},
"linkedinAds": {
"userName": "<string>",
"accountId": 123,
"accountName": "<string>",
"currencyCode": "<string>",
"organizationId": "<string>"
},
"googleAds": {
"userName": "<string>",
"email": "<string>",
"accountId": 123,
"accountName": "<string>",
"currencyCode": "<string>",
"managerId": "<string>"
}
},
"error": "<string>"
}
}Request Body
string
required
User ID, If not already created, make a user on create user
page first. If already created,
retrieve the user ID from get profile
page.
Response
boolean
Indicates that the HTTP response was successful (status code 200 OK).
object
Show Results Object
Show Results Object
boolean
Indicates whether the specific operation or API action was successful.
object
Show Connected Ads Accounts
Show Connected Ads Accounts
object
Show Facebook Ads Account Details
Show Facebook Ads Account Details
string
The authenticated user’s display name
number
Platform-specific account identifier
string
Account Name
string
3-letter ISO currency code for the account
object
object
string
Error string if something went wrong