{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}
Requests
Create recurring requests
Create multiple recurring requests based on a recurrence pattern. Note: half_day=‘morning’/‘afternoon’ requires a leave type with leave_unit ‘half_days’ — on a full-day-only ‘days’ leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.
Date/time in ISO 8601 format, e.g. 2026-06-01 (interpreted as UTC midnight) or 2026-06-01T09:00:00Z. Always include a time zone designator (Z for UTC) when sending a time of day. Localized formats such as 01.06.2026 or 06/01/2026 are misinterpreted and must not be used.
Date/time in ISO 8601 format, e.g. 2026-06-01 (interpreted as UTC midnight) or 2026-06-01T09:00:00Z. Always include a time zone designator (Z for UTC) when sending a time of day. Localized formats such as 01.06.2026 or 06/01/2026 are misinterpreted and must not be used.
Date/time in ISO 8601 format, e.g. 2026-06-01 (interpreted as UTC midnight) or 2026-06-01T09:00:00Z. Always include a time zone designator (Z for UTC) when sending a time of day. Localized formats such as 01.06.2026 or 06/01/2026 are misinterpreted and must not be used.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"absentify®","colors":{"primary":"#6264A7","light":"#B3B5FF","dark":"#3D3E66"},"logo":{"light":"https://mintcdn.com/absentify/iNrFvPmeOqKvrSdH/logo/light.svg?fit=max\u0026auto=format\u0026n=iNrFvPmeOqKvrSdH\u0026q=85\u0026s=90d1c401ab5c62a6ba4676540859a9cb","dark":"https://mintcdn.com/absentify/iNrFvPmeOqKvrSdH/logo/dark.svg?fit=max\u0026auto=format\u0026n=iNrFvPmeOqKvrSdH\u0026q=85\u0026s=adc309f6bccae886f6db6c9ef38882fc"},"favicon":"https://mintcdn.com/absentify/iNrFvPmeOqKvrSdH/favicon.svg?fit=max\u0026auto=format\u0026n=iNrFvPmeOqKvrSdH\u0026q=85\u0026s=ad25ce5ffa0f179bd8c41b56b3d6b421","appearance":{"default":"light"},"navbar":{"links":[{"href":"https://absentify.com","label":"Website"}],"primary":{"type":"button","label":"Start","href":"https://absentify.com"}},"footer":{"socials":{"x":"https://x.com/absentify_com","linkedin":"https://linkedin.com/company/absentify","youtube":"https://youtube.com/@absentify"}},"integrations":{},"contextual":{"options":["view","copy","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":"en/introduction"},{"language":"de","href":"de/introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"absentify","hasAudioNarration":false,"actualSubdomain":"absentify","customDomains":["absentify.com"],"gitSource":{"type":"github","owner":"absentify","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aea37cbedfac7d352719a8f","collectionId":"de10d2ac-4027-4da4-80f5-5677399d3820","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aea37cbedfac7d352719a8f"},"feedback":{"thumbs":true,"issues":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aed897007df4bd3291ba1ee","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"en","tag":"HR Admins","count":102},{"language":"de","tag":"Documentation","count":101},{"language":"en","tag":"Documentation","count":101},{"language":"de","tag":"API Reference","count":95},{"language":"en","tag":"API Reference","count":95},{"language":"de","tag":"HR Admins","count":51},{"language":"de","tag":"HR-Admins","count":51},{"language":"de","tag":"Einstellungen","count":46},{"language":"en","tag":"Settings","count":46},{"language":"en","tag":"Microsoft 365 Admins","count":44},{"language":"de","tag":"Allowance Management","count":28},{"language":"en","tag":"Allowance Management","count":28},{"language":"de","tag":"Mitarbeiter","count":24},{"language":"en","tag":"Employee","count":24},{"language":"de","tag":"Microsoft 365-Administratoren","count":22},{"language":"de","tag":"Microsoft 365-Admins","count":22},{"language":"de","tag":"Integrationen","count":17},{"language":"en","tag":"Integrations","count":17},{"language":"en","tag":"Users","count":17},{"language":"en","tag":"Requests","count":17}]},"assistantConfig":{"deflection":{"enabled":true,"email":"support@absentify.com"}},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".responsive-iframe{height:500px!important;width:100%!important;color-scheme:light}@media (max-width: 768px){.responsive-iframe{height:300px!important}}"}],"page":{"pagePath":"de/api-reference/requests/create-recurring-requests","slug":"/de/api-reference/requests/create-recurring-requests","pageMetadata":{"title":"Create recurring requests","description":"Create multiple recurring requests based on a recurrence pattern. Note: half_day='morning'/'afternoon' requires a leave type with leave_unit 'half_days' — on a full-day-only 'days' leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/recurring","href":"/de/api-reference/requests/create-recurring-requests","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create multiple recurring requests based on a recurrence pattern. Note: half_day=‘morning’/‘afternoon’ requires a leave type with leave_unit ‘half_days’ — on a full-day-only ‘days’ leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create recurring requests","description":"Create multiple recurring requests based on a recurrence pattern. Note: half_day='morning'/'afternoon' requires a leave type with leave_unit 'half_days' — on a full-day-only 'days' leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/recurring","href":"/de/api-reference/requests/create-recurring-requests","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/absentify/d9569a8dd2540708/crisp.js","/docs/_mintlify/custom/absentify/51984cdb7c392f11/posthog.js"],"openApiReferenceData":{"operation":{"operationId":"request-createRecurringRequests","summary":"Create recurring requests","description":"Create multiple recurring requests based on a recurrence pattern. Note: half_day='morning'/'afternoon' requires a leave type with leave_unit 'half_days' — on a full-day-only 'days' leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.","tags":["Requests"],"security":["c02496d0-727d-4056-a910-c9c7a8df3d23"],"parameters":[],"requestBody":"de243ee6-0865-47e8-ad08-170f66e405ee","responses":{"200":"361c34b4-59a0-473a-9ec6-1e450ac3c64c","400":"b953b409-b5ed-4477-b55f-a1381f5adb0a","401":"700c3177-86b5-4dbe-bcc9-1a5a37512915","403":"cc0e24ad-5182-499a-920b-270a6ff64e37","500":"123cbcf2-d175-4c16-98e2-6185c3ffc1f1"},"method":"post","type":"path","servers":["4789c0f3-b7a8-420e-be2b-58c21f293e61"],"path":"/requests/recurring","baseUrlOptions":["https://api.absentify.com/api/v1"],"title":"Create recurring requests","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"leave_type_id":{"type":"string","format":"uuid","pattern":"^([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})$","isRequired":true,"uniqueKey":"leave_type_id","typeLabel":"string\u003cuuid>"},"requester_member_id":{"type":"string","format":"uuid","pattern":"^([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})$","isRequired":true,"uniqueKey":"requester_member_id","typeLabel":"string\u003cuuid>"},"repeat":{"type":"string","enum":["daily","weekly","monthly"],"isRequired":true,"uniqueKey":"repeat","typeLabel":"enum\u003cstring>"},"interval":{"type":"integer","minimum":1,"maximum":100,"isRequired":true,"uniqueKey":"interval","typeLabel":"integer"},"from":{"description":"Date/time in ISO 8601 format, e.g. `2026-06-01` (interpreted as UTC midnight) or `2026-06-01T09:00:00Z`. Always include a time zone designator (`Z` for UTC) when sending a time of day. Localized formats such as `01.06.2026` or `06/01/2026` are misinterpreted and must not be used.","type":"string","isRequired":true,"uniqueKey":"from","typeLabel":"string"},"until":{"oneOf":[{"type":"string","description":"Date/time in ISO 8601 format, e.g. `2026-06-01` (interpreted as UTC midnight) or `2026-06-01T09:00:00Z`. Always include a time zone designator (`Z` for UTC) when sending a time of day. Localized formats such as `01.06.2026` or `06/01/2026` are misinterpreted and must not be used.","isRequired":true,"uniqueKey":"until.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"until.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"until","typeLabel":"string | null"},"count":{"oneOf":[{"type":"integer","maximum":365,"minimum":1,"isRequired":true,"uniqueKey":"count.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"count.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"count","typeLabel":"integer | null"},"weekDays":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"weekDays.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"weekDays.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"weekDays","typeLabel":"string | null"},"day":{"oneOf":[{"type":"integer","maximum":31,"minimum":1,"isRequired":true,"uniqueKey":"day.oneOf.0","typeLabel":"integer"},{"type":"string","isRequired":true,"uniqueKey":"day.oneOf.1","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"day.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"day","typeLabel":"integer | string | null"},"month":{"oneOf":[{"type":"integer","maximum":12,"minimum":1,"isRequired":true,"uniqueKey":"month.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"month.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"month","typeLabel":"integer | null"},"pos":{"oneOf":[{"type":"integer","maximum":5,"minimum":-1,"isRequired":true,"uniqueKey":"pos.oneOf.0","typeLabel":"integer"},{"type":"string","isRequired":true,"uniqueKey":"pos.oneOf.1","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"pos.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"pos","typeLabel":"integer | string | null"},"reason":{"type":"string","uniqueKey":"reason","typeLabel":"string"},"start_time":{"type":"object","properties":{"hour":{"type":"integer","minimum":0,"maximum":23,"isRequired":true,"uniqueKey":"start_time.hour","typeLabel":"integer"},"minute":{"type":"integer","minimum":0,"maximum":59,"isRequired":true,"uniqueKey":"start_time.minute","typeLabel":"integer"}},"required":["hour","minute"],"uniqueKey":"start_time","typeLabel":"object"},"end_time":{"type":"object","properties":{"hour":{"type":"integer","minimum":0,"maximum":23,"isRequired":true,"uniqueKey":"end_time.hour","typeLabel":"integer"},"minute":{"type":"integer","minimum":0,"maximum":59,"isRequired":true,"uniqueKey":"end_time.minute","typeLabel":"integer"}},"required":["hour","minute"],"uniqueKey":"end_time","typeLabel":"object"},"half_day":{"type":"string","enum":["full_day","morning","afternoon"],"uniqueKey":"half_day","typeLabel":"enum\u003cstring>"},"exDates":{"type":"array","items":{"description":"Date/time in ISO 8601 format, e.g. `2026-06-01` (interpreted as UTC midnight) or `2026-06-01T09:00:00Z`. Always include a time zone designator (`Z` for UTC) when sending a time of day. Localized formats such as `01.06.2026` or `06/01/2026` are misinterpreted and must not be used.","type":"string","uniqueKey":"exDates.items.[INDEX]","typeLabel":"string"},"uniqueKey":"exDates","typeLabel":"string[]"},"files":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([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})$","uniqueKey":"files.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"files","typeLabel":"string\u003cuuid>[]"},"representative_member_ids":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([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})$","uniqueKey":"representative_member_ids.items.[INDEX]","typeLabel":"string\u003cuuid>"},"uniqueKey":"representative_member_ids","typeLabel":"string\u003cuuid>[]"},"ignoreMaximumAbsence":{"type":"boolean","uniqueKey":"ignoreMaximumAbsence","typeLabel":"boolean"},"admin_approval_option":{"type":"string","enum":["approve_request_immediately","go_through_the_normal_approval_process"],"uniqueKey":"admin_approval_option","typeLabel":"enum\u003cstring>"}},"required":["leave_type_id","requester_member_id","repeat","interval","from","until","count","weekDays","day","month","pos"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"leave_type_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requester_member_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","interval":50,"from":"\u003cstring>","until":"\u003cstring>","count":183,"weekDays":"\u003cstring>","day":16,"month":6,"pos":2,"reason":"\u003cstring>","exDates":["\u003cstring>"],"files":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"representative_member_ids":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"ignoreMaximumAbsence":true}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"361c34b4-59a0-473a-9ec6-1e450ac3c64c":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"created":{"type":"number","isRequired":true,"uniqueKey":"created","typeLabel":"number"},"requestIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([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})$","uniqueKey":"requestIds.items.[INDEX]","typeLabel":"string\u003cuuid>"},"isRequired":true,"uniqueKey":"requestIds","typeLabel":"string\u003cuuid>[]"},"recurrenceId":{"type":"string","isRequired":true,"uniqueKey":"recurrenceId","typeLabel":"string"}},"required":["created","requestIds","recurrenceId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"created":123,"requestIds":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"recurrenceId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"b953b409-b5ed-4477-b55f-a1381f5adb0a":{"description":"Invalid input data","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"The error message","example":"Invalid input data","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"The error code","example":"BAD_REQUEST","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"issues":{"description":"An array of issues that were responsible for the error","example":[],"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"}},"required":["message"],"additionalProperties":false,"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information","example":{"code":"BAD_REQUEST","message":"Invalid input data","issues":[]},"uniqueKey":"","typeLabel":"Invalid input data error (400) · object"},"examples":{"Example":{"title":"Example","value":{"code":"BAD_REQUEST","message":"Invalid input data","issues":[]}}},"exampleType":"generated"}},"exampleType":"generated"},"700c3177-86b5-4dbe-bcc9-1a5a37512915":{"description":"Authorization not provided","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"The error message","example":"Authorization not provided","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"The error code","example":"UNAUTHORIZED","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"issues":{"description":"An array of issues that were responsible for the error","example":[],"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"}},"required":["message"],"additionalProperties":false,"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"required":["message","code"],"additionalProperties":false,"title":"Authorization not provided error (401)","description":"The error information","example":{"code":"UNAUTHORIZED","message":"Authorization not provided","issues":[]},"uniqueKey":"","typeLabel":"Authorization not provided error (401) · object"},"examples":{"Example":{"title":"Example","value":{"code":"UNAUTHORIZED","message":"Authorization not provided","issues":[]}}},"exampleType":"generated"}},"exampleType":"generated"},"cc0e24ad-5182-499a-920b-270a6ff64e37":{"description":"Insufficient access","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"The error message","example":"Insufficient access","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"The error code","example":"FORBIDDEN","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"issues":{"description":"An array of issues that were responsible for the error","example":[],"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"}},"required":["message"],"additionalProperties":false,"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"required":["message","code"],"additionalProperties":false,"title":"Insufficient access error (403)","description":"The error information","example":{"code":"FORBIDDEN","message":"Insufficient access","issues":[]},"uniqueKey":"","typeLabel":"Insufficient access error (403) · object"},"examples":{"Example":{"title":"Example","value":{"code":"FORBIDDEN","message":"Insufficient access","issues":[]}}},"exampleType":"generated"}},"exampleType":"generated"},"123cbcf2-d175-4c16-98e2-6185c3ffc1f1":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"The error message","example":"Internal server error","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"code":{"type":"string","description":"The error code","example":"INTERNAL_SERVER_ERROR","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"issues":{"description":"An array of issues that were responsible for the error","example":[],"type":"array","items":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"}},"required":["message"],"additionalProperties":false,"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information","example":{"code":"INTERNAL_SERVER_ERROR","message":"Internal server error","issues":[]},"uniqueKey":"","typeLabel":"Internal server error error (500) · object"},"examples":{"Example":{"title":"Example","value":{"code":"INTERNAL_SERVER_ERROR","message":"Internal server error","issues":[]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"c02496d0-727d-4056-a910-c9c7a8df3d23":{"ApiKey":{"type":"apiKey","name":"X-API-KEY","in":"header","scopes":[],"schemeName":"ApiKey"}}},"servers":{"4789c0f3-b7a8-420e-be2b-58c21f293e61":{"url":"https://api.absentify.com/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","name":"X-API-KEY","in":"header","scopes":[],"schemeName":"ApiKey"},"schema":{"title":"X-API-KEY","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKey","name":"X-API-KEY"}],"title":"ApiKey"}]},"originalFileLocation":"https://api.absentify.com/api/v1/openapi.json"},"subdomain":"absentify","siteName":"absentify®","title":"Create recurring requests - absentify®","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/en/api-reference/requests/create-recurring-requests","matchLevel":1},"de":{"href":"/de/api-reference/requests/create-recurring-requests","matchLevel":0}}},"lastModified":"2026-11-06T07:52:15.478Z","originalFileLocation":"de/api-reference/requests/create-recurring-requests.mdx","locale":"de"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create multiple recurring requests based on a recurrence pattern. Note: half_day=\u0026#x27;morning\u0026#x27;/\u0026#x27;afternoon\u0026#x27; requires a leave type with leave_unit \u0026#x27;half_days\u0026#x27; — on a full-day-only \u0026#x27;days\u0026#x27; leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\">\u003cmeta data-mint-head name=\"application-name\" content=\"absentify®\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create recurring requests - absentify®\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create multiple recurring requests based on a recurrence pattern. Note: half_day=\u0026#x27;morning\u0026#x27;/\u0026#x27;afternoon\u0026#x27; requires a leave type with leave_unit \u0026#x27;half_days\u0026#x27; — on a full-day-only \u0026#x27;days\u0026#x27; leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"absentify®\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://absentify.mintlify.site/docs/_mintlify/api/og/v2?division=Requests\u0026amp;title=Create+recurring+requests\u0026amp;description=Create+multiple+recurring+requests+based+on+a+recurrence+pattern.+Note%3A+half_day%3D%27morning%27%2F%27afternoon%27+requires+a+leave+type+with+leave_unit+%27half_days%27+%E2%80%94+on+a+\u0026amp;theme=432f40b01025e6009f4d3383\u0026amp;signature=380ea283a53ee5c830c60e945c375331cdc1666568e2681e9cc9668382d4413d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create recurring requests - absentify®\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create multiple recurring requests based on a recurrence pattern. Note: half_day=\u0026#x27;morning\u0026#x27;/\u0026#x27;afternoon\u0026#x27; requires a leave type with leave_unit \u0026#x27;half_days\u0026#x27; — on a full-day-only \u0026#x27;days\u0026#x27; leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://absentify.mintlify.site/docs/_mintlify/api/og/v2?division=Requests\u0026amp;title=Create+recurring+requests\u0026amp;description=Create+multiple+recurring+requests+based+on+a+recurrence+pattern.+Note%3A+half_day%3D%27morning%27%2F%27afternoon%27+requires+a+leave+type+with+leave_unit+%27half_days%27+%E2%80%94+on+a+\u0026amp;theme=432f40b01025e6009f4d3383\u0026amp;signature=380ea283a53ee5c830c60e945c375331cdc1666568e2681e9cc9668382d4413d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/absentify/gKgFKKaR3jLynfl2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"absentify®\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6264A7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/de/api-reference/requests/create-recurring-requests.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://absentify.com/docs/en/api-reference/requests/create-recurring-requests\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://absentify.com/docs/en/api-reference/requests/create-recurring-requests\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://absentify.com/#organization\",\"name\":\"absentify®\",\"url\":\"https://absentify.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/absentify/iNrFvPmeOqKvrSdH/logo/light.svg?fit=max\u0026auto=format\u0026n=iNrFvPmeOqKvrSdH\u0026q=85\u0026s=90d1c401ab5c62a6ba4676540859a9cb\"}},{\"@type\":\"WebSite\",\"@id\":\"https://absentify.com/docs#website\",\"name\":\"absentify®\",\"url\":\"https://absentify.com/docs\",\"publisher\":{\"@id\":\"https://absentify.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests#webpage\",\"url\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\",\"name\":\"Create recurring requests\",\"description\":\"Create multiple recurring requests based on a recurrence pattern. Note: half_day='morning'/'afternoon' requires a leave type with leave_unit 'half_days' — on a full-day-only 'days' leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\",\"dateModified\":\"2026-11-06T07:52:15.478Z\",\"isPartOf\":{\"@id\":\"https://absentify.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Requests\",\"item\":\"https://absentify.com/docs/de/api-reference/requests/get-all-requests\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create recurring requests\",\"item\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests#apireference\",\"headline\":\"Create recurring requests\",\"name\":\"Create recurring requests\",\"description\":\"Create multiple recurring requests based on a recurrence pattern. Note: half_day='morning'/'afternoon' requires a leave type with leave_unit 'half_days' — on a full-day-only 'days' leave type it is rejected. Employment period: the series is created all-or-nothing, so a single occurrence that starts before employment_start_date or ends after employment_end_date rejects the whole series with 400 rather than skipping that occurrence. An occurrence straddling either boundary is rejected too, never truncated. The comparison is on calendar days, so both boundary dates are themselves bookable and a null boundary means open ended on that side.\",\"url\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests\",\"mainEntityOfPage\":{\"@id\":\"https://absentify.com/docs/de/api-reference/requests/create-recurring-requests#webpage\"},\"dateModified\":\"2026-11-06T07:52:15.478Z\",\"publisher\":{\"@id\":\"https://absentify.com/#organization\"},\"isPartOf\":{\"@id\":\"https://absentify.com/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"absentify®\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"absentify®","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/en/api-reference/requests/create-recurring-requests"}]},{"language":"de","anchors":[{"anchor":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/de/introduction"}]},{"anchor":"Changelog","icon":"clock-rotate-left","pages":[{"title":"Changelog","href":"/de/changelog"}]},{"anchor":"Website","icon":"globe","href":"https://absentify.com"},{"anchor":"Help","icon":"comment-question","href":"mailto:support@absentify.com"},{"anchor":"Blog","icon":"newspaper","href":"https://absentify.com/blog"},{"anchor":"API Reference","icon":"square-terminal","tabs":[{"tab":"Developers","groups":[{"group":"Developers","pages":[{"title":"Einführung in die REST API","sidebarTitle":"Einführung","href":"/de/api-reference/introduction"},{"title":"Schnellstart","sidebarTitle":"Schnellstart","href":"/de/api-reference/quick_start"},{"title":"MCP Server","sidebarTitle":"MCP Server","href":"/de/api-reference/mcp_server"},{"title":"Authentifizierung","sidebarTitle":"Authentifizierung","href":"/de/api-reference/authentication"},{"title":"API-Limits","sidebarTitle":"API-Limits","href":"/de/api-reference/limits"},{"title":"API-Antworten","sidebarTitle":"Antworten","href":"/de/api-reference/responses"},{"title":"Webhook-Integration","sidebarTitle":"Webhooks","href":"/de/api-reference/webhooks"},{"title":"Exporte","sidebarTitle":"Exporte","href":"/de/api-reference/exports"}]}]}],"groups":[{"group":"Members","pages":[{"title":"Get all members","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members","href":"/de/api-reference/members/get-all-members"},{"title":"Invite a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members","href":"/de/api-reference/members/invite-a-member"},{"title":"Read a member by id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{id}","href":"/de/api-reference/members/read-a-member-by-id"},{"title":"Update a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{id}","href":"/de/api-reference/members/update-a-member"},{"title":"Delete a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /members/{id}","href":"/de/api-reference/members/delete-a-member"},{"title":"Read a member by Microsoft user id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/microsoft/{microsoft_user_id}","href":"/de/api-reference/members/read-a-member-by-microsoft-user-id"},{"title":"Read a member by email","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/email/{email}","href":"/de/api-reference/members/read-a-member-by-email"},{"title":"Read a member by custom_id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/custom_id/{custom_id}","href":"/de/api-reference/members/read-a-member-by-custom_id"},{"title":"Update approvers for a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{id}/approvers","href":"/de/api-reference/members/update-approvers-for-a-member"},{"title":"Update a member's allowance (deprecated)","deprecated":true,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{id}/allowance/{allowance_type_id}/{year}","href":"/de/api-reference/members/update-a-members-allowance-deprecated"},{"title":"Set a member's default and hidden allowance types","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{member_id}/allowance-type-configurations/{allowance_type_id}","href":"/de/api-reference/members/set-a-members-default-and-hidden-allowance-types"},{"title":"Add a member's schedule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members/{id}/schedule","href":"/de/api-reference/members/add-a-members-schedule"},{"title":"Update a member's schedule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{member_id}/schedule/{id}","href":"/de/api-reference/members/update-a-members-schedule"},{"title":"Get a member's representative settings and list","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{id}/representatives","href":"/de/api-reference/members/get-a-members-representative-settings-and-list"},{"title":"Update representatives for a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{id}/representatives","href":"/de/api-reference/members/update-representatives-for-a-member"}]},{"group":"Departments","pages":[{"title":"Get all departments","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /departments","href":"/de/api-reference/departments/get-all-departments"},{"title":"Create a department","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /departments","href":"/de/api-reference/departments/create-a-department"},{"title":"Read a department by id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /departments/{id}","href":"/de/api-reference/departments/read-a-department-by-id"},{"title":"Update a department","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /departments/{id}","href":"/de/api-reference/departments/update-a-department"},{"title":"Delete a department","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /departments/{id}","href":"/de/api-reference/departments/delete-a-department"}]},{"group":"Leave types","pages":[{"title":"Get all leave types","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /leave_types","href":"/de/api-reference/leave-types/get-all-leave-types"},{"title":"Create a leave type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /leave_types","href":"/de/api-reference/leave-types/create-a-leave-type"},{"title":"Read a leave type by id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /leave_types/{id}","href":"/de/api-reference/leave-types/read-a-leave-type-by-id"},{"title":"Update a leave type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /leave_types/{id}","href":"/de/api-reference/leave-types/update-a-leave-type"},{"title":"Delete a leave type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /leave_types/{id}","href":"/de/api-reference/leave-types/delete-a-leave-type"},{"title":"Restore an archived leave type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /leave_types/{id}/restore","href":"/de/api-reference/leave-types/restore-an-archived-leave-type"}]},{"group":"Workspace","pages":[{"title":"Get current workspace settings","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /workspace","href":"/de/api-reference/workspace/get-current-workspace-settings"},{"title":"Update the workspace settings","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /workspace","href":"/de/api-reference/workspace/update-the-workspace-settings"}]},{"group":"Public holidays","pages":[{"title":"Get all public holidays","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /public_holidays","href":"/de/api-reference/public-holidays/get-all-public-holidays"},{"title":"Read a public holiday by id","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /public_holidays/{id}","href":"/de/api-reference/public-holidays/read-a-public-holiday-by-id"}]},{"group":"Requests","pages":[{"title":"Get all requests","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /requests","href":"/de/api-reference/requests/get-all-requests"},{"title":"Create a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests","href":"/de/api-reference/requests/create-a-request"},{"title":"Get all requests per day","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /requests_per_day","href":"/de/api-reference/requests/get-all-requests-per-day"},{"title":"Read a request by id","description":"Read a request by id.\n\n`duration` and `workday_absence_duration` are computed at the time of the call, from the member's current schedule and holiday calendar.","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /requests/{id}","href":"/de/api-reference/requests/read-a-request-by-id"},{"title":"Create recurring requests","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/recurring","href":"/de/api-reference/requests/create-recurring-requests"},{"title":"Preview a request (dry run)","description":"Answer what POST /requests would do with this payload without creating anything: the counted duration, its split by fiscal year, whether the member's allowance covers it, the existing requests it would collide with, and a single `can_create` verdict.\n\n**Input:** identical to POST /requests, so one payload can be sent to both URLs. `reason`, `representative_member_ids` and `ignoreRepresentativeRequirement` are evaluated exactly as on create.\n\n**Duration:** `duration.workday_absence_duration` uses the same days-vs-minutes rule as `workday_absence_duration` on GET /requests (days for day and half-day leave units, minutes for hour units); preview and created request always agree. For day-based leave types the time of day in `start` / `end` is ignored, exactly as on create.\n\n**Allowance:** `is_allowance_sufficient: false` means POST /requests with this payload fails with the allowance error; `true` means it passes that check. Leave types that do not deduct return `takes_from_allowance: false`, `allowance_type: null` and `is_allowance_sufficient: true`.\n\n**Conflicts:** `conflicts` lists the member's existing requests that overlap this absence and would block creation. Every leave type counts, including informational ones such as home office; only declined or cancelled requests are ignored.\n\n**Rejection:** the preview runs the same validations as POST /requests, in the same order, with one difference: an overlapping request is not a rejection but goes to `conflicts`, so where POST /requests would stop with the overlap error the preview keeps going and may name a later rule in `rejection` while the overlap sits in `conflicts`. When a rule fails, the response is still 200 with `rejection` set instead of a 400, and `can_create` is false. Match on `rejection.code`: START_AFTER_END, HALF_DAY_NOT_ALLOWED_FOR_FULL_DAY_LEAVE_TYPE, LEAVE_TYPE_DISABLED (disabled for this member), REASON_REQUIRED, REASON_TOO_LONG, OUTSIDE_FISCAL_YEAR_WINDOW, PAST_DATE_NOT_ALLOWED (manager or self-service retroactive limits), OUTSIDE_EMPLOYMENT_PERIOD, REPRESENTATIVE_CONFLICT (the member is someone else's accepted representative in that period), MAX_ABSENT_REACHED (department limit), NO_APPROVER_SET (the leave type needs approval and the member has no approver), REPRESENTATIVES_INVALID, REQUIRED_REPRESENTATIVES_COUNT_NOT_MET. Permission and scoping failures stay real 403 / 404 responses.\n\n**Verdict:** `can_create` is true only when `rejection` is null, `conflicts` is empty and the allowance covers the absence. It is the one field to gate a create call on.\n\n**Side effects:** no request, approver, notification, webhook or calendar sync entry is created. Safe to repeat; each call evaluates the data as it is at that moment.","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/preview","href":"/de/api-reference/requests/preview-a-request-dry-run"},{"title":"Preview recurring requests (dry run)","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/recurring/preview","href":"/de/api-reference/requests/preview-recurring-requests-dry-run"},{"title":"Approve a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/approve","href":"/de/api-reference/requests/approve-a-request"},{"title":"Decline a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/decline","href":"/de/api-reference/requests/decline-a-request"},{"title":"Approve a request as a representative","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/approve_representative","href":"/de/api-reference/requests/approve-a-request-as-a-representative"},{"title":"Decline a request as a representative","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/decline_representative","href":"/de/api-reference/requests/decline-a-request-as-a-representative"},{"title":"Cancel a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/cancel","href":"/de/api-reference/requests/cancel-a-request"},{"title":"List the changes of a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /requests/{id}/changes","href":"/de/api-reference/requests/list-the-changes-of-a-request"},{"title":"Change a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/changes","href":"/de/api-reference/requests/change-a-request"},{"title":"Approve a change of a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/changes/{changeId}/approve","href":"/de/api-reference/requests/approve-a-change-of-a-request"},{"title":"Decline a change of a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/changes/{changeId}/decline","href":"/de/api-reference/requests/decline-a-change-of-a-request"},{"title":"Withdraw a change of a request","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /requests/{id}/changes/{changeId}/withdraw","href":"/de/api-reference/requests/withdraw-a-change-of-a-request"}]},{"group":"Absences","pages":[{"title":"Get all requests and public holiday per member per day","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /absences_per_day","href":"/de/api-reference/absences/get-all-requests-and-public-holiday-per-member-per-day"}]},{"group":"Allowance Management","pages":[{"title":"List all rules for an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /allowance-types/{allowance_type_id}/rules","href":"/de/api-reference/allowance-management/list-all-rules-for-an-allowance-type"},{"title":"Create a new allowance rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /allowance-types/{allowance_type_id}/rules","href":"/de/api-reference/allowance-management/create-a-new-allowance-rule"},{"title":"Delete an allowance rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /rules/{id}","href":"/de/api-reference/allowance-management/delete-an-allowance-rule"},{"title":"Update an allowance rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json patch /rules/{id}","href":"/de/api-reference/allowance-management/update-an-allowance-rule"},{"title":"List rule assignments for a member","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/rule-assignments","href":"/de/api-reference/allowance-management/list-rule-assignments-for-a-member"},{"title":"Assign a member to an allowance rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members/{member_id}/rule-assignments","href":"/de/api-reference/allowance-management/assign-a-member-to-an-allowance-rule"},{"title":"Remove a member from an allowance rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /rule-assignments/{id}","href":"/de/api-reference/allowance-management/remove-a-member-from-an-allowance-rule"},{"title":"Update a rule assignment","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json patch /rule-assignments/{id}","href":"/de/api-reference/allowance-management/update-a-rule-assignment"},{"title":"List a member's allowance adjustments","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/adjustments","href":"/de/api-reference/allowance-management/list-a-members-allowance-adjustments"},{"title":"Create an allowance adjustment","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members/{member_id}/adjustments","href":"/de/api-reference/allowance-management/create-an-allowance-adjustment"},{"title":"Delete an allowance adjustment","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /adjustments/{id}","href":"/de/api-reference/allowance-management/delete-an-allowance-adjustment"},{"title":"Set the organisation default rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /allowance-types/{allowance_type_id}/default-rule","href":"/de/api-reference/allowance-management/set-the-organisation-default-rule"},{"title":"Move a member to another rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members/{member_id}/rule-change","href":"/de/api-reference/allowance-management/move-a-member-to-another-rule"},{"title":"Switch a member to manual allowance management","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /members/{member_id}/manual-rule","href":"/de/api-reference/allowance-management/switch-a-member-to-manual-allowance-management"},{"title":"List the members currently on a rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /rules/{rule_id}/members","href":"/de/api-reference/allowance-management/list-the-members-currently-on-a-rule"},{"title":"Read the audit log of a rule","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /rules/{rule_id}/audit-log","href":"/de/api-reference/allowance-management/read-the-audit-log-of-a-rule"},{"title":"Read the audit log of an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /allowance-types/{allowance_type_id}/audit-log","href":"/de/api-reference/allowance-management/read-the-audit-log-of-an-allowance-type"},{"title":"Read a member's rule history","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/rule-audit-log","href":"/de/api-reference/allowance-management/read-a-members-rule-history"},{"title":"List all allowance types","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /allowance-types","href":"/de/api-reference/allowance-management/list-all-allowance-types"},{"title":"Create an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /allowance-types","href":"/de/api-reference/allowance-management/create-an-allowance-type"},{"title":"Read an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /allowance-types/{id}","href":"/de/api-reference/allowance-management/read-an-allowance-type"},{"title":"Delete an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /allowance-types/{id}","href":"/de/api-reference/allowance-management/delete-an-allowance-type"},{"title":"Update an allowance type","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json patch /allowance-types/{id}","href":"/de/api-reference/allowance-management/update-an-allowance-type"},{"title":"Reorder the allowance types","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /allowance-types/reorder","href":"/de/api-reference/allowance-management/reorder-the-allowance-types"},{"title":"List a member's allowances","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/allowances","href":"/de/api-reference/allowance-management/list-a-members-allowances"},{"title":"Read a member's allowance history","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/allowance-audit-log","href":"/de/api-reference/allowance-management/read-a-members-allowance-history"},{"title":"Explain one year of a member's allowance","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/allowance-breakdown","href":"/de/api-reference/allowance-management/explain-one-year-of-a-members-allowance"},{"title":"Let the carry-over be computed again","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /allowances/{id}/revert-carryover-override","href":"/de/api-reference/allowance-management/let-the-carry-over-be-computed-again"}]},{"group":"Out of office","pages":[{"title":"Get a member's out of office settings","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /members/{member_id}/out-of-office-settings","href":"/de/api-reference/out-of-office/get-a-members-out-of-office-settings"},{"title":"Create or update a member's out of office message","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json put /members/{member_id}/out-of-office-settings/{leave_type_id}","href":"/de/api-reference/out-of-office/create-or-update-a-members-out-of-office-message"},{"title":"Delete a member's out of office message","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json delete /members/{member_id}/out-of-office-settings/{leave_type_id}","href":"/de/api-reference/out-of-office/delete-a-members-out-of-office-message"}]},{"group":"Exports","pages":[{"title":"Start an export","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /exports","href":"/de/api-reference/exports/start-an-export"},{"title":"Get the file of an export","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /exports/{id}/file","href":"/de/api-reference/exports/get-the-file-of-an-export"}]},{"group":"Overtime","pages":[{"title":"List overtime entries","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /overtime-entries","href":"/de/api-reference/overtime/list-overtime-entries"},{"title":"Log overtime","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /overtime-entries","href":"/de/api-reference/overtime/log-overtime"},{"title":"Get an overtime entry","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json get /overtime-entries/{id}","href":"/de/api-reference/overtime/get-an-overtime-entry"},{"title":"Approve an overtime entry","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /overtime-entries/{id}/approve","href":"/de/api-reference/overtime/approve-an-overtime-entry"},{"title":"Decline an overtime entry","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /overtime-entries/{id}/decline","href":"/de/api-reference/overtime/decline-an-overtime-entry"},{"title":"Cancel an overtime entry","deprecated":null,"version":null,"openapi":"https://api.absentify.com/api/v1/openapi.json post /overtime-entries/{id}/cancel","href":"/de/api-reference/overtime/cancel-an-overtime-entry"}]}]}]}]},"basePath":"","title":"Create recurring requests - absentify®","buildId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","deploymentId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CNqlzjVB.js","utils-BqFiXZ79.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CnR4QBe6.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BY2ZM1OO.js","snippetPresets-x-8ACO8V.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Ch-SJE05.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CqqG_0NE.js","shallow-BXrZ2b0C.js","getApiPlaygroundDisplay-n7J_wkjq.js","CodeSnippet-CQsp4vyQ.js","CodeSnippets-BfuHqvZx.js","Page-CTxrMSpo.js","getPastedJson-BjrGIK1i.js","icon-7iLZnVOC.js","MethodPill-TBS1m84e.js","DuplicateIcon-BNMrV4Vs.js","createIcon-C5kCqeU2.js","DynamicMarkdown-Bq09mRwR.js","SectionHeading-G4Bflf5Q.js","axios-vUo_bRtp.js","Markdown-BTUds0aX.js","clsx-6wHzaN2_.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BPypQKlo.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-o6bee4ro.js"]}