curl
curl --request GET \
--url "https://au.api.plerion.com/v1/organization/users/7a3f9d8e-1b2c-4d5e-8f90-123456789abc/preferences/navigation?tenantId=65a72929-0e61-4c9c-b7a8-8abe6886fd6c" \
--header "Authorization: Bearer $PLERION_ORGANIZATION_API_KEY"import requests
url = "https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation', 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://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation",
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: Bearer <token>"
],
]);
$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://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"tenantId": "65a72929-0e61-4c9c-b7a8-8abe6886fd6c",
"order": [
"home",
"findings",
"risks",
"assets",
"alerts",
"threat-map"
],
"hidden": [
"threat-map"
],
"updatedAt": "2026-10-05T04:12:00.000Z"
}
}{
"errors": [
{
"code": "ReportNotFound",
"message": "Custom report 3f1c7d2e-5a6b-4c8d-9e0f-1a2b3c4d5e6f was not found in tenant 65a72929-0e61-4c9c-b7a8-8abe6886fd6c"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "RoleNotFound",
"message": "role not found"
}
]
}Get a user's navigation
The sidebar order and hidden entries this user has in the tenant, before resolution. Answers 404 PreferenceNotFound when the user has none of its own.
Requires an organization API key with read access.
GET
/
v1
/
organization
/
users
/
{userId}
/
preferences
/
navigation
curl
curl --request GET \
--url "https://au.api.plerion.com/v1/organization/users/7a3f9d8e-1b2c-4d5e-8f90-123456789abc/preferences/navigation?tenantId=65a72929-0e61-4c9c-b7a8-8abe6886fd6c" \
--header "Authorization: Bearer $PLERION_ORGANIZATION_API_KEY"import requests
url = "https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation', 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://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation",
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: Bearer <token>"
],
]);
$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://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{region}.api.plerion.com/v1/organization/users/{userId}/preferences/navigation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"tenantId": "65a72929-0e61-4c9c-b7a8-8abe6886fd6c",
"order": [
"home",
"findings",
"risks",
"assets",
"alerts",
"threat-map"
],
"hidden": [
"threat-map"
],
"updatedAt": "2026-10-05T04:12:00.000Z"
}
}{
"errors": [
{
"code": "ReportNotFound",
"message": "Custom report 3f1c7d2e-5a6b-4c8d-9e0f-1a2b3c4d5e6f was not found in tenant 65a72929-0e61-4c9c-b7a8-8abe6886fd6c"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "RoleNotFound",
"message": "role not found"
}
]
}Authorizations
Plerion organization API key (plerion_oak_…), created by an organization admin in the Plerion app.
Path Parameters
The user id.
Query Parameters
The tenant the preference applies in. A PUT checks it belongs to the key's organization and answers 400 TenantNotFound otherwise; a GET or DELETE for a tenant outside the organization finds no row and answers 404 PreferenceNotFound.
Response
The stored preference.
Show child attributes
Show child attributes
Was this page helpful?