Deel subpackage_timeTrackingShifts API

The subpackage_timeTrackingShifts API from Deel — 4 operation(s) for subpackage_timetrackingshifts.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/deel-subpackage-timetrackingshifts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

deel-subpackage-timetrackingshifts-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Endpoints subpackage_timeTrackingShifts API
  version: 1.0.0
servers:
- url: https://api.letsdeel.com/rest/v2
- url: https://api-staging.letsdeel.com/rest/v2
tags:
- name: subpackage_timeTrackingShifts
paths:
  /time_tracking/shifts/raw:
    post:
      operationId: create-time-tracking-shifts-raw
      summary: Create raw time tracking shifts
      description: "Create raw shifts for the specified contract ID. “Raw shifts” refers to uncategorized entries—simply submit the clock-in and clock-out times. The classification of those hours (e.g., regular or overtime) will be handled by the Deel platform.\n **Token scopes**: `time-tracking:write`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_createTimeTrackingShiftsRaw_Response_201'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        description: Request body to create time tracking raw shifts.
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaData'
                  description: Request data containing contract ID and shifts to be created.
              required:
              - data
  /time_tracking/shifts:
    post:
      operationId: create-time-tracking-shifts
      summary: Create shifts
      description: "Creates multiple time tracking shifts for a contract, supporting both regular shift submissions and corrections that adjust hours for previously processed shifts.\n **Token scopes**: `time-tracking:write`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_createTimeTrackingShifts_Response_201'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        description: Request body to create time tracking shifts supporting regular shifts and correction shifts.
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaData'
                  description: Request data containing contract ID and shifts to be created.
              required:
              - data
    get:
      operationId: get-time-tracking-shifts
      summary: List of shifts
      description: "Retrieve a paginated list of shifts with details such as start and end times, breaks, metadata, and summary metrics. Supports pagination through `limit` and `offset` query parameters and filtering by `contractId`, date range (`fromDate` and `toDate`).\n **Token scopes**: `time-tracking:read`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: limit
        in: query
        description: Maximum number of records to return.
        required: false
        schema:
          type: string
      - name: offset
        in: query
        description: Offset/index of record for the next page of records to return.
        required: false
        schema:
          type: string
      - name: from_date
        in: query
        description: Filter shifts from this date (YYYY-MM-DD).
        required: false
        schema:
          type: string
          format: date
      - name: to_date
        in: query
        description: Filter shifts until this date (YYYY-MM-DD).
        required: false
        schema:
          type: string
          format: date
      - name: contract_id[]
        in: query
        description: Filter shifts by one or more contract IDs.
        required: false
        schema:
          type: array
          items:
            type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with paginated shifts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_getTimeTrackingShifts_Response_200'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
  /time_tracking/shifts/{external_id}:
    delete:
      operationId: delete-time-tracking-shift-by-external-id
      summary: Delete a Shift by External ID
      description: "This endpoint deletes a shift using its external ID. Once deleted, the shift will no longer be retrievable or editable.\n **Token scopes**: `time-tracking:write`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: external_id
        in: path
        description: The unique external identifier of the shift to be deleted.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Shift deleted successfully. No content is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_deleteTimeTrackingShiftByExternalId_Response_204'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    get:
      operationId: get-time-tracking-shift-by-external-id
      summary: Get shift details
      description: "Retrieve details of a specific shift by external ID.\n **Token scopes**: `time-tracking:read`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: external_id
        in: path
        description: Unique identifier of the shift to retrieve.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Shift details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_getTimeTrackingShiftByExternalId_Response_200'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetShiftDetailsRequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    patch:
      operationId: update-time-tracking-shift-by-external-id
      summary: Update a shift
      description: "Update specific fields of an existing shift by its unique `external_id`. This includes shift summary details, description etc.\n **Token scopes**: `time-tracking:write`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: external_id
        in: path
        description: Unique identifier of the shift to be updated.
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Shift updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/time-tracking-shifts_updateTimeTrackingShiftByExternalId_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/TimeTrackingShiftsExternalIdPatchRequestBodyContentApplicationJsonSchemaData'
                  description: Shift update request data.
              required:
              - data
  /time_tracking/shifts/bulk-delete:
    post:
      operationId: delete-multiple-shifts-by-external-id
      summary: Delete multiple shifts by External ID
      description: "This endpoint deletes shifts using external IDs. Once deleted, the shifts will no longer be retrievable or editable.\n **Token scopes**: `time-tracking:write`"
      tags:
      - subpackage_timeTrackingShifts
      parameters:
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Shifts deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Time Tracking Shifts_deleteMultipleShiftsByExternalId_Response_200'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        description: Request body to bulk delete shifts by their external IDs.
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/TimeTrackingShiftsBulkDeletePostRequestBodyContentApplicationJsonSchemaData'
                  description: Request data containing the external IDs of shifts to be deleted.
              required:
              - data
