Vision

Get fingerprint parameters

These requests will be made to a local server that only runs when the Vision application is launched.\

Base URL for obtaining a list of available languages

GET
http://127.0.0.1:3030/variations/language

This URL can be used to obtain a list of all available languages, which can then be used in the fingerprint when creating a profile.

Request example

const url =  "http://127.0.0.1:3030/variations/language"; const options = {  method: "GET",  headers: {    "X-Token": "Your Token",   }, };fetch(url, options)  .then((response) => {    response.json().then((data) => {      console.log(data);    });  })  .catch((error) => {    console.error(error);  });
import requestsurl = 'http://127.0.0.1:3030/variations/language' headers = {    'X-Token': 'Your Token',    'Content-Type': 'application/json'}response = requests.get(url, headers=headers)print(response.json())
<?php$url = "http://127.0.0.1:3030/variations/language";$token = "Your Token"; $headers = array(  'X-Token: '.$token,  'Content-Type: application/json');$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);$data = curl_exec($ch);if (curl_errno($ch)) {    print "Error: " . curl_error($ch);} else {    var_dump($data);    curl_close($ch);}?>
// Requires tokio with features = ["macros", "rt-multi-thread"]// Requires reqwest with features = ["json"]// Requires serde_json#[tokio::main]async fn main() {    let url = "http://127.0.0.1:3030/variations/language";    let token = "Token";     let client = reqwest::Client::new();    let response = client        .get(url)        .header("X-Token", token)        .send()        .await        .expect("Failed to send request")        .json::<serde_json::Value>()        .await        .expect("Failed to parse response");    dbg!(response);}
package mainimport (	"io"	"net/http")func main() {	url := "http://127.0.0.1:3030/variations/language"	token := "Your Token"    	client := http.Client{}	req, err := http.NewRequest("GET", url, nil)	if err != nil {		panic(err)	}	req.Header.Add("X-Token", token)        	resp, err := client.Do(req)	if err != nil {		panic(err)	}	defer resp.Body.Close()	body, _ := io.ReadAll(resp.Body)	println(string(body))}
var url = "http://127.0.0.1:3030/variations/language";var token = "Your Token"; var client = new HttpClient();client.DefaultRequestHeaders.Add("X-Token", token);var response = await client.GetAsync(url);var content = await response.Content.ReadAsStringAsync();Console.WriteLine(content);

Response

Response example

[
"en",
"fr",
"de",
"it",
"nl",
"sv",
"es",
"da",
"pt",
"nb",
...
]

Base URL for obtaining a list of available time zones

GET
http://127.0.0.1:3030/variations/timezone

This URL can be used to obtain a list of all available time zones, which can then be used in the fingerprint when creating a profile.

Request example

const url =  "http://127.0.0.1:3030/variations/timezone"; const options = {  method: "GET",  headers: {    "X-Token": "Your Token",   }, };fetch(url, options)  .then((response) => {    response.json().then((data) => {      console.log(data);    });  })  .catch((error) => {    console.error(error);  });
import requestsurl = 'http://127.0.0.1:3030/variations/timezone' headers = {    'X-Token': 'Your Token',    'Content-Type': 'application/json'}response = requests.get(url, headers=headers)print(response.json())
<?php$url = "http://127.0.0.1:3030/variations/timezone";$token = "Your Token"; $headers = array(  'X-Token: '.$token,  'Content-Type: application/json');$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);$data = curl_exec($ch);if (curl_errno($ch)) {    print "Error: " . curl_error($ch);} else {    var_dump($data);    curl_close($ch);}?>
// Requires tokio with features = ["macros", "rt-multi-thread"]// Requires reqwest with features = ["json"]// Requires serde_json#[tokio::main]async fn main() {    let url = "http://127.0.0.1:3030/variations/timezone";    let token = "Token";     let client = reqwest::Client::new();    let response = client        .get(url)        .header("X-Token", token)        .send()        .await        .expect("Failed to send request")        .json::<serde_json::Value>()        .await        .expect("Failed to parse response");    dbg!(response);}
package mainimport (	"io"	"net/http")func main() {	url := "http://127.0.0.1:3030/variations/timezone"	token := "Your Token"    	client := http.Client{}	req, err := http.NewRequest("GET", url, nil)	if err != nil {		panic(err)	}	req.Header.Add("X-Token", token)        	resp, err := client.Do(req)	if err != nil {		panic(err)	}	defer resp.Body.Close()	body, _ := io.ReadAll(resp.Body)	println(string(body))}
var url = "http://127.0.0.1:3030/variations/timezone";var token = "Your Token"; var client = new HttpClient();client.DefaultRequestHeaders.Add("X-Token", token);var response = await client.GetAsync(url);var content = await response.Content.ReadAsStringAsync();Console.WriteLine(content);

