List approvers of an approval section
Returns the approval section items (organizational units for DEPARTMENT sections, custom dimension values for DIMENSION sections) together with the approvers configured on each item. The organizationId path parameter supports both the Findity id and the partner-side externalId.
curl --request GET \
--url https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers \
--header 'Authorization: Bearer <token>'import requests
url = "https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers', 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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers",
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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers"
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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers")
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{
"meta": {
"total": 5,
"count": 5,
"numberOfApproverLevels": 2
},
"data": [
{
"id": "1528b743a5c44eb5963b6dd53a98c43b",
"externalId": null,
"nodeDepth": 0,
"name": "New company",
"displayName": "New company",
"parentOrganizationalUnitId": null,
"approvers": []
},
{
"id": "f21e3a195d2d4744945ac73c0da95fc7",
"externalId": null,
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 1",
"displayName": "-Unit 1",
"approvers": [
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e6",
"personId": "ff8080819e74371c019e7437518600fa",
"personExternalId": null,
"firstName": "FirstName1",
"lastName": "LastName1",
"email": "firstName1.lastName1@test.com",
"level": 0,
"amountLimit": null
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e7",
"personId": "ff8080819e74371c019e7437519f00fe",
"personExternalId": null,
"firstName": "FirstName2",
"lastName": "LastName2",
"email": "firstName2.lastName2@test.com",
"level": 0,
"amountLimit": null
}
]
},
{
"id": "18fdb1a0b9564f34992a48937b639fec",
"externalId": null,
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 2",
"displayName": "-Unit 2",
"approvers": [
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e8",
"personId": "ff8080819e74371c019e743751ba0102",
"personExternalId": null,
"firstName": "FirstName3",
"lastName": "LastName3",
"email": "firstName3.lastName3@test.com",
"level": 0,
"amountLimit": null,
"meta": {
"fullName": "FirstName3 LastName3",
"fullNameWithEmail": "FirstName3 LastName3 (firstName3.lastName3@test.com)",
"amountLimitDescription": null
}
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e9",
"personId": "ff8080819e74371c019e743751d20106",
"personExternalId": null,
"firstName": "FirstName4",
"lastName": "LastName4",
"email": "firstName4.lastName4@test.com",
"level": 1,
"amountLimit": null,
"meta": {
"fullName": "FirstName4 LastName4",
"fullNameWithEmail": "FirstName4 LastName4 (firstName4.lastName4@test.com)",
"amountLimitDescription": null
}
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5ea",
"personId": "ff8080819e74371c019e743751e8010a",
"personExternalId": null,
"firstName": "FirstName1",
"lastName": "LastName1",
"email": "firstName1.lastName1@test.com",
"level": 1,
"amountLimit": 200.1,
"meta": {
"fullName": "FirstName1 LastName1",
"fullNameWithEmail": "FirstName1 LastName1 (firstName1.lastName1@test.com)",
"amountLimitDescription": "200,10 SEK"
}
}
]
},
{
"id": "005613bdcf5b4e17ba1cc44edef18df6",
"externalId": "95b24a86298348b6b1a11ee1cd68e01a",
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 3",
"displayName": "-Unit 3",
"approvers": []
},
{
"id": "beba831d89c44c81a647e9e60bdd8fad",
"externalId": "48b4815706c447a1bbf2331c876e4448",
"parentOrganizationalUnitId": "005613bdcf5b4e17ba1cc44edef18df6",
"nodeDepth": 2,
"name": "Unit 3.1",
"displayName": "--Unit 3.1",
"approvers": []
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier of the organization. String in UUID without dashes (32-character hex string) if access is done via values from Findity system otherwise, id of external system can be used
UUID without dashes (32-character hex string)
^[0-9a-fA-F]{32}$Query Parameters
Comma-separated list of extra fields to include in the response. Currently supported value: approver.meta.abbreviation — when provided, adds a meta object to each approver containing fullName, fullNameWithEmail, and amountLimitDescription formatted using the organization's base currency.
approver.meta.abbreviation Comma-separated list of properties to sort by, each followed by a colon and a direction (asc or desc). Available sort properties: nodeDepth (only for DEPARTMENT sections), name, externalId, id.
max records to return
1 <= x <= 1000the offset to be used in list
x >= 0free text to search for
Response
OK
Paginated list of approval section items (organizational units or custom dimension values) with their approval configuration for the requested section.
Pagination and approval-level metadata for the response.
Hide child attributes
Hide child attributes
Number of items returned in the data array for this page.
x >= 0Total number of matching approval section items. May exceed count when pagination is applied.
x >= 0Maximum number of approver levels found across all items in the response. Useful for rendering approval-level columns in a UI. 0 when no approvers are configured.
x >= 0Array of approval section items (organizational units or custom dimension values) belonging to this approval section.
Hide child attributes
Hide child attributes
Findity identifier of the approval section item (organizational unit external id, or custom dimension list value id).
^[0-9a-fA-F]{32}$Flat list of approvers configured for this approval section item across all levels. Empty array if no approvers have been assigned.
Hide child attributes
Hide child attributes
Findity unique identifier of the approver record (not the person). Use this value when updating or deleting the approver.
^[0-9a-fA-F]{32}$Findity identifier of the person acting as approver.
^[0-9a-fA-F]{32}$Sequential approval level of this approver within the section item. Approvers are processed from lowest to highest level.
x >= 0External source identifier of the person as provided by the integrating system. Null if not set.
255First name of the approver.
255Last name of the approver.
255Email address of the approver.
255Maximum expense report amount this approver is authorized to approve, expressed in the organization's base currency. Null indicates no upper limit applies.
x >= 0Display metadata for the approver. Present only on GET responses when the request includes the query parameter include=approver.meta.abbreviation. Never returned on POST/PUT responses.
Hide child attributes
Hide child attributes
Full name of the approver, formatted as "firstName lastName".
511Full name with email address, formatted as "firstName lastName (email@example.com)".
511Localized, currency-formatted representation of the approver's amountLimit using the organization's base currency (e.g. "200,10 SEK"). Null when amountLimit is null.
64External source identifier of the approval section item as provided by the integrating system. Null if not set.
255Name of the approval section item.
255Display-formatted name with leading dashes representing the node's depth in the organizational hierarchy. For example, "--Backend" for a node at depth 2. Equals name when nodeDepth is 0 or null.
255UUID (without dashes) of the parent organizational unit. Null if this unit is a root node with no parent. Only populated when the section type is DEPARTMENT.
32^[0-9a-fA-F]{32}$Depth of this organizational unit in the hierarchy. 0 indicates a root node. Null if depth information is unavailable. Only populated when the section type is DEPARTMENT.
x >= 0curl --request GET \
--url https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers \
--header 'Authorization: Bearer <token>'import requests
url = "https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers', 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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers",
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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers"
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://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://stage-api.findity.com/api/v1/admin/organizations/{organizationId}/approval/sections/{sectionId}/approvers")
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{
"meta": {
"total": 5,
"count": 5,
"numberOfApproverLevels": 2
},
"data": [
{
"id": "1528b743a5c44eb5963b6dd53a98c43b",
"externalId": null,
"nodeDepth": 0,
"name": "New company",
"displayName": "New company",
"parentOrganizationalUnitId": null,
"approvers": []
},
{
"id": "f21e3a195d2d4744945ac73c0da95fc7",
"externalId": null,
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 1",
"displayName": "-Unit 1",
"approvers": [
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e6",
"personId": "ff8080819e74371c019e7437518600fa",
"personExternalId": null,
"firstName": "FirstName1",
"lastName": "LastName1",
"email": "firstName1.lastName1@test.com",
"level": 0,
"amountLimit": null
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e7",
"personId": "ff8080819e74371c019e7437519f00fe",
"personExternalId": null,
"firstName": "FirstName2",
"lastName": "LastName2",
"email": "firstName2.lastName2@test.com",
"level": 0,
"amountLimit": null
}
]
},
{
"id": "18fdb1a0b9564f34992a48937b639fec",
"externalId": null,
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 2",
"displayName": "-Unit 2",
"approvers": [
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e8",
"personId": "ff8080819e74371c019e743751ba0102",
"personExternalId": null,
"firstName": "FirstName3",
"lastName": "LastName3",
"email": "firstName3.lastName3@test.com",
"level": 0,
"amountLimit": null,
"meta": {
"fullName": "FirstName3 LastName3",
"fullNameWithEmail": "FirstName3 LastName3 (firstName3.lastName3@test.com)",
"amountLimitDescription": null
}
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5e9",
"personId": "ff8080819e74371c019e743751d20106",
"personExternalId": null,
"firstName": "FirstName4",
"lastName": "LastName4",
"email": "firstName4.lastName4@test.com",
"level": 1,
"amountLimit": null,
"meta": {
"fullName": "FirstName4 LastName4",
"fullNameWithEmail": "FirstName4 LastName4 (firstName4.lastName4@test.com)",
"amountLimitDescription": null
}
},
{
"id": "6a1f0b3a2f684c7c9a8901a2b3c4d5ea",
"personId": "ff8080819e74371c019e743751e8010a",
"personExternalId": null,
"firstName": "FirstName1",
"lastName": "LastName1",
"email": "firstName1.lastName1@test.com",
"level": 1,
"amountLimit": 200.1,
"meta": {
"fullName": "FirstName1 LastName1",
"fullNameWithEmail": "FirstName1 LastName1 (firstName1.lastName1@test.com)",
"amountLimitDescription": "200,10 SEK"
}
}
]
},
{
"id": "005613bdcf5b4e17ba1cc44edef18df6",
"externalId": "95b24a86298348b6b1a11ee1cd68e01a",
"parentOrganizationalUnitId": "1528b743a5c44eb5963b6dd53a98c43b",
"nodeDepth": 1,
"name": "Unit 3",
"displayName": "-Unit 3",
"approvers": []
},
{
"id": "beba831d89c44c81a647e9e60bdd8fad",
"externalId": "48b4815706c447a1bbf2331c876e4448",
"parentOrganizationalUnitId": "005613bdcf5b4e17ba1cc44edef18df6",
"nodeDepth": 2,
"name": "Unit 3.1",
"displayName": "--Unit 3.1",
"approvers": []
}
]
}
