Approval Delegation API
Create Approval Delegation
Create a new approval delegation rule. Optionally specify a delegator_user_id to create on behalf of another user.
POST
/
v2
/
approval-delegations
Create Approval Delegation
curl --request POST \
--url https://public.api.serval.com/v2/approval-delegations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"delegates": [
{
"id": "<string>"
}
],
"delegatorUserId": "<string>",
"priority": 123,
"description": "<string>"
}
'import requests
url = "https://public.api.serval.com/v2/approval-delegations"
payload = {
"delegates": [{ "id": "<string>" }],
"delegatorUserId": "<string>",
"priority": 123,
"description": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
delegates: [{id: '<string>'}],
delegatorUserId: '<string>',
priority: 123,
description: '<string>'
})
};
fetch('https://public.api.serval.com/v2/approval-delegations', 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://public.api.serval.com/v2/approval-delegations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'delegates' => [
[
'id' => '<string>'
]
],
'delegatorUserId' => '<string>',
'priority' => 123,
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://public.api.serval.com/v2/approval-delegations"
payload := strings.NewReader("{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://public.api.serval.com/v2/approval-delegations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.api.serval.com/v2/approval-delegations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"delegatorUserId": "<string>",
"delegates": [
{
"id": "<string>"
}
],
"priority": 123,
"description": "<string>"
}
}{
"message": "<string>",
"detail": {
"type": "<string>",
"value": "<string>",
"debug": {}
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
The delegates who can approve on behalf of the delegator.
Show child attributes
Show child attributes
The ID of the user who is delegating their approvals. When omitted, defaults to the authenticated user.
The priority of the delegation rule (lower values are higher priority).
A description of the delegation rule.
Response
Success
An approval delegation rule that allows a user to delegate their approval responsibilities.
Show child attributes
Show child attributes
Was this page helpful?
⌘I
Create Approval Delegation
curl --request POST \
--url https://public.api.serval.com/v2/approval-delegations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"delegates": [
{
"id": "<string>"
}
],
"delegatorUserId": "<string>",
"priority": 123,
"description": "<string>"
}
'import requests
url = "https://public.api.serval.com/v2/approval-delegations"
payload = {
"delegates": [{ "id": "<string>" }],
"delegatorUserId": "<string>",
"priority": 123,
"description": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
delegates: [{id: '<string>'}],
delegatorUserId: '<string>',
priority: 123,
description: '<string>'
})
};
fetch('https://public.api.serval.com/v2/approval-delegations', 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://public.api.serval.com/v2/approval-delegations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'delegates' => [
[
'id' => '<string>'
]
],
'delegatorUserId' => '<string>',
'priority' => 123,
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://public.api.serval.com/v2/approval-delegations"
payload := strings.NewReader("{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://public.api.serval.com/v2/approval-delegations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://public.api.serval.com/v2/approval-delegations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"delegates\": [\n {\n \"id\": \"<string>\"\n }\n ],\n \"delegatorUserId\": \"<string>\",\n \"priority\": 123,\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"delegatorUserId": "<string>",
"delegates": [
{
"id": "<string>"
}
],
"priority": 123,
"description": "<string>"
}
}{
"message": "<string>",
"detail": {
"type": "<string>",
"value": "<string>",
"debug": {}
}
}
