> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kombo.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Create absence

> Create a new absence.

<Accordion title="Supported integrations" icon="list-check">
  This feature is currently available for the following integrations:

  <ul>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/personio/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/personio">Personio</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/successfactors/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/successfactors">SAP SuccessFactors</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/factorial/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/factorial">Factorial</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/bamboohr/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/bamboohr">BambooHR</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/hibob/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/hibob">HiBob</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/deel/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/deel">Deel</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/sesamehr/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/sesamehr">Sesame HR</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/hrworks/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/hrworks">HR WORKS</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/alexishr/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/alexishr">AlexisHR</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/simployer/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/simployer">Simployer</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/paycor/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/paycor">Paycor</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/absenceio/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/absenceio">Absence.io</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/a3innuvanomina/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/a3innuvanomina">a3innuva Nómina</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/datev/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/datev">DATEV LODAS</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/datevlug/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/datevlug">DATEV Lohn & Gehalt</a></li>
    <li class="flex items-center"><img src="https://storage.googleapis.com/kombo-assets/integrations/sandbox/icon.svg" height="16px" width="16px" class="m-0 mr-2" /><a href="/hris/connectors/sandbox">Kombo Sandbox</a></li>
  </ul>

  You'd like to see this feature for another integration? Please reach out!
  We're always happy to discuss extending our coverage.
</Accordion>

Check [this page](/hris/features/creating-absences) for a detailed guide.

<Note>
  This endpoint requires the permission **Manage absences** to be enabled in [your scope config](/scopes).
</Note>

### Example Request Body

```json theme={null}
{
  "employee_id": "wXJMxwDvPAjrJ4CyqdV9",
  "absence_type_id": "3YKtQ7qedsrcCady1jSyAkY1",
  "start_date": "2019-09-17",
  "end_date": "2019-09-21",
  "start_time": "08:30:00",
  "end_time": "16:00:00",
  "start_half_day": false,
  "end_half_day": false,
  "employee_note": "Visiting the aliens"
}
```


## OpenAPI

````yaml POST /hris/absences
openapi: 3.1.0
info:
  title: Kombo API
  version: 1.0.0
servers:
  - url: https://api.kombo.dev/v1
    description: Kombo EU API
  - url: https://api.us.kombo.dev/v1
    description: Kombo US API
security:
  - ApiKey: []
tags:
  - name: General
  - name: Kombo Connect
    description: >-
      Endpoints for Kombo Connect, our end-user-facing flow for setting up new
      integrations.
  - name: Unified HRIS API
    description: Unified endpoints to access all the HR concepts you might need.
  - name: Unified ATS API
    description: Unified endpoints to access all the ATS concepts you might need.
  - name: Unified ATS (Assessment & Background Check) API
    description: >-
      Unified endpoints to operate Assessments and Background Checks for many
      applicant tracking systems.
  - name: Unified LMS API
    description: Unified endpoints to access all the LMS concepts you might need.
  - name: AI Apply
    description: Endpoints for AI-powered job application features.
  - name: Custom Endpoints
    description: Custom integration-specific endpoints.