Response

Response example

[
"Africa/Abidjan",
"Africa/Accra",
"Africa/Addis_Ababa",
"Africa/Algiers",
"Africa/Asmara",
"Africa/Bamako",
"Africa/Bangui",
"Africa/Banjul",
"Africa/Bissau",
"Africa/Blantyre",
...
]

Base URL for obtaining a list of available video cards

GET
http://127.0.0.1:3030/variations/renderer?os=macos&version=latest

This URL can be used to obtain a list of all available video cards, which can then be used in the print when creating a profile.

URL parameters

Prop

Type

Request example

const url =  "http://127.0.0.1:3030/variations/renderer?os=macos&version=latest"; const options = {  method: "GET",  headers: {    "X-Token": "Your Token",   }, };fetch(url, options)  .then((response) => {    response.json().then((data) => {      console.log(data);    });  })  .catch((error) => {    console.error(error);  });
import requestsurl = 'http://127.0.0.1:3030/variations/renderer?os=macos&version=latest' headers = {    'X-Token': 'Your Token',    'Content-Type': 'application/json'}response = requests.get(url, headers=headers)print(response.json())
<?php$url = "http://127.0.0.1:3030/variations/renderer?os=macos&version=latest";$token = "Your Token"; $headers = array(  'X-Token: '.$token,  'Content-Type: application/json');$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);$data = curl_exec($ch);if (curl_errno($ch)) {    print "Error: " . curl_error($ch);} else {    var_dump($data);    curl_close($ch);}?>
// Requires tokio with features = ["macros", "rt-multi-thread"]// Requires reqwest with features = ["json"]// Requires serde_json#[tokio::main]async fn main() {    let url = "http://127.0.0.1:3030/variations/renderer?os=macos&version=latest";    let token = "Token";     let client = reqwest::Client::new();    let response = client        .get(url)        .header("X-Token", token)        .send()        .await        .expect("Failed to send request")        .json::<serde_json::Value>()        .await        .expect("Failed to parse response");    dbg!(response);}
package mainimport (	"io"	"net/http")func main() {	url := "http://127.0.0.1:3030/variations/renderer?os=macos&version=latest"	token := "Your Token"    	client := http.Client{}	req, err := http.NewRequest("GET", url, nil)	if err != nil {		panic(err)	}	req.Header.Add("X-Token", token)        	resp, err := client.Do(req)	if err != nil {		panic(err)	}	defer resp.Body.Close()	body, _ := io.ReadAll(resp.Body)	println(string(body))}
var url = "http://127.0.0.1:3030/variations/renderer?os=macos&version=latest";var token = "Your Token"; var client = new HttpClient();client.DefaultRequestHeaders.Add("X-Token", token);var response = await client.GetAsync(url);var content = await response.Content.ReadAsStringAsync();Console.WriteLine(content);

Response

Response example

[
"AMD Radeon HD GFX10 Family Unknown Prototype",
"AMD Radeon Navi21",
"AMD Radeon Polaris",
"AMD Radeon Pro 5300",
"AMD Radeon Pro 5500 XT",
"AMD Radeon Pro 555",
"AMD Radeon Pro 555X",
"AMD Radeon Pro 560",
"AMD Radeon Pro 560X",
"AMD Radeon Pro 5700",
"AMD Radeon Pro 5700 XT",
...
]

On this page