components:
  schemas:
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0SummaryTimeUnit:
      type: string
      enum:
      - HOUR
      - MONTH
      - DAY
      - WEEK
      description: Time unit
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0SummaryTimeUnit
    TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaData:
      type: object
      properties:
        summary:
          $ref: '#/components/schemas/TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummary'
          description: Summary of calculated time and rates for the shift.
        created_at:
          type: string
          description: Timestamp when the shift was created.
        updated_at:
          type: string
          description: Timestamp when the shift was last updated.
        contract_id:
          type: string
          description: The contract ID associated with the shift.
        description:
          type: string
          description: The description of the shift.
        external_id:
          type: string
          description: Unique identifier of the shift.
        date_of_work:
          type: string
          description: The date of the shift.
        payroll_cycle_ref:
          $ref: '#/components/schemas/TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataPayrollCycleRef'
          description: Reference to the payroll cycle associated with this shift.
      description: Updated shift record details.
      title: TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaData
    time-tracking-shifts_getTimeTrackingShifts_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItems'
          description: List of shift records.
        page:
          $ref: '#/components/schemas/TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaPage'
          description: Pagination information for the response.
      required:
      - data
      - page
      title: time-tracking-shifts_getTimeTrackingShifts_Response_200
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf4ShiftType:
      type: string
      enum:
      - CORRECTION_ABSOLUTE
      description: Type of the shift
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf4ShiftType
    time-tracking-shifts_deleteTimeTrackingShiftByExternalId_Response_204:
      type: object
      properties: {}
      description: Empty response body
      title: time-tracking-shifts_deleteTimeTrackingShiftByExternalId_Response_204
    time-tracking-shifts_createTimeTrackingShiftsRaw_Response_201:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TimeTrackingShiftsRawPostResponsesContentApplicationJsonSchemaDataItems'
          description: List of created shift records.
      required:
      - data
      title: time-tracking-shifts_createTimeTrackingShiftsRaw_Response_201
    TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummary:
      type: object
      properties:
        time_unit:
          $ref: '#/components/schemas/TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummaryTimeUnit'
          description: Time unit
        time_amount:
          type: number
          format: double
          description: Time amount
        total_break_hours:
          type: number
          format: double
          description: Total break hours.
        payable_break_hours:
          type: number
          format: double
          description: Payable break hours.
        total_payable_hours:
          type: number
          format: double
          description: Total payable hours.
        shift_duration_hours:
          type: number
          format: double
          description: Shift duration hours.
        shift_rate_external_id:
          type: string
          description: ShiftRate external ID.
      description: Summary of calculated time and rates for the shift.
      title: TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummary
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf5ShiftType:
      type: string
      enum:
      - CORRECTION_DELTA
      description: Type of the shift
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf5ShiftType
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0Summary:
      type: object
      properties:
        time_unit:
          $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0SummaryTimeUnit'
          description: Time unit
        time_amount:
          type: number
          format: double
          description: Time amount
        shift_rate_external_id:
          type: string
          description: Shift Rate external ID
      required:
      - time_unit
      - time_amount
      - shift_rate_external_id
      description: Summary of calculated time and rates for the shift.
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0Summary
    TimeTrackingShiftsExternalIdPatchRequestBodyContentApplicationJsonSchemaDataSummaryTimeUnit:
      type: string
      enum:
      - HOUR
      - DAY
      - WEEK
      - MONTH
      description: Time unit
      title: TimeTrackingShiftsExternalIdPatchRequestBodyContentApplicationJsonSchemaDataSummaryTimeUnit
    TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItemsMetaEnd:
      type: object
      properties:
        date:
          type: string
          description: End date of the shift.
        time:
          type: string
          description: End time of the shift.
        is_rest_day:
          type: boolean
          description: Indicates if the shift end day is a rest day.
        is_public_holiday:
          type: boolean
          description: Indicates if the shift end day is a public holiday.
      description: End time details of the shift.
      title: TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItemsMetaEnd
    TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMetaBreaksItemsStart:
      type: object
      properties:
        date:
          type: string
          description: Break start date
        time:
          type: string
          description: Break start time
      description: Start time details of the break.
      title: TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMetaBreaksItemsStart
    time-tracking-shifts_createTimeTrackingShifts_Response_201:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TimeTrackingShiftsPostResponsesContentApplicationJsonSchemaDataItems'
          description: List of created shift records.
      required:
      - data
      title: time-tracking-shifts_createTimeTrackingShifts_Response_201
    TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItems:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItemsMeta'
          description: Metadata containing detailed information about the shift timing, breaks, and approval status.
        summary:
          $ref: '#/components/schemas/TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItemsSummary'
          description: Summary of calculated hours and rates for the shift.
        created_at:
          type: string
          description: Timestamp when the shift was created.
        updated_at:
          type: string
          description: Timestamp when the shift was last updated.
        contract_id:
          type: string
          description: Contract ID associated with the shift.
        description:
          type: string
          description: Description of the shift.
        external_id:
          type: string
          description: Unique identifier of the shift.
        date_of_work:
          type: string
          description: The date of work for the shift.
        payroll_cycle_ref:
          $ref: '#/components/schemas/TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItemsPayrollCycleRef'
          description: Reference to the payroll cycle associated with this shift.
      required:
      - created_at
      - updated_at
      - contract_id
      - description
      - external_id
      - date_of_work
      title: TimeTrackingShiftsGetResponsesContentApplicationJsonSchemaDataItems
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf2CorrectionsItems:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf2CorrectionsItemsType'
          description: Type of correction
        time_amount:
          type: number
          format: double
          description: Time amount
      required:
      - type
      - time_amount
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf2CorrectionsItems
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf5PayrollCycleRef:
      type: object
      properties:
        date:
          type: string
          description: Date in ISO 8601 format that helps referencing a payroll cycle
      required:
      - date
      description: Reference to the payroll cycle associated with this shift.
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf5PayrollCycleRef
    GetShiftDetailsRequestBadRequestError:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/TimeTrackingShiftsExternalIdGetResponsesContentApplicationJsonSchemaError'
      title: GetShiftDetailsRequestBadRequestError
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItems1:
      type: object
      properties:
        summary:
          $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf1Summary'
          description: Summary of calculated time and rates for the correction shift.
        shift_type:
          $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf1ShiftType'
          description: Type of the shift
        description:
          type: string
          description: Description of the correction shift.
        external_id:
          type: string
          description: External ID of the correction shift.
        payroll_cycle_ref:
          $ref: '#/components/schemas/TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf1PayrollCycleRef'
          description: Reference to the payroll cycle associated with this shift.
        shift_reference_id:
          type: string
          description: External ID of the original shift being corrected
      required:
      - summary
      - shift_type
      - description
      - external_id
      - shift_reference_id
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItems1
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf4PayrollCycleRef:
      type: object
      properties:
        date:
          type: string
          description: Date in ISO 8601 format that helps referencing a payroll cycle
      required:
      - date
      description: Reference to the payroll cycle associated with this shift.
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf4PayrollCycleRef
    TimeTrackingShiftsPostResponsesContentApplicationJsonSchemaDataItemsSummaryTimeUnit:
      type: string
      enum:
      - HOUR
      - DAY
      - WEEK
      - MONTH
      description: Time unit
      title: TimeTrackingShiftsPostResponsesContentApplicationJsonSchemaDataItemsSummaryTimeUnit
    TimeTrackingShiftsRawPostResponsesContentApplicationJsonSchemaDataItemsMetaEnd:
      type: object
      properties:
        date:
          type: string
          description: End date
        time:
          type: string
          description: End time
        is_rest_day:
          type: boolean
          description: Is rest day
        is_public_holiday:
          type: boolean
          description: Is public holiday
      description: End time details of the shift.
      title: TimeTrackingShiftsRawPostResponsesContentApplicationJsonSchemaDataItemsMetaEnd
    TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummaryTimeUnit:
      type: string
      enum:
      - HOUR
      - DAY
      - WEEK
      - MONTH
      description: Time unit
      title: TimeTrackingShiftsExternalIdPatchResponsesContentApplicationJsonSchemaDataSummaryTimeUnit
    time-tracking-shifts_getTimeTrackingShiftByExternalId_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/TimeTrackingShiftsExternalIdGetResponsesContentApplicationJsonSchemaData'
          description: Shift record details.
      required:
      - data
      title: time-tracking-shifts_getTimeTrackingShiftByExternalId_Response_200
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf2CorrectionsItemsType:
      type: string
      enum:
      - SUBTRACTION
      - ADDITION
      description: Type of correction
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf2CorrectionsItemsType
    Time Tracking Shifts_deleteMultipleShiftsByExternalId_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/TimeTrackingShiftsBulkDeletePostResponsesContentApplicationJsonSchemaData'
      required:
      - data
      title: Time Tracking Shifts_deleteMultipleShiftsByExternalId_Response_200
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf3PayrollCycleRef:
      type: object
      properties:
        date:
          type: string
          format: date-time
          description: Date in ISO 8601 format that helps referencing a payroll cycle
      required:
      - date
      description: Reference to the payroll cycle associated with this shift.
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf3PayrollCycleRef
    TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMeta:
      type: object
      properties:
        end:
          $ref: '#/components/schemas/TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMetaEnd'
          description: End time details of the shift.
        start:
          $ref: '#/components/schemas/TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMetaStart'
          description: Start time details of the shift.
        breaks:
          type: array
          items:
            $ref: '#/components/schemas/TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMetaBreaksItems'
          description: List of break periods within the shift.
        approval_date:
          type: string
          description: Approval date
      description: Metadata containing detailed information about the shift timing, breaks, and approval status.
      title: TimeTrackingShiftsRawPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsMeta
    TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0ShiftType:
      type: string
      enum:
      - REGULAR
      description: Type of the shift
      title: TimeTrackingShiftsPostRequestBodyContentApplicationJsonSchemaDataShiftsItemsOneOf0ShiftType
    TimeTrackingS

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/deel/refs/heads/main/openapi/deel-subpackage-timetrackingshifts-api-openapi.yml