Get Device Targeting
curl --request POST \
--url https://public.plai.io/meta/get_targeting_systems_lookup \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"userId": "<string>",
"type": "<string>"
}
'import requests
url = "https://public.plai.io/meta/get_targeting_systems_lookup"
payload = {
"userId": "<string>",
"type": "<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>', type: '<string>'})
};
fetch('https://public.plai.io/meta/get_targeting_systems_lookup', 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/meta/get_targeting_systems_lookup",
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>',
'type' => '<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/meta/get_targeting_systems_lookup"
payload := strings.NewReader("{\n \"userId\": \"<string>\",\n \"type\": \"<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/meta/get_targeting_systems_lookup")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"userId\": \"<string>\",\n \"type\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.plai.io/meta/get_targeting_systems_lookup")
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 \"type\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"type": "user_os",
"name": "user_os",
"platform": "Android",
"description": "1.0;1.1;1.5;1.6;2.0;2.1;2.2;2.3;3.0;3.1;3.2;4.0;4.1;4.2;4.3;4.4;5.0;5.1;6.0;7.0;7.1;8.0;8.1;9.0;10.0;11.0;12.0;13.0;14.0;15.0"
}
]
}
}
{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"name": "iPad",
"description": "iPads (all)",
"platform": "iOS",
"type": "user_device",
"audience_size_lower_bound": 180527210,
"audience_size_upper_bound": 212300000
}
]
}
}
Targeting
Get Device Targeting
This endpoint is used to get device targeting lookup, like os and devices names.
POST
/
meta
/
get_targeting_systems_lookup
Get Device Targeting
curl --request POST \
--url https://public.plai.io/meta/get_targeting_systems_lookup \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"userId": "<string>",
"type": "<string>"
}
'import requests
url = "https://public.plai.io/meta/get_targeting_systems_lookup"
payload = {
"userId": "<string>",
"type": "<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>', type: '<string>'})
};
fetch('https://public.plai.io/meta/get_targeting_systems_lookup', 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/meta/get_targeting_systems_lookup",
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>',
'type' => '<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/meta/get_targeting_systems_lookup"
payload := strings.NewReader("{\n \"userId\": \"<string>\",\n \"type\": \"<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/meta/get_targeting_systems_lookup")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"userId\": \"<string>\",\n \"type\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.plai.io/meta/get_targeting_systems_lookup")
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 \"type\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"type": "user_os",
"name": "user_os",
"platform": "Android",
"description": "1.0;1.1;1.5;1.6;2.0;2.1;2.2;2.3;3.0;3.1;3.2;4.0;4.1;4.2;4.3;4.4;5.0;5.1;6.0;7.0;7.1;8.0;8.1;9.0;10.0;11.0;12.0;13.0;14.0;15.0"
}
]
}
}
{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"name": "iPad",
"description": "iPads (all)",
"platform": "iOS",
"type": "user_device",
"audience_size_lower_bound": 180527210,
"audience_size_upper_bound": 212300000
}
]
}
}
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.
string
required
Type =
os or deviceResponse
- OS Type Response
- Device Type Response
boolean
Indicates that the HTTP response was successful (status code 200 OK).
object
boolean
Indicates whether the API request was successful
object
Show Results Object
Show Results Object
boolean
Indicates whether the specific operation or API action was successful.
object[]
Show Targeting System Object
Show Targeting System Object
string
The display name of the targeting system (e.g.,
iPad).string
Description of the targeting system (e.g.,
iPads (all)).string
The platform being targeted (e.g.,
iOS).string
The type of targeting (e.g.,
user_device).number
Estimated minimum audience size for this targeting.
number
Estimated maximum audience size for this targeting.
string
Error string if something went wrong
{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"type": "user_os",
"name": "user_os",
"platform": "Android",
"description": "1.0;1.1;1.5;1.6;2.0;2.1;2.2;2.3;3.0;3.1;3.2;4.0;4.1;4.2;4.3;4.4;5.0;5.1;6.0;7.0;7.1;8.0;8.1;9.0;10.0;11.0;12.0;13.0;14.0;15.0"
}
]
}
}
{
"success": true,
"results": {
"success": true,
"targetingSystems": [
{
"name": "iPad",
"description": "iPads (all)",
"platform": "iOS",
"type": "user_device",
"audience_size_lower_bound": 180527210,
"audience_size_upper_bound": 212300000
}
]
}
}