---
title: "Get shift custom fields"
method: GET
path: "/scheduler/v1/schedulers/{schedulerId}/custom-fields"
tags: ["Schedule:v1:Schedulers:Schedule:Shift Custom Fields"]
---

# Get shift custom fields

`GET /scheduler/v1/schedulers/{schedulerId}/custom-fields`

## Request

- Base URL: `https://api.connecteam.com`
- URL: `https://api.connecteam.com/scheduler/v1/schedulers/{schedulerId}/custom-fields`
- Auth: one of:
  - API key in header `X-API-KEY`
  - OAuth 2
    - Client credentials
    - Token URL: `/oauth/v1/token` scopes: `schedule.read`

Retrieves all shift custom fields associated with the scheduler

## Path parameters

- `schedulerId` integer, required: The unique identifier of the schedule

## Query parameters

- `limit` integer: The maximum number of results to display per page
- `offset` integer: The resource offset of the last successfully read resource will be returned as the paging.offset JSON property of a paginated response containing more results

## Response `200`

Successful Response

- PaginatedBaseResponseV2GetShiftCustomFieldsSettingsResponse
  - `requestId` string
  - `data` GetShiftCustomFieldsSettingsResponse, required
    - `customFields` union[], required: The shift custom fields
      - union
        - DropdownShiftCustomFieldSettingsResponse
          - `id` string, required: The shift custom field id
          - `name` string, required: The name of the custom field
          - `type` string: The type of the custom field: Dropdown
          - `isDefault` boolean, required: True if the field is in Default fields (shown on the shift by default). False if it is in Additional fields (optional).
          - `isMultiSelect` boolean: Whether the dropdown allows multiple selections
          - `dropdownOptions` V2FeaturesShiftschedulerExternalApiV1SchedulersSchedulerCustomFieldsModelsShiftCustomFieldSettingsResponseDropdownOptionResponse[]: The dropdown options
            - `id` integer, required: The dropdown option unique id
            - `value` string, required: The dropdown option value
            - `isDeleted` boolean: Whether the option is deleted
        - ShiftCustomFieldSettingsResponse
          - `id` string, required: The shift custom field id
          - `name` string, required: The name of the custom field
          - `type` 'str' | 'dropdown', required
          - `isDefault` boolean, required: True if the field is in Default fields (shown on the shift by default). False if it is in Additional fields (optional).
  - `paging` PagingResponseModelV2, required
    - `offset` integer, required: The resource offset of the last successfully read resource will be returned as the paging.offset JSON property of a paginated response containing more results
    - `total` integer, nullable: Total number of resources matching the request, ignoring pagination. Use this to retrieve the full count without paginating through every page. Only populated by endpoints that compute it.

## Other responses

- `422`: Validation Error

## Changes

- **2026-11-03** `a01dde7c27fb`: 2 info
  - added the required property `data/customFields/items/anyOf[subschema #1: DropdownShiftCustomFieldSettingsResponse]/isDefault` to the response with the `200` status
  - added the required property `data/customFields/items/anyOf[subschema #2: ShiftCustomFieldSettingsResponse]/isDefault` to the response with the `200` status

[Operation history](https://skmtc.dev/connecteam/apis/connecteam-api-documentation/changes/scheduler/v1/schedulers/:schedulerId/custom-fields/get.md)

---

[API](https://skmtc.dev/connecteam/apis/connecteam-api-documentation.md) - [All operations](https://skmtc.dev/connecteam/apis/connecteam-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/connecteam/apis/connecteam-api-documentation/revisions/a01dde7c27fb?raw)
