---
title: "Get open shifts"
method: POST
path: "/management/v2/shifts:open"
tags: ["Shifts"]
---

# Get open shifts

`POST /management/v2/shifts:open`

## Request

- Base URL: `https://your-subdomain.deputy.deputy.com/api`
- URL: `https://your-subdomain.deputy.deputy.com/api/management/v2/shifts:open`
- Auth: API key in header `OAuth`

Get open shifts.

## Request body

- ScheduleShiftGetOpenShiftsRequestData
  - `start` string
  - `end` string
  - `employee` string, int64
  - `limit` integer
  - `cursor` string
  - `expandMetadata` boolean: If true, includes additional metadata such as custom field definitions.

## Response `200`

A successful response.

- ScheduleShiftGetOpenShiftsResponse
  - `success` boolean
  - `data` GetOpenShiftsResponseOpenShifts
    - `openShifts` GetOpenShiftsResponseOpenShift[]
      - `shift` Tenantschedulev2modelShift
        - `id` integer
        - `start` string
        - `end` string
        - `mealbreakDuration` number, float
        - `mealbreakSlots` ModelBreak[]
          - `slotType` 'BREAK' | 'WORK' | 'CUSTOM'
          - `start` integer
          - `end` integer
          - `state` 'NOT_START' | 'IN_PROGRESS' | 'FINISHED' | 'DURATION_ONLY' | 'DURATION_FINISHED'
          - `canStartEarly` boolean
          - `canEndEarly` boolean
          - `isMandatory` boolean
          - `type` 'MEAL_BREAK' | 'REST_BREAK'
          - `typeLabel` string
          - `startDateTime` string
          - `endDateTime` string
        - `duration` number, float
        - `cost` number, float
        - `area` integer
        - `employee` integer
        - `note` string
        - `warning` string
        - `warningOverrideComment` string
        - `isPublished` boolean
        - `timesheet` integer
        - `isOpen` boolean
        - `approvalRequired` boolean
        - `confirmationStatus` 'ROSTER_CONFIRMATION_NOT_REQUIRED' | 'ROSTER_CONFIRMATION_REQUIRED' | 'ROSTER_CONFIRMATION_DONE' | 'ROSTER_CONFIRMATION_DECLINED'
        - `confirmationNote` string
        - `confirmedByWhom` integer
        - `confirmedAt` string
        - `swapStatus` 'SWAP_STATUS_NOT_REQUIRED' | 'SWAP_STATUS_PENDING_OUT' | 'SWAP_STATUS_PENDING_IN' | 'SWAP_STATUS_PENDING_IN_OUT' | 'SWAP_STATUS_PENDING_APPROVAL' | 'SWAP_STATUS_APPROVED' | 'SWAP_STATUS_CANCELLED' | 'SWAP_STATUS_DECLINED'
        - `swapApprovedBy` integer
        - `shiftTemplate` integer
        - `children` V2modelChildShift[]
          - `id` integer
          - `start` string
          - `end` string
          - `cost` number, float
          - `area` integer
          - `canEdit` boolean
          - `parentId` integer
          - `isOpen` boolean
          - `approvalRequired` boolean
          - `isPublished` boolean
          - `confirmationStatus` 'ROSTER_CONFIRMATION_NOT_REQUIRED' | 'ROSTER_CONFIRMATION_REQUIRED' | 'ROSTER_CONFIRMATION_DONE' | 'ROSTER_CONFIRMATION_DECLINED'
          - `confirmedByWhom` integer
          - `confirmedAt` string
          - `creator` integer
          - `createdAt` string
          - `modifiedAt` string
          - `warning` string
          - `warningOverrideComment` string
          - `areaName` string
          - `location` integer
          - `locationName` string
        - `canEdit` boolean
        - `customFields` Tenantsharedv2modelCustomField[]
          - `id` string, int64
          - `booleanField` ModelBooleanField
            - `value` boolean
          - `stringField` ModelStringField
            - `value` string
          - `listField` ModelListField
            - `value` string
          - `multiListField` ModelMultiListField
            - `value` string[]
          - `fileField` ModelFileField
            - `value` integer
          - `employeeVisible` boolean
        - `customFieldData` integer
        - `creator` integer
        - `createdAt` string
        - `modifiedAt` string
        - `consentChangesets` ModelShiftConsentChangeset[]
          - `id` integer
          - `shiftId` integer
          - `consentTransactionId` string
          - `action` 'CREATE' | 'MODIFY' | 'DELETE'
          - `status` 'PENDING' | 'ACTIONED' | 'AUTO_ACTIONED'
          - `newData` ShiftConsentChangesetShiftConsentChangesetData
            - `start` string
            - `end` string
            - `approvalRequired` boolean
            - `cost` number, float
            - `date` string
            - `employee` integer
            - `mealbreakSlotsUnpaidMinutes` number, float
            - `mealbreakSlots` ModelBreak[]
              - …
            - `isOpen` boolean
            - `area` integer
            - `duration` number, float
            - `location` integer
          - `oldData` ShiftConsentChangesetShiftConsentChangesetData
            - `start` string
            - `end` string
            - `approvalRequired` boolean
            - `cost` number, float
            - `date` string
            - `employee` integer
            - `mealbreakSlotsUnpaidMinutes` number, float
            - `mealbreakSlots` ModelBreak[]
              - …
            - `isOpen` boolean
            - `area` integer
            - `duration` number, float
            - `location` integer
          - `violatedRules` ModelViolatedRules[]
            - `ruleCode` string
            - `warning` ModelViolatedRulesWarning
              - …
            - `ruleConfigs` ModelViolatedRulesRuleConfig[]
              - …
          - `creator` integer
          - `createdAt` string
          - `modifiedAt` string
          - `consents` ModelConsent[]
            - `id` string
            - `recordId` string
            - `recordType` 'SHIFT' | 'TIMESHEET' | 'REGULAR_SCHEDULE'
            - `transactionId` string
            - `employeeId` integer
            - `status` 'PENDING' | 'ACCEPTED' | 'DECLINED' | 'CANCELLED' | 'OVERRIDDEN_ACCEPTED'
            - `description` string
            - `metadata` ModelShiftTypeConsentMetadata
              - …
            - `creator` integer
            - `createdAt` string, date-time
        - `areaName` string
        - `location` integer
        - `locationName` string
      - `requestedEmployees` integer[]
      - `offeredBy` ScheduleShiftGetOpenShiftsResponseEmployee
        - `id` integer
        - `displayName` string
        - `photoUrl` string
        - `message` string
    - `nextCursor` string
  - `metadata` ScheduleShiftGetOpenShiftsResponseMetadata: Metadata containing custom field definitions and other supplementary data.
    - `customFields` MetadataMetadataCustomField[]: List of custom field definitions for employees.
      - `id` integer
      - `name` string
      - `employeeVisible` boolean
      - `areas` integer[]

---

[API](https://skmtc.dev/deputy/apis/deputy-v2-api.md) - [All operations](https://skmtc.dev/deputy/apis/deputy-v2-api/llms.txt) - [OpenAPI document](https://skmtc.dev/deputy/apis/deputy-v2-api/revisions/78f0278f4608?raw)
