Unauthenticated Session
cURL
curl --request POST \
--url https://api.sandbox.verisoul.ai/session/unauthenticated \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"session_id": "<string>"
}
'import requests
url = "https://api.sandbox.verisoul.ai/session/unauthenticated"
payload = { "session_id": "<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({session_id: '<string>'})
};
fetch('https://api.sandbox.verisoul.ai/session/unauthenticated', 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://api.sandbox.verisoul.ai/session/unauthenticated",
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([
'session_id' => '<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://api.sandbox.verisoul.ai/session/unauthenticated"
payload := strings.NewReader("{\n \"session_id\": \"<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://api.sandbox.verisoul.ai/session/unauthenticated")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"session_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.verisoul.ai/session/unauthenticated")
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 \"session_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"project_id": "00000000-0000-0000-0000-000000000001",
"session_id": "56f9a065-1583-48af-a5c4-cd5921b21a12",
"request_id": "f1ebfd0d-334d-450e-88e8-4705dba7d611",
"decision": "Real",
"account_score": 0.2233,
"bot": 0,
"multiple_accounts": 0.2053,
"risk_signals": 0.3018,
"accounts_linked": 2,
"lists": [
"us_users"
],
"session": {
"start_time": "2025-06-10T16:45:21.822Z",
"true_country_code": "US",
"device_id": "6yONB4zT6k2i7SXvWkwC9s",
"network": {
"ip_address": "2600:1700:261:b810:8828:f0b6:3b95:667c",
"service_provider": "AT&T Enterprises, LLC",
"connection_type": "isp"
},
"location": {
"continent": "NA",
"country_code": "US",
"state": "Texas",
"city": "Austin",
"zip_code": "78729",
"timezone": "America/Chicago",
"latitude": 30.4521,
"longitude": -97.7688
},
"browser": {
"type": "Chrome",
"version": "137.0.0.0",
"language": "en-US",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36",
"timezone": "America/Chicago"
},
"device": {
"category": "desktop",
"type": "Mac",
"os": "macOS 10.15.7",
"cpu_cores": 16,
"memory": 8,
"gpu": "ANGLE (Apple, ANGLE Metal Renderer: Apple M4 Max, Unspecified Version)",
"screen_height": 1329,
"screen_width": 2056
},
"bot": {
"mouse_num_events": 0,
"click_num_events": 0,
"keyboard_num_events": 0,
"touch_num_events": 0,
"clipboard_num_events": 0
},
"risk_signals": {
"device_risk": false,
"proxy": false,
"vpn": false,
"tor": false,
"spoofed_ip": false,
"datacenter": false,
"recent_fraud_ip": false,
"impossible_travel": false,
"device_network_mismatch": false,
"location_spoofing": false
},
"risk_signal_scores": {
"device_risk": 0.4024,
"proxy": 0,
"vpn": 0,
"tor": 0,
"datacenter": 0,
"recent_fraud_ip": 0,
"impossible_travel": 0,
"device_network_mismatch": 0.0001,
"location_spoofing": 0
},
"risk_signal_details": {
"network": [],
"device": [
"browser_tampering_detected"
]
},
"mobile": {
"brand": "Apple",
"model": "iPhone",
"system_memory_gb": 8,
"boot_count": null,
"system_uptime_days": 2,
"battery_level": 0.82,
"languages": [
"en-US"
],
"oem_app_integrity": "unavailable",
"oem_device_integrity": "passed"
}
}
}
Authorizations
Query Parameters
Whether to include linked accounts in the response
Body
application/json
Session information
The ID of the session to evaluate
Response
Session evaluation response
The ID of the project
The ID of the session
The ID of the request
Decision about the authenticity (Real/Fake)
Overall account risk score
Bot detection score
Multiple accounts detection score
Risk signals score
Number of accounts linked to this session
Lists the session belongs to
Show child attributes
Show child attributes
List of accounts linked to this session (only included when accounts_linked=true)
Show child attributes
Show child attributes
⌘I
cURL
curl --request POST \
--url https://api.sandbox.verisoul.ai/session/unauthenticated \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"session_id": "<string>"
}
'import requests
url = "https://api.sandbox.verisoul.ai/session/unauthenticated"
payload = { "session_id": "<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({session_id: '<string>'})
};
fetch('https://api.sandbox.verisoul.ai/session/unauthenticated', 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://api.sandbox.verisoul.ai/session/unauthenticated",
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([
'session_id' => '<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://api.sandbox.verisoul.ai/session/unauthenticated"
payload := strings.NewReader("{\n \"session_id\": \"<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://api.sandbox.verisoul.ai/session/unauthenticated")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"session_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.verisoul.ai/session/unauthenticated")
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 \"session_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"project_id": "00000000-0000-0000-0000-000000000001",
"session_id": "56f9a065-1583-48af-a5c4-cd5921b21a12",
"request_id": "f1ebfd0d-334d-450e-88e8-4705dba7d611",
"decision": "Real",
"account_score": 0.2233,
"bot": 0,
"multiple_accounts": 0.2053,
"risk_signals": 0.3018,
"accounts_linked": 2,
"lists": [
"us_users"
],
"session": {
"start_time": "2025-06-10T16:45:21.822Z",
"true_country_code": "US",
"device_id": "6yONB4zT6k2i7SXvWkwC9s",
"network": {
"ip_address": "2600:1700:261:b810:8828:f0b6:3b95:667c",
"service_provider": "AT&T Enterprises, LLC",
"connection_type": "isp"
},
"location": {
"continent": "NA",
"country_code": "US",
"state": "Texas",
"city": "Austin",
"zip_code": "78729",
"timezone": "America/Chicago",
"latitude": 30.4521,
"longitude": -97.7688
},
"browser": {
"type": "Chrome",
"version": "137.0.0.0",
"language": "en-US",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36",
"timezone": "America/Chicago"
},
"device": {
"category": "desktop",
"type": "Mac",
"os": "macOS 10.15.7",
"cpu_cores": 16,
"memory": 8,
"gpu": "ANGLE (Apple, ANGLE Metal Renderer: Apple M4 Max, Unspecified Version)",
"screen_height": 1329,
"screen_width": 2056
},
"bot": {
"mouse_num_events": 0,
"click_num_events": 0,
"keyboard_num_events": 0,
"touch_num_events": 0,
"clipboard_num_events": 0
},
"risk_signals": {
"device_risk": false,
"proxy": false,
"vpn": false,
"tor": false,
"spoofed_ip": false,
"datacenter": false,
"recent_fraud_ip": false,
"impossible_travel": false,
"device_network_mismatch": false,
"location_spoofing": false
},
"risk_signal_scores": {
"device_risk": 0.4024,
"proxy": 0,
"vpn": 0,
"tor": 0,
"datacenter": 0,
"recent_fraud_ip": 0,
"impossible_travel": 0,
"device_network_mismatch": 0.0001,
"location_spoofing": 0
},
"risk_signal_details": {
"network": [],
"device": [
"browser_tampering_detected"
]
},
"mobile": {
"brand": "Apple",
"model": "iPhone",
"system_memory_gb": 8,
"boot_count": null,
"system_uptime_days": 2,
"battery_level": 0.82,
"languages": [
"en-US"
],
"oem_app_integrity": "unavailable",
"oem_device_integrity": "passed"
}
}
}
