> This page is for Unified.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

The `TimeOff` object is used to represent all employees' Time Off entries.

### The TimeOff Object

```json
{
  "id": "string",
  "remote_id": "string",
  "created_at": "2023-01-01T00:00:00Z",
  "modified_at": "2023-01-01T00:00:00Z",
  "employee": "string",
  "approver": "string",
  "status": "REQUESTED",
  "employee_note": "string",
  "units": "HOURS",
  "amount": 1,
  "request_type": "VACATION",
  "start_time": "2023-01-01T00:00:00Z",
  "end_time": "2023-01-01T00:00:00Z",
  "remote_was_deleted": true,
  "field_mappings": {
    "organization_defined_targets": {
      "string": {}
    },
    "linked_account_defined_targets": {
      "string": {}
    }
  },
  "remote_data": [
    {
      "path": "string",
      "data": {}
    }
  ]
}
```

### Schema (`TimeOff`)

```yaml
components:
  schemas:
    TimeOffStatusEnum:
      type: string
      enum:
        - REQUESTED
        - APPROVED
        - DECLINED
        - CANCELLED
        - DELETED
      title: TimeOffStatusEnum
    UnitsEnum:
      type: string
      enum:
        - HOURS
        - DAYS
      title: UnitsEnum
    RequestTypeEnum:
      type: string
      enum:
        - VACATION
        - SICK
        - PERSONAL
        - JURY_DUTY
        - VOLUNTEER
        - BEREAVEMENT
        - LEAVE
      title: RequestTypeEnum
    TimeOffFieldMappings:
      type: object
      properties:
        organization_defined_targets:
          type: object
          additionalProperties:
            description: Any type
        linked_account_defined_targets:
          type: object
          additionalProperties:
            description: Any type
      title: TimeOffFieldMappings
    RemoteData:
      type: object
      properties:
        path:
          type: string
          description: The third-party API path that is being called.
        data:
          description: >-
            The data returned from the third-party for this object in its
            original, unnormalized format.
      required:
        - path
      description: >-
        # The RemoteData Object

        ### Description

        The `RemoteData` object is used to represent the full data pulled from
        the third-party API for an object.


        ### Usage Example

        TODO
      title: RemoteData
    TimeOff:
      type: object
      properties:
        id:
          type: string
          format: uuid
        remote_id:
          type:
            - string
            - 'null'
          description: The third-party API ID of the matching object.
        created_at:
          type: string
          format: date-time
          description: The datetime that this object was created by Merge.
        modified_at:
          type: string
          format: date-time
          description: The datetime that this object was modified by Merge.
        employee:
          type:
            - string
            - 'null'
          format: uuid
          description: The employee requesting time off.
        approver:
          type:
            - string
            - 'null'
          format: uuid
          description: >-
            The Merge ID of the employee with the ability to approve the time
            off request.
        status:
          oneOf:
            - $ref: '#/components/schemas/TimeOffStatusEnum'
            - type: 'null'
          description: >-
            The status of this time off request. This field is an open enum:
            Merge can return a value outside this list when an integration
            provides one it does not map. Pass `show_enum_origins=status` to
            receive the integration's own value instead.
        employee_note:
          type:
            - string
            - 'null'
          description: The employee note for this time off request.
        units:
          oneOf:
            - $ref: '#/components/schemas/UnitsEnum'
            - type: 'null'
          description: >-
            The measurement that the third-party integration uses to count time
            requested. This field is an open enum: Merge can return a value
            outside this list when an integration provides one it does not map.
            Pass `show_enum_origins=units` to receive the integration's own
            value instead.
        amount:
          type:
            - number
            - 'null'
          format: double
          description: The time off quantity measured by the prescribed “units”.
        request_type:
          oneOf:
            - $ref: '#/components/schemas/RequestTypeEnum'
            - type: 'null'
          description: >-
            The type of time off request. This field is an open enum: Merge can
            return a value outside this list when an integration provides one it
            does not map. Pass `show_enum_origins=request_type` to receive the
            integration's own value instead.
        start_time:
          type:
            - string
            - 'null'
          format: date-time
          description: The day and time of the start of the time requested off.
        end_time:
          type:
            - string
            - 'null'
          format: date-time
          description: The day and time of the end of the time requested off.
        remote_was_deleted:
          type: boolean
          description: >-
            Indicates whether or not this object has been deleted in the third
            party platform. Full coverage deletion detection is a premium
            add-on. Native deletion detection is offered for free with limited
            coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
        field_mappings:
          oneOf:
            - $ref: '#/components/schemas/TimeOffFieldMappings'
            - type: 'null'
        remote_data:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/RemoteData'
      title: TimeOff
```