curl --request GET \
--url https://api.example.com/approvals/workflowimport requests
url = "https://api.example.com/approvals/workflow"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/approvals/workflow', 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://api.example.com/approvals/workflow",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.example.com/approvals/workflow"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/approvals/workflow")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/approvals/workflow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "507f1f77bcf86cd799439011",
"name": "Onboarding Resources",
"active": true,
"resources": [
{
"id": "507f1f77bcf86cd799439011",
"name": "Identity Document",
"type": "DOCUMENT",
"active": true,
"internalId": "internal-12345"
}
],
"updatedAt": "2025-01-15T10:30:00Z",
"description": "Resources required for employee onboarding"
}
],
"totalPages": 5
}List Workflows
Retrieve a paginated list of your workflows, including their approvals.
Workflows let you pack approvals together and request them easily.
Filter with the optional query parameters: search (matches the workflow name or the name of a contained approval), active (active or inactive workflows only), types (only workflows containing approvals of the given resource types), and internalId (only the workflow containing the approval with your identifier).
Use pageIndex and pageSize to paginate.
curl --request GET \
--url https://api.example.com/approvals/workflowimport requests
url = "https://api.example.com/approvals/workflow"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/approvals/workflow', 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://api.example.com/approvals/workflow",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.example.com/approvals/workflow"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/approvals/workflow")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/approvals/workflow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "507f1f77bcf86cd799439011",
"name": "Onboarding Resources",
"active": true,
"resources": [
{
"id": "507f1f77bcf86cd799439011",
"name": "Identity Document",
"type": "DOCUMENT",
"active": true,
"internalId": "internal-12345"
}
],
"updatedAt": "2025-01-15T10:30:00Z",
"description": "Resources required for employee onboarding"
}
],
"totalPages": 5
}Headers
Pin request, response, and webhook shapes to a specific dated API version (YYYY-MM-DD). Omit to use the version pinned to your API key (set when the key is created; new keys default to the latest version). New integrations should target the latest version.
^\d{4}-\d{2}-\d{2}$"2026-09-01"
Query Parameters
Zero-based page index. 0 returns the first page.
0
Number of items per page
5 <= x <= 10010
Search query to filter by. Is case-insensitive and does not need to match the entire value.
100"example"
Filter by active status. Accepts true/false as string or boolean.
true
Filter by resource types. Can be a single value or array
DOCUMENT, FORM, JSON, POLICY ["DOCUMENT", "FORM"]
Identifier to help you identify the resource in your own system. We recommend using a unique value.
"internal-12345"
Response
Returns an array of workflows (each including its approvals) and the total number of pages.