Get the permission catalog
curl --request GET \
--url https://{region}.api.plerion.com/v1/organization/permission-catalog \
--header 'Authorization: Bearer <token>'import requests
url = "https://{region}.api.plerion.com/v1/organization/permission-catalog"
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/permission-catalog', 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/permission-catalog",
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/permission-catalog"
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/permission-catalog")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{region}.api.plerion.com/v1/organization/permission-catalog")
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": {
"actions": [
{
"id": "Finding:Read",
"name": "View findings",
"description": "View findings. Finding payloads include asset identifiers and configuration fragments.",
"level": "tenant",
"resourceType": "integration"
},
{
"id": "Organization:Read",
"name": "View organization settings",
"description": "View subscription, usage, organization metrics and organization-wide audit logs.",
"level": "organization",
"resourceType": null
}
],
"actionGroups": [
{
"id": "read-only",
"name": "View everything",
"description": "All data and configuration, read only",
"actions": [
"Finding:Read",
"Alert:Read",
"Asset:Read"
]
}
]
}
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}Get the permission catalog
Returns every action and action group a role’s permissions may name. An action’s level says whether it belongs in a tenant-scoped or an organization-scoped role, and its resourceType says whether it can be narrowed to specific integrations (integration) or applies to the whole tenant or organization (null). An action group lists everything it grants, including the groups it implies. The catalog is the same for every organization.
GET
/
v1
/
organization
/
permission-catalog
Get the permission catalog
curl --request GET \
--url https://{region}.api.plerion.com/v1/organization/permission-catalog \
--header 'Authorization: Bearer <token>'import requests
url = "https://{region}.api.plerion.com/v1/organization/permission-catalog"
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/permission-catalog', 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/permission-catalog",
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/permission-catalog"
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/permission-catalog")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{region}.api.plerion.com/v1/organization/permission-catalog")
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": {
"actions": [
{
"id": "Finding:Read",
"name": "View findings",
"description": "View findings. Finding payloads include asset identifiers and configuration fragments.",
"level": "tenant",
"resourceType": "integration"
},
{
"id": "Organization:Read",
"name": "View organization settings",
"description": "View subscription, usage, organization metrics and organization-wide audit logs.",
"level": "organization",
"resourceType": null
}
],
"actionGroups": [
{
"id": "read-only",
"name": "View everything",
"description": "All data and configuration, read only",
"actions": [
"Finding:Read",
"Alert:Read",
"Asset:Read"
]
}
]
}
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}{
"errors": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}Authorizations
Plerion organization API key (plerion_oak_…), created by an organization admin in the Plerion app. GET operations work with a key of either access level; POST, PUT and DELETE require the readWrite access level.
Response
The catalog.
Show child attributes
Show child attributes
Was this page helpful?