curl --request GET \
--url https://api.absentify.com/api/v1/requests/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.absentify.com/api/v1/requests/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.absentify.com/api/v1/requests/{id}', 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.absentify.com/api/v1/requests/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$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.absentify.com/api/v1/requests/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
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.absentify.com/api/v1/requests/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.absentify.com/api/v1/requests/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>",
"end": "<string>",
"start": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_unit": "days",
"revision": 0,
"last_changed_at": "<string>",
"pending_change": {
"id": 0,
"revision": 0,
"kind": "reason",
"status": "pending",
"previous": {
"start": "<string>",
"end": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_type": {
"id": "<string>",
"name": "<string>"
},
"duration": 123,
"workday_absence_duration": 123,
"reason": "<string>"
},
"proposed": {
"start": "<string>",
"end": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_type": {
"id": "<string>",
"name": "<string>"
},
"duration": 123,
"workday_absence_duration": 123,
"reason": "<string>"
},
"changed_by": {
"id": "<string>",
"name": "<string>"
},
"decided_by": {
"id": "<string>",
"name": "<string>"
},
"created_at": "<string>",
"decided_at": "<string>",
"decision_reason": "<string>"
},
"request_creator_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"leave_type": {
"name": "<string>",
"default_name": "<string>",
"id": "<string>",
"leave_unit": "days"
},
"approval_process": "Linear_all_have_to_agree",
"needs_approval": true,
"cancel_reason": "<string>",
"canceld_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"requester_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"take_from_allowance": true,
"allowance_type": {
"id": "<string>",
"name": "<string>",
"default_name": "<string>",
"ignore_allowance_limit": true,
"allowance_unit": "days"
},
"reason": "<string>",
"workday_absence_duration": 123,
"duration": 123,
"status": "<string>",
"canceld_date": "<string>",
"request_approvers": [
{
"reason": "<string>",
"status": "PENDING",
"status_changed_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"status_changed_date": "<string>",
"approver_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"predecessor_request_member_approver_id": "<string>"
}
],
"request_representative_approvers": [
{
"uuid": "<string>",
"reason": "<string>",
"status": "PENDING",
"status_changed_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"status_changed_date": "<string>",
"approver_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"replaced_to_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"replaced_after_decline": true
}
]
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Read a request by id
Read a request by id
curl --request GET \
--url https://api.absentify.com/api/v1/requests/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.absentify.com/api/v1/requests/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.absentify.com/api/v1/requests/{id}', 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.absentify.com/api/v1/requests/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$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.absentify.com/api/v1/requests/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
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.absentify.com/api/v1/requests/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.absentify.com/api/v1/requests/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>",
"end": "<string>",
"start": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_unit": "days",
"revision": 0,
"last_changed_at": "<string>",
"pending_change": {
"id": 0,
"revision": 0,
"kind": "reason",
"status": "pending",
"previous": {
"start": "<string>",
"end": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_type": {
"id": "<string>",
"name": "<string>"
},
"duration": 123,
"workday_absence_duration": 123,
"reason": "<string>"
},
"proposed": {
"start": "<string>",
"end": "<string>",
"start_at": "morning",
"end_at": "lunchtime",
"leave_type": {
"id": "<string>",
"name": "<string>"
},
"duration": 123,
"workday_absence_duration": 123,
"reason": "<string>"
},
"changed_by": {
"id": "<string>",
"name": "<string>"
},
"decided_by": {
"id": "<string>",
"name": "<string>"
},
"created_at": "<string>",
"decided_at": "<string>",
"decision_reason": "<string>"
},
"request_creator_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"leave_type": {
"name": "<string>",
"default_name": "<string>",
"id": "<string>",
"leave_unit": "days"
},
"approval_process": "Linear_all_have_to_agree",
"needs_approval": true,
"cancel_reason": "<string>",
"canceld_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"requester_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"take_from_allowance": true,
"allowance_type": {
"id": "<string>",
"name": "<string>",
"default_name": "<string>",
"ignore_allowance_limit": true,
"allowance_unit": "days"
},
"reason": "<string>",
"workday_absence_duration": 123,
"duration": 123,
"status": "<string>",
"canceld_date": "<string>",
"request_approvers": [
{
"reason": "<string>",
"status": "PENDING",
"status_changed_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"status_changed_date": "<string>",
"approver_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"predecessor_request_member_approver_id": "<string>"
}
],
"request_representative_approvers": [
{
"uuid": "<string>",
"reason": "<string>",
"status": "PENDING",
"status_changed_by_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"status_changed_date": "<string>",
"approver_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"replaced_to_member": {
"id": "<string>",
"custom_id": "<string>",
"name": "<string>",
"email": "<string>"
},
"replaced_after_decline": true
}
]
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Autorisierungen
Pfadparameter
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$Abfrageparameter
en, de, fr, hu, it, pl, pt, ru, es, tr, uk Antwort
Successful response
For day-based leave types: whether the absence starts in the morning (the whole first day counts) or afternoon (only the second half of the first day). Ignored for hour-based leave types.
morning, afternoon For day-based leave types: whether the absence ends at lunchtime (only the first half of the last day) or end_of_day (the whole last day counts). Ignored for hour-based leave types.
lunchtime, end_of_day The unit stored on this request. It governs duration and workday_absence_duration: day and half-day units use days; hour and minute units use minutes. It may differ from leave_type.leave_unit after the leave type changes.
days, half_days, hours, minutes_30, minutes_15, minutes_10, minutes_5, minutes_1 Counts the versions of the request. Starts at 1 and goes up with every applied change. A pending, declined or withdrawn change does not change it.
-9007199254740991 <= x <= 9007199254740991When the request was last changed, or null if it never was.
The change that waits for a decision on an approved request, or null. The request fields still show the approved version until the change is applied.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Linear_all_have_to_agree, Linear_one_has_to_agree, Parallel_all_have_to_agree, Parallel_one_has_to_agree, Parallel_first_response_decides Whether the request needed approval, as recorded when it was created. When false, the approver rows were approved automatically. Null for requests created before this was recorded.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
War diese Seite hilfreich?