curl --request GET \
--url https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown"
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/members/{member_id}/allowance-breakdown', 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/members/{member_id}/allowance-breakdown",
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/members/{member_id}/allowance-breakdown"
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/members/{member_id}/allowance-breakdown")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown")
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{
"legacy_unmigrated": true,
"no_allowance_for_year": true,
"member_allowance_id": "<string>",
"fiscal_year_start_month": 0,
"active_rule": {
"name": "<string>",
"amount": 123,
"cycle": "<string>"
},
"allowance": 123,
"raw_allowance": 123,
"rounding_increment": 123,
"rounding_mode": "increment",
"rounding_delta": 123,
"adjustments": 123,
"brought_forward": 123,
"overwrite_brought_forward": true,
"taken": 123,
"remaining": 123,
"will_expire": 123,
"expired": 123,
"expiration": 123,
"carry_forward_deadline": "<string>",
"next_credit_expiry": "<string>",
"credit_expiration_past": 123,
"credit_expiration_future": 123,
"monthly_accruals": [
{
"month": 0,
"amount": 123,
"earned": true,
"ruleName": "<string>"
}
],
"carry_forward_detail": {
"previous_remaining": 123,
"carried": 123,
"expired": 123,
"deadline": "<string>",
"expiry_months": 123,
"max_carry_forward": 123,
"kept_after_expiry": 123,
"computed_carried": 123
},
"deductions": [
{
"date": "<string>",
"amount": 123,
"request_id": "<string>",
"leave_type_id": "<string>",
"leave_type_name": "<string>",
"request_start": "<string>",
"request_end": "<string>"
}
],
"adjustment_details": [
{
"id": 123,
"amount": 123,
"date": "<string>",
"expiry_date": "<string>",
"comment": "<string>",
"is_expired": true,
"is_overtime": true,
"created_by": {
"name": "<string>",
"email": "<string>"
}
}
]
}{
"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": []
}Explain one year of a member's allowance
How the figures of one fiscal year came about: which rule was active, what accrued month by month, what was carried over, what expired and what was booked. This is the calculation the app shows in the ledger.
curl --request GET \
--url https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown"
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/members/{member_id}/allowance-breakdown', 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/members/{member_id}/allowance-breakdown",
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/members/{member_id}/allowance-breakdown"
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/members/{member_id}/allowance-breakdown")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.absentify.com/api/v1/members/{member_id}/allowance-breakdown")
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{
"legacy_unmigrated": true,
"no_allowance_for_year": true,
"member_allowance_id": "<string>",
"fiscal_year_start_month": 0,
"active_rule": {
"name": "<string>",
"amount": 123,
"cycle": "<string>"
},
"allowance": 123,
"raw_allowance": 123,
"rounding_increment": 123,
"rounding_mode": "increment",
"rounding_delta": 123,
"adjustments": 123,
"brought_forward": 123,
"overwrite_brought_forward": true,
"taken": 123,
"remaining": 123,
"will_expire": 123,
"expired": 123,
"expiration": 123,
"carry_forward_deadline": "<string>",
"next_credit_expiry": "<string>",
"credit_expiration_past": 123,
"credit_expiration_future": 123,
"monthly_accruals": [
{
"month": 0,
"amount": 123,
"earned": true,
"ruleName": "<string>"
}
],
"carry_forward_detail": {
"previous_remaining": 123,
"carried": 123,
"expired": 123,
"deadline": "<string>",
"expiry_months": 123,
"max_carry_forward": 123,
"kept_after_expiry": 123,
"computed_carried": 123
},
"deductions": [
{
"date": "<string>",
"amount": 123,
"request_id": "<string>",
"leave_type_id": "<string>",
"leave_type_name": "<string>",
"request_start": "<string>",
"request_end": "<string>"
}
],
"adjustment_details": [
{
"id": 123,
"amount": 123,
"date": "<string>",
"expiry_date": "<string>",
"comment": "<string>",
"is_expired": true,
"is_overtime": true,
"created_by": {
"name": "<string>",
"email": "<string>"
}
}
]
}{
"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
^([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})$The fiscal year to explain.
-9007199254740991 <= x <= 9007199254740991en, de, fr, hu, it, pl, pt, ru, es, tr, uk Antwort
Successful response
True when this member has not been moved to the rules engine yet. Every other field is then null or empty: there is no rule-based breakdown to report.
True when the member has no allowance of this type in this year at all, for instance because no rule ever covered it. Every other field is then null or empty.
The id to pass to POST /allowances/{id}/revert-carryover-override.
0 = January, matching the workspace setting.
-9007199254740991 <= x <= 9007199254740991The rule that governed this year, if any.
Show child attributes
Show child attributes
The rule-granted entitlement after rounding.
The same figure before rounding.
What the entitlement was rounded up to, e.g. 0.5 days.
How the entitlement is rounded: up to rounding_increment, or a fraction of half a day or more up to a full day.
increment, half_day_threshold How much the rounding added: allowance minus raw_allowance.
The manual adjustments of this year.
The next day on which part of the balance expires.
Already expired out of the dated credits.
Still to expire out of them, later this year.
Empty when the year accrued in one go rather than per month.
Show child attributes
Show child attributes
Null for the member's first year, which carries nothing over.
Show child attributes
Show child attributes
What was booked out of this year, oldest first.
Show child attributes
Show child attributes
The individual adjustments that make up adjustments.
Show child attributes
Show child attributes
War diese Seite hilfreich?