---
title: "Get a schedule"
method: GET
path: "/scheduling/v1/schedules/{schedule_id}"
tags: ["Schedules"]
---

# Get a schedule

`GET /scheduling/v1/schedules/{schedule_id}`

Returns the full configuration of a schedule by its ID. For site and asset schedules, target counts are returned as totals only.

## Path parameters

- `schedule_id` string, required

## Response `200`

A successful response.

- S12SchedulingV1GetScheduleResponse — Response message for GetSchedule.
  - `id` string — The schedule ID.
  - `title` string — The schedule title.
  - `status` 'STATUS_UNSPECIFIED' | 'STATUS_FINISHED' | 'STATUS_ACTIVE' | 'STATUS_PAUSED' | 'STATUS_DELETED' | 'STATUS_PENDING' | 'STATUS_FAILED' | 'STATUS_ENDED' — Status enum. - STATUS_UNSPECIFIED: Unspecified status. Default value; do not use explicitly. - STATUS_FINISHED: Schedule has completed all occurrences defined by its recurrence rule. - STATUS_ACTIVE: Schedule is active and generating occurrences as expected. - STATUS_PAUSED: Schedule is temporarily suspended. No new occurrences will be generated until resumed. - STATUS_DELETED: Schedule has been deleted and is no longer active or available. - STATUS_PENDING: Schedule has been created but has not yet started generating occurrences. - STATUS_FAILED: Schedule encountered an error and could not continue generating occurrences. - STATUS_ENDED: Schedule has reached its end date and will no longer generate occurrences.
  - `work_type` S12SchedulingV1ScheduleWorkTypeInfo — The type of work to be done for the schedule.
    - `inspection` S12SchedulingV1ScheduleInspectionWorkInfo — Details about the inspection template used by this schedule.
      - `template_id` string — ID of the inspection template.
      - `template_name` string — Name of the inspection template.
  - `recurrence` S12SchedulingV1ScheduleRecurrenceInfo — The recurrence configuration for a schedule.
    - `dtstart_rrule` string — The recurrence pattern as a combined DTSTART + RRULE string. Format: "DTSTART[;TZID=<timezone>]:<datetime>\nRRULE:<rule>" Example: "DTSTART;TZID=America/New_York:20240101T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO" When use_site_timezone is true, DTSTART is in UTC and each target site's local timezone is applied at runtime.
    - `duration` string — How long assignees have to complete the work after an occurrence starts. ISO 8601 format (e.g. "PT8H", "P1D").
    - `use_site_timezone` boolean — When true, each target site's local timezone is used instead of the timezone in dtstart_rrule. Only applies to site and asset schedules.
    - `late_submission_rule` S12SchedulingV1LateSubmissionRule — The conditions under which users can submit work late for each occurrence.
      - `until_next_occurrence` S12SchedulingV1UntilNextOccurrence — UntilNextOccurrence indicates late submission is allowed until the next occurrence starts. Used as a marker type in oneof fields.
      - `late_submission_duration` string — Allow late submission for a specific duration after each occurrence ends. Currently only supports a period of 14 days ("P14D"). ISO 8601 duration format.
  - `completion_rule` 'COMPLETION_RULE_UNSPECIFIED' | 'COMPLETION_RULE_ANY' | 'COMPLETION_RULE_ALL' — Completion rule enum. - COMPLETION_RULE_UNSPECIFIED: Unspecified completion rule. - COMPLETION_RULE_ANY: Any assignee can complete the schedule. - COMPLETION_RULE_ALL: All assignees must complete the schedule.
  - `assignment` S12SchedulingV1ScheduleAssignmentRuleInfo — Who is assigned to complete the work at each occurrence.
    - `users` S12SchedulingV1ScheduleUserAssignmentInfo — Assignment to specific users.
      - `users` S12SchedulingV1User[]
        - `id` string, required
        - `name` string
    - `groups` S12SchedulingV1ScheduleGroupAssignmentInfo — Assignment to all members of one or more groups.
      - `groups` S12SchedulingV1AssignmentGroup[]
        - `id` string — The group's ID.
        - `name` string — The group's display name.
    - `site_members` S12SchedulingV1ScheduleSiteMemberAssignmentInfo — Assignment to all members of each target site.
    - `site_members_in_group` S12SchedulingV1ScheduleSiteMemberInGroupAssignmentInfo — Assignment to users who belong to both the target site and specified groups.
      - `groups` S12SchedulingV1AssignmentGroup[]
        - `id` string — The group's ID.
        - `name` string — The group's display name.
  - `target_summary` S12SchedulingV1ScheduleTargetSummary — The type and count of targets (sites or assets) attached to a schedule.
    - `target_type` 'SCHEDULE_TARGET_TYPE_UNSPECIFIED' | 'SCHEDULE_TARGET_TYPE_SITES' | 'SCHEDULE_TARGET_TYPE_ASSETS' — Whether a schedule targets sites or assets. - SCHEDULE_TARGET_TYPE_SITES: The schedule targets specific sites. - SCHEDULE_TARGET_TYPE_ASSETS: The schedule targets specific assets.
    - `total_count` integer — Number of resolved targets this schedule applies to. For site targets, each registered site is expanded to the locations it represents, so the count may differ from the number of registered site IDs.
  - `creator` S12SchedulingV1User — User represents a user identified by its id. The name field is populated by the server on responses and ignored on requests.
    - `id` string, required
    - `name` string
  - `created_at` string, date-time — When this schedule was created.
  - `last_modified_by` S12SchedulingV1User — User represents a user identified by its id. The name field is populated by the server on responses and ignored on requests.
    - `id` string, required
    - `name` string
  - `last_modified_at` string, date-time — When this schedule was last modified.
  - `next_occurrence` S12SchedulingV1GetScheduleResponseNextOccurrenceDateRange — The start and end time of an upcoming occurrence.
    - `start_time` string, date-time — When the occurrence starts.
    - `end_time` string, date-time — When the occurrence is due.
    - `timezone` string — The IANA timezone for the occurrence (e.g. "America/New_York").

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/safetyculture/apis/safetyculture-api.md) · [All operations](https://skmtc.net/safetyculture/apis/safetyculture-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/safetyculture/safetyculture-api/revisions/5be91df61ded/schema)