paths:
  /hris/absences:
    post:
      tags:
        - Unified HRIS API
      summary: Create absence
      description: >-
        Create a new absence.


        <Accordion title="Supported integrations" icon="list-check">

        This feature is currently available for the following integrations:


        <ul>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/personio/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/personio">Personio</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/successfactors/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/successfactors">SAP SuccessFactors</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/factorial/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/factorial">Factorial</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/bamboohr/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/bamboohr">BambooHR</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/hibob/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/hibob">HiBob</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/deel/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/deel">Deel</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/sesamehr/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/sesamehr">Sesame HR</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/hrworks/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/hrworks">HR WORKS</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/alexishr/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/alexishr">AlexisHR</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/simployer/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/simployer">Simployer</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/paycor/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/paycor">Paycor</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/absenceio/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/absenceio">Absence.io</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/a3innuvanomina/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/a3innuvanomina">a3innuva Nómina</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/datev/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/datev">DATEV LODAS</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/datevlug/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/datevlug">DATEV Lohn & Gehalt</a></li>

        <li class="flex items-center"><img
          src="https://storage.googleapis.com/kombo-assets/integrations/sandbox/icon.svg"
          height="16px"
          width="16px"
          class="m-0 mr-2"
        /><a href="/hris/connectors/sandbox">Kombo Sandbox</a></li>

        </ul>


        You'd like to see this feature for another integration? Please reach
        out!

        We're always happy to discuss extending our coverage.

        </Accordion>



        Check [this page](/hris/features/creating-absences) for a detailed
        guide.


        <Note>
          This endpoint requires the permission **Manage absences** to be enabled in [your scope config](/scopes).
        </Note>


        ### Example Request Body


        ```json

        {
          "employee_id": "wXJMxwDvPAjrJ4CyqdV9",
          "absence_type_id": "3YKtQ7qedsrcCady1jSyAkY1",
          "start_date": "2019-09-17",
          "end_date": "2019-09-21",
          "start_time": "08:30:00",
          "end_time": "16:00:00",
          "start_half_day": false,
          "end_half_day": false,
          "employee_note": "Visiting the aliens"
        }

        ```
      operationId: PostHrisAbsences
      parameters:
        - in: header
          name: X-Integration-Id
          schema:
            type: string
          description: ID of the integration you want to interact with.
          example: bamboohr:HWUTwvyx2wLoSUHphiWVrp28
          required: true
      requestBody:
        description: POST /hris/absences Request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostHrisAbsencesRequestBody'
            examples:
              example1:
                value:
                  employee_id: wXJMxwDvPAjrJ4CyqdV9
                  absence_type_id: 3YKtQ7qedsrcCady1jSyAkY1
                  start_date: '2019-09-17'
                  end_date: '2019-09-21'
                  start_time: '08:30:00'
                  end_time: '16:00:00'
                  start_half_day: false
                  end_half_day: false
                  employee_note: Visiting the aliens
      responses:
        '200':
          description: POST /hris/absences Positive response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostHrisAbsencesPositiveResponse'
              examples:
                example1:
                  value:
                    status: success
                    data:
                      id: 22st2Ji8XpncEYEak8mvQgQF
                      remote_id: '1348'
                      employee_id: JDdUy9kiH5APaGizFrgNmQjM
                      approver_id: AgXEispYPP1BbToHpqnqcpxy
                      start_date: '2022-08-04'
                      end_date: '2022-08-05'
                      start_half_day: true
                      end_half_day: false
                      start_time: '13:15:00'
                      end_time: '17:00:00'
                      amount: 2
                      unit: DAYS
                      status: APPROVED
                      employee_note: Visiting my family.
                      type_id: xzZoKssDaMZAd62kxayzzQvD
                      remote_created_at: '2022-08-07T14:01:29.196Z'
                      remote_updated_at: '2022-08-07T14:01:29.196Z'
                      changed_at: '2022-08-07T14:01:29.196Z'
                      remote_deleted_at: '2022-08-07T14:01:29.196Z'
                      remote_data: null
                    warnings:
                      - message: This is an example warning!
        default:
          $ref: '#/components/responses/ErrorResponseHRIS'
      x-codeSamples:
        - lang: python
          label: PostHrisAbsences
          source: |-
            from kombo import Kombo
            from kombo.utils import parse_datetime


            with Kombo(
                integration_id="workday:HWUTwvyx2wLoSUHphiWVrp28",
                api_key="<YOUR_BEARER_TOKEN_HERE>",
            ) as k_client:

                res = k_client.hris.create_absence(employee_id="wXJMxwDvPAjrJ4CyqdV9", absence_type_id="3YKtQ7qedsrcCady1jSyAkY1", start_date=parse_datetime("2019-09-17T00:00:00Z"), end_date=parse_datetime("2019-09-21T00:00:00Z"), employee_note="Visiting the aliens", status="REQUESTED", start_half_day=False, end_half_day=False, start_time="08:30:00", end_time="16:00:00")

                # Handle response
                print(res)
        - lang: typescript
          label: PostHrisAbsences
          source: |-
            import { Kombo } from "@kombo-api/sdk";

            const kombo = new Kombo({
              integration_id: "workday:HWUTwvyx2wLoSUHphiWVrp28",
              api_key: "<YOUR_BEARER_TOKEN_HERE>",
            });

            async function run() {
              const result = await kombo.hris.createAbsence({
                employee_id: "wXJMxwDvPAjrJ4CyqdV9",
                absence_type_id: "3YKtQ7qedsrcCady1jSyAkY1",
                start_date: new Date("2019-09-17T00:00:00Z"),
                end_date: new Date("2019-09-21T00:00:00Z"),
                employee_note: "Visiting the aliens",
                start_time: "08:30:00",
                end_time: "16:00:00",
              });

              console.log(result);
            }

            run();
        - lang: ruby
          label: PostHrisAbsences
          source: >-
            require 'kombo'


            Models = ::Kombo::Models

            s = ::Kombo::Kombo.new(
              integration_id: 'workday:HWUTwvyx2wLoSUHphiWVrp28',
              security: Models::Shared::Security.new(
                api_key: '<YOUR_BEARER_TOKEN_HERE>'
              )
            )

            res = s.hris.create_absence(body:
            Models::Shared::PostHrisAbsencesRequestBody.new(
              employee_id: 'wXJMxwDvPAjrJ4CyqdV9',
              absence_type_id: '3YKtQ7qedsrcCady1jSyAkY1',
              start_date: DateTime.iso8601('2019-09-17T00:00:00Z'),
              end_date: DateTime.iso8601('2019-09-21T00:00:00Z'),
              employee_note: 'Visiting the aliens',
              start_time: '08:30:00',
              end_time: '16:00:00'
            ))


            unless res.post_hris_absences_positive_response.nil?
              # handle response
            end
