List devices for multiple users
curl --request POST \
--url https://backendapi.cloud.corbado.io/v2/devices \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"userIDs": [
"usr-4693224802260150919",
"usr-4693224802260150920"
]
}
'import requests
url = "https://backendapi.cloud.corbado.io/v2/devices"
payload = { "userIDs": ["usr-4693224802260150919", "usr-4693224802260150920"] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({userIDs: ['usr-4693224802260150919', 'usr-4693224802260150920']})
};
fetch('https://backendapi.cloud.corbado.io/v2/devices', 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://backendapi.cloud.corbado.io/v2/devices",
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([
'userIDs' => [
'usr-4693224802260150919',
'usr-4693224802260150920'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$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://backendapi.cloud.corbado.io/v2/devices"
payload := strings.NewReader("{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://backendapi.cloud.corbado.io/v2/devices")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.cloud.corbado.io/v2/devices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"devices": [
{
"id": "ndv-4693224802260150919",
"userID": "usr-4693224802260150919",
"osName": "iOS",
"classification": "unclear",
"classificationScore": 75,
"totalLoginCount": 123,
"passkeyLoginsCompleted": 123,
"abortedPKLoginsCompletedCount": 123,
"abortedPKLoginsIncompleteCount": 123,
"pureConventionalLoginsCompleted": 123,
"pureConventionalLoginsIncomplete": 123,
"completedAppendCount": 123,
"abortedAppendCount": 123,
"nativeAppInstalled": true,
"createdMs": 123,
"clientEnvIDs": [
"<string>"
]
}
]
}{
"httpStatusCode": 123,
"message": "OK",
"requestData": {
"requestID": "req-557...663",
"link": "https://my.corbado.com/requests/req-xxxxxxxxxxxxxxxxxxx"
},
"runtime": 0.06167686,
"error": {
"type": "<string>",
"details": "<string>",
"validation": [
{
"field": "<string>",
"message": "<string>"
}
],
"links": [
"<string>"
]
},
"data": {}
}Analytics and configuration
List devices for multiple users
Returns a list of devices for multiple users at once
Required API key permission: devices:read.
POST
/
devices
List devices for multiple users
curl --request POST \
--url https://backendapi.cloud.corbado.io/v2/devices \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"userIDs": [
"usr-4693224802260150919",
"usr-4693224802260150920"
]
}
'import requests
url = "https://backendapi.cloud.corbado.io/v2/devices"
payload = { "userIDs": ["usr-4693224802260150919", "usr-4693224802260150920"] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({userIDs: ['usr-4693224802260150919', 'usr-4693224802260150920']})
};
fetch('https://backendapi.cloud.corbado.io/v2/devices', 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://backendapi.cloud.corbado.io/v2/devices",
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([
'userIDs' => [
'usr-4693224802260150919',
'usr-4693224802260150920'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$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://backendapi.cloud.corbado.io/v2/devices"
payload := strings.NewReader("{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://backendapi.cloud.corbado.io/v2/devices")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.cloud.corbado.io/v2/devices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"userIDs\": [\n \"usr-4693224802260150919\",\n \"usr-4693224802260150920\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"devices": [
{
"id": "ndv-4693224802260150919",
"userID": "usr-4693224802260150919",
"osName": "iOS",
"classification": "unclear",
"classificationScore": 75,
"totalLoginCount": 123,
"passkeyLoginsCompleted": 123,
"abortedPKLoginsCompletedCount": 123,
"abortedPKLoginsIncompleteCount": 123,
"pureConventionalLoginsCompleted": 123,
"pureConventionalLoginsIncomplete": 123,
"completedAppendCount": 123,
"abortedAppendCount": 123,
"nativeAppInstalled": true,
"createdMs": 123,
"clientEnvIDs": [
"<string>"
]
}
]
}{
"httpStatusCode": 123,
"message": "OK",
"requestData": {
"requestID": "req-557...663",
"link": "https://my.corbado.com/requests/req-xxxxxxxxxxxxxxxxxxx"
},
"runtime": 0.06167686,
"error": {
"type": "<string>",
"details": "<string>",
"validation": [
{
"field": "<string>",
"message": "<string>"
}
],
"links": [
"<string>"
]
},
"data": {}
}Authorizations
basicAuthbearerAuth
Basic authentication is used to authenticate requests to the Backend API. The username is the project ID and the password is the API secret.
The project ID and API secret can be found in the Management Console.
Body
application/json
List of user IDs to fetch devices for
Required array length:
1 - 1000 elementsExample:
[
"usr-4693224802260150919",
"usr-4693224802260150920"
]
Response
List of all devices for the provided users.
Show child attributes
Show child attributes
Was this page helpful?