curl --request GET \
--url https://managexrapi.com/organizations/{orgId}/devices \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://managexrapi.com/organizations/{orgId}/devices"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://managexrapi.com/organizations/{orgId}/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://managexrapi.com/organizations/{orgId}/devices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://managexrapi.com/organizations/{orgId}/devices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://managexrapi.com/organizations/{orgId}/devices")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://managexrapi.com/organizations/{orgId}/devices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body[
{
"id": "12345678901234",
"serial": "12345678901234",
"name": "Training Room 1",
"mac": "CE:AF:07:47:E0:AE",
"model": "Quest 2",
"manufacturer": "Meta",
"notes": "Mounted in Room 5",
"batteryLevel": 87,
"batteryIsCharging": true,
"pauseUpdates": false,
"online": true,
"osVersion": "Android 12",
"outOfDate": true,
"registerDate": "2023-11-12T10:30:00Z",
"updating": false,
"factoryResetStatus": "NONE",
"firmwareVersion": "Oculus OS 46.0.0.230",
"configuration": {
"id": "sFidGmedeQofSBcvRcyn",
"name": "Training Configuration"
},
"tags": [
{
"id": "tag_abc123",
"name": "Lab Devices"
}
],
"tutorialModeEnabled": false,
"kioskModeOverride": true,
"lastSync": "2024-04-20T17:23:12Z",
"ram": {
"available": 2147483648,
"total": 4294967296
},
"storage": {
"available": 15728640000
},
"location": {
"city": "San Francisco",
"region": "California",
"country": "US",
"continent": "North America",
"timeZone": "America/Los_Angeles",
"longitude": -122.4194,
"latitude": 37.7749
},
"connectedWifiNetwork": {
"ssid": "ManageXR-Office"
},
"currentForegroundApp": {
"packageName": "com.my.app",
"title": "My Training App"
},
"controllerData": {
"controller0": {
"batteryLevel": 85,
"version": "v14"
},
"controller1": {
"batteryLevel": 82,
"version": "v14"
}
}
}
]List Devices
Retrieve a list of devices
curl --request GET \
--url https://managexrapi.com/organizations/{orgId}/devices \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://managexrapi.com/organizations/{orgId}/devices"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://managexrapi.com/organizations/{orgId}/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://managexrapi.com/organizations/{orgId}/devices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://managexrapi.com/organizations/{orgId}/devices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://managexrapi.com/organizations/{orgId}/devices")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://managexrapi.com/organizations/{orgId}/devices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body[
{
"id": "12345678901234",
"serial": "12345678901234",
"name": "Training Room 1",
"mac": "CE:AF:07:47:E0:AE",
"model": "Quest 2",
"manufacturer": "Meta",
"notes": "Mounted in Room 5",
"batteryLevel": 87,
"batteryIsCharging": true,
"pauseUpdates": false,
"online": true,
"osVersion": "Android 12",
"outOfDate": true,
"registerDate": "2023-11-12T10:30:00Z",
"updating": false,
"factoryResetStatus": "NONE",
"firmwareVersion": "Oculus OS 46.0.0.230",
"configuration": {
"id": "sFidGmedeQofSBcvRcyn",
"name": "Training Configuration"
},
"tags": [
{
"id": "tag_abc123",
"name": "Lab Devices"
}
],
"tutorialModeEnabled": false,
"kioskModeOverride": true,
"lastSync": "2024-04-20T17:23:12Z",
"ram": {
"available": 2147483648,
"total": 4294967296
},
"storage": {
"available": 15728640000
},
"location": {
"city": "San Francisco",
"region": "California",
"country": "US",
"continent": "North America",
"timeZone": "America/Los_Angeles",
"longitude": -122.4194,
"latitude": 37.7749
},
"connectedWifiNetwork": {
"ssid": "ManageXR-Office"
},
"currentForegroundApp": {
"packageName": "com.my.app",
"title": "My Training App"
},
"controllerData": {
"controller0": {
"batteryLevel": 85,
"version": "v14"
},
"controller1": {
"batteryLevel": 82,
"version": "v14"
}
}
}
]Authorizations
API key based authentication where is the Base64 encoding of API_KEY_ID:API_KEY_SECRET
- Username: The API Key ID.
- Password: The API Key Secret.
Path Parameters
The ID of the organization. Locate the orgId under Organization Settings > API Keys.
Query Parameters
Query by device name. Allows partial matching. Separate multiple name parameters by comma.
Query by device serial. Allows partial matching. Separate multiple serial parameters by comma.
Query by configuration unique identifier. Separate multiple configuration id parameters by comma.
Query by tag unique identifier. Separate multiple tag id parameters by comma.
Query by model name. Separate multiple model parameters by comma.
Query by manufacturer name. Separate multiple manufacturer parameters by comma.
Query by firmware version. Separate multiple firmware version parameters by comma.
Query by filter.
online, offline, upToDate, outOfDate, updateError, updating, paused, lowBattery, activeToday, activeWeek, activeMonth, activeOther, factoryResetPending, factoryReset Response
A list of devices
The device ID (serial number)
"12345678901234"
Device serial number
"12345678901234"
The device name
"Training Room 1"
MAC address of the device
"CE:AF:07:47:E0:AE"
The device model
"Quest 2"
The device manufacturer
"Meta"
Optional user-provided notes about the device
"Mounted in Room 5"
Battery level percentage
87
Whether the device is currently charging
true
Whether updates are paused for this device
false
Whether the device is currently online
true
The OS version running on the device
"Android 12"
Whether the device is running outdated software
true
The date this device was registered with ManageXR
"2023-11-12T10:30:00Z"
Whether the device is currently performing an update
false
Status of any pending or active factory reset
"NONE"
Firmware version reported by the device
"Oculus OS 46.0.0.230"
The configuration assigned to this device
Show child attributes
Show child attributes
Tags assigned to this device
Show child attributes
Show child attributes
Whether tutorial mode is enabled
false
True if device has Kiosk Mode/ManageXR Home Screen disabled. When true, the device is not locked into the ManageXR Home Screen or Kiosk App and users have full access to the native system menus. Learn more
true
The last time the device checked in with ManageXR. Online devices check in every 15 minutes.
"2024-04-20T17:23:12Z"
RAM usage info
Show child attributes
Show child attributes
Internal storage usage info
Show child attributes
Show child attributes
Approximate location of the device
Show child attributes
Show child attributes
Current connected Wi-Fi network
Show child attributes
Show child attributes
Currently running app in the foreground
Show child attributes
Show child attributes
Data about connected controllers
Show child attributes
Show child attributes