components:
  schemas:
    PostHrisAbsencesRequestBody:
      type: object
      properties:
        employee_id:
          type: string
          description: >-
            The ID of the employee in Kombo or their ID in the remote system by
            prefixing it with `remote:` (e.g., `remote:12312`)
        absence_type_id:
          type: string
          description: The ID of the absence type in Kombo (not its `remote_id`).
        status:
          type: string
          enum:
            - REQUESTED
            - APPROVED
          description: >-
            The state that the absence should be created in. Some tools may
            approve absences automatically if they were created for an absence
            type that does not require approval.
          default: REQUESTED
        start_date:
          description: >-
            The date that the absence starts. This is a plain date (i.e.,
            `yyyy-MM-dd`), with all time information discarded.
          type: string
          format: date-time
          pattern: ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?)?Z?$
          externalDocs:
            url: >-
              https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
        end_date:
          description: >-
            When the absence ends.The date that the absence ends. This is a
            plain date (i.e., `yyyy-MM-dd`), with all time information
            discarded.
          type: string
          format: date-time
          pattern: ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?)?Z?$
          externalDocs:
            url: >-
              https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
        start_half_day:
          type: boolean
          description: '`true` if the absence should start in the middle of the day.'
          default: false
        end_half_day:
          type: boolean
          description: '`true` if the absence should end in the middle of the day.'
          default: false
        amount:
          type: number
          format: double
          minimum: 0
          description: >-
            The amount of time of the absence. Specifying this also requires
            specifying `unit`. This is supported by very few tools.
        unit:
          type: string
          enum:
            - HOURS
            - DAYS
          description: >-
            The time unit of the `amount` value. Specifying this also requires
            specifying `amount`.
        employee_note:
          type:
            - string
            - 'null'
          description: A note describing the reason for this absence.
        start_time:
          type: string
          pattern: ^(?:2[0-3]|[01]?\d):[0-5]?\d(:[0-5]?\d)?$
          description: >-
            The time of when the absence begins. Follows the format `HH:mm` or
            `HH:mm:ss` (e.g., `14:45:15`). If `start_time` is specified,
            `end_time` has to be specified as well.
        end_time:
          type: string
          pattern: ^(?:2[0-3]|[01]?\d):[0-5]?\d(:[0-5]?\d)?$
          description: >-
            The time of when the absence ends. Follows the format `HH:mm` or
            `HH:mm:ss` (e.g., `14:45:15`). If `end_time` is specified,
            `start_time` has to be specified as well.
        remote_fields:
          type: object
          properties:
            a3innuvanomina:
              type: object
              properties:
                benefit_type_id:
                  type: string
                  enum:
                    - Delegated Payment
                    - No Right to Benefit
                    - Direct payment
                  description: >-
                    Required for illness absences. Benefit type: Delegated
                    Payment, No Right to Benefit, or Direct payment.
              description: Fields specific to A3 Innuva Nómina.
            adpworkforcenow:
              type: object
              properties:
                employment_id:
                  type: string
                  description: >-
                    [Required] The employment ID of the employee that the
                    absence will be added to.
                paid_leave:
                  type: boolean
                  description: Whether the absence is paid or not.
              description: Fields specific to ADP Workforce Now.
          description: >-
            Additional fields that we will pass through to specific HRIS
            systems.
      required:
        - employee_id
        - absence_type_id
        - start_date
        - end_date
        - employee_note
    PostHrisAbsencesPositiveResponse:
      type: object
      properties:
        status:
          type: string
          const: success
        data:
          type: object
          properties:
            id:
              type: string
              description: >-
                The globally unique ID of this object generated by Kombo. We
                recommend using this as a stable primary key for syncing.
            remote_id:
              type:
                - string
                - 'null'
              description: >-
                The raw ID of the object in the remote system. We don't
                recommend using this as a primary key on your side as it might
                sometimes be compromised of multiple identifiers if a system
                doesn't provide a clear primary key.
            employee_id:
              type: string
              description: >-
                The Kombo ID of the employee to which the absence belongs to.
                The ID can be used to retrieve the employee from the `get
                employees` endpoint.
            approver_id:
              type:
                - string
                - 'null'
              description: >-
                **(⚠️ Deprecated - We won't increase coverage for this
                feature)** The Kombo ID of the employee who is responsible for
                approving this absence.
              deprecated: true
            start_date:
              description: The date this absence starts in the `yyyy-MM-dd` format.
              type: 'null'
            end_date:
              description: The date this absence ends in the `yyyy-MM-dd` format.
              type: 'null'
            start_half_day:
              type:
                - boolean
                - 'null'
              description: >-
                `true` if the absence starts in the middle of the day, `false`
                if not, and `null` if the absence type doesn't support half-day
                absences. For multi-day absences, this only applies to the first
                day of the absence.
            end_half_day:
              type:
                - boolean
                - 'null'
              description: >-
                `true` if the absence ends in the middle of the day, `false` if
                not, and `null` if the absence type doesn't support half-day
                absences. For multi-day absences, this only applies to the last
                day of the absence.
            start_time:
              description: >-
                The time at which this absence starts. Follows the format
                `HH:mm:ss` (e.g., `14:45:15`).
              type: 'null'
            end_time:
              description: >-
                The time at which this absence ends. Follows the format
                `HH:mm:ss` (e.g., `14:45:15`).
              type: 'null'
            amount:
              type:
                - number
                - 'null'
              format: double
              minimum: -1.7976931348623157e+308
              description: The amount of time this absence takes.
            unit:
              type:
                - string
                - 'null'
              enum:
                - HOURS
                - DAYS
              description: The unit of time for this absence. Can be `HOURS` or `DAYS`.
            status:
              anyOf:
                - type: string
                  enum:
                    - REQUESTED
                    - APPROVED
                    - DECLINED
                    - CANCELLED
                    - DELETED
                - type: string
                  description: >-
                    If we can't find a clear mapping: The original string passed
                    through.
                - type: 'null'
              description: >-
                The absence’s current status. In rare cases where we can’t find
                a clear mapping, the original string is passed through.
            employee_note:
              type:
                - string
                - 'null'
              description: A note the employee has added to this absence.
            type_id:
              type:
                - string
                - 'null'
              description: The Kombo absence type ID of this absence.
            remote_created_at:
              description: The date and time the object was created in the remote system.
              type:
                - string
                - 'null'
              format: date-time
              externalDocs:
                url: >-
                  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
            remote_updated_at:
              description: >-
                A timestamp retrieved from the remote system, describing when
                the resource was last updated.
              type:
                - string
                - 'null'
              format: date-time
              externalDocs:
                url: >-
                  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
            changed_at:
              description: >-
                The timestamp when this specific record was last modified. This
                field only updates when properties directly on this record
                change, NOT when related or nested models change. For filtering
                that considers nested data changes, use the `updated_after`
                parameter which will return records when either the record
                itself OR its related models have been updated.
              type: string
              format: date-time
              externalDocs:
                url: >-
                  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
            remote_deleted_at:
              description: >-
                The date and time the object was deleted in the remote system.
                Objects are automatically marked as deleted when Kombo can't
                retrieve them from the remote system anymore. Kombo will also
                anonymize entries 14 days after they disappear.
              type:
                - string
                - 'null'
              format: date-time
              externalDocs:
                url: >-
                  https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
            remote_data:
              type:
                - object
                - 'null'
              additionalProperties: true
              description: >-
                Includes the data fetched from the remote system.

                Please be aware that including this in you scope config might
                violate other

                scopes that are set.


                Remote data always has the endpoint path that we got the data
                from as the

                top level key. For example, it could look like: `{ "/companies":
                { ... }}`


                This is not available on all plans. Reach out to Kombo if you
                need it.
          required:
            - id
            - remote_id
            - employee_id
            - approver_id
            - start_date
            - end_date
            - start_half_day
            - end_half_day
            - start_time
            - end_time
            - amount
            - unit
            - employee_note
            - type_id
            - remote_created_at
            - remote_updated_at
            - changed_at
            - remote_deleted_at
            - remote_data
          examples:
            - id: 22st2Ji8XpncEYEak8mvQgQF
              remote_id: '1348'
              employee_id: JDdUy9kiH5APaGizFrgNmQjM
              approver_id: AgXEispYPP1BbToHpqnqcpxy
              start_date: '2022-08-04'
              end_date: '2022-08-05'
              start_half_day: true
              end_half_day: false
              start_time: '13:15:00'
              end_time: '17:00:00'
              amount: 2
              unit: DAYS
              status: APPROVED
              employee_note: Visiting my family.
              type_id: xzZoKssDaMZAd62kxayzzQvD
              remote_created_at: '2022-08-07T14:01:29.196Z'
              remote_updated_at: '2022-08-07T14:01:29.196Z'
              changed_at: '2022-08-07T14:01:29.196Z'
              remote_deleted_at: '2022-08-07T14:01:29.196Z'
              remote_data: null
        warnings:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
          description: >-
            These are the interaction warnings that are shown in the dashboard.
            They are meant to provide debug information to you. We recommend
            logging them to the console.
      required:
        - status
        - data
        - warnings
  responses:
    ErrorResponseHRIS:
      description: The standard error response with the error codes for the HRIS use case.
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                  - error
              error:
                type: object
                properties:
                  code:
                    type:
                      - string
                      - 'null'
                    enum:
                      - PLATFORM.RATE_LIMIT_EXCEEDED
                      - PLATFORM.CONCURRENCY_LIMIT_EXCEEDED
                      - PLATFORM.INTEGRATION_NOT_FOUND
                      - PLATFORM.INPUT_INVALID
                      - PLATFORM.UNKNOWN_ERROR
                      - PLATFORM.IP_NOT_WHITELISTED
                      - PLATFORM.AUTHENTICATION_INVALID
                      - PLATFORM.TASK_TIMED_OUT
                      - INTEGRATION.PERMISSION_MISSING
                      - INTEGRATION.AUTHENTICATION_INVALID
                      - INTEGRATION.QA_FAILED
                      - INTEGRATION.SETUP_SYNC_PENDING
                      - INTEGRATION.SETUP_INCOMPLETE
                      - INTEGRATION.INACTIVE
                      - INTEGRATION.MODEL_NOT_AVAILABLE
                      - INTEGRATION.MODEL_DISABLED
                      - INTEGRATION.ACTION_NOT_AVAILABLE
                      - INTEGRATION.ACTION_DISABLED
                      - REMOTE.SERVICE_UNAVAILABLE
                      - REMOTE.RATE_LIMIT_EXCEEDED
                      - REMOTE.INPUT_INVALID
                      - REMOTE.UNKNOWN_HTTP_ERROR
                      - HRIS.STAFFING_ENTITY_CLOSED
                      - HRIS.EMPLOYEE_ALREADY_EXISTS
                    example: HRIS.EMPLOYEE_ALREADY_EXISTS
                    description: >-
                      Some errors include an error code that can be used to
                      identify their cause. See the [Error Handling
                      Docs](https://docs.kombo.dev/guides/errors) for more
                      information. For your error handling logic please use the
                      error `code` instead of other properties (e.g. message,
                      http status code, ...).
                  title:
                    type:
                      - string
                      - 'null'
                    description: A static, human-readable label.
                  message:
                    type: string
                    description: >-
                      A dynamic, detailed description of what went wrong in this
                      specific instance.
                  log_url:
                    type:
                      - string
                      - 'null'
                    format: uri
                    description: >-
                      The log page in the Kombo UI lists every interaction with
                      full details. If you need assistance, share that link with
                      our support team.
                required:
                  - code
                  - title
                  - message
                  - log_url
                description: Error details with structured code for programmatic handling.
            required:
              - status
              - error
          examples:
            Error Response:
              description: >-
                When building error handling logic, always use the `code` field
                to identify specific error types programmatically. See the
                complete list of error codes in the
                [docs](https://docs.kombo.dev/guides/errors).
              value:
                status: error
                error:
                  code: INTEGRATION.MODEL_NOT_AVAILABLE
                  title: >-
                    This data model isn't supported for the selected
                    integration.
                  message: >-
                    The "employees" model is not yet available for Greenhouse.
                    Please reach out to Kombo if you need this functionality.
                  log_url: https://app.kombo.dev/my-prod/logs?interactionId=123456
            Minimal Error Response:
              description: >-
                The "message" is always required while other fields can also be
                `null`. See the [docs](https://docs.kombo.dev/guides/errors) for
                more information.
              value:
                status: error
                error:
                  code: null
                  title: null
                  message: The message is always in the response.
                  log_url: null
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      description: >-
        Create an API key on the [Secrets](https://app.kombo.dev/secrets) page
        in the Kombo dashboard.

````