---
title: "Data feed for schedule occurrences"
method: GET
path: "/scheduling/v1/feed/schedule_occurrences"
tags: ["Data Feeds"]
---

# Data feed for schedule occurrences

`GET /scheduling/v1/feed/schedule_occurrences`

## Query parameters

- `limit` integer
- `template` string[]
- `start_date` string, date-time
- `end_date` string, date-time
- `next_page_token` string

## Response `200`

A successful response.

- S12SchedulingFeedV1FeedScheduleOccurrencesResponse — The response for `FeedScheduleOccurrences` V2
  - `metadata` S12CommonV1FeedMetadataSimple — FeedMetadataSimple for a feed.
    - `next_page` string — Full path to retrieve the next page of results, including the next_page_token.
    - `next_page_token` string — The value you can use to retrieve additional results. If a value exists, it means there are more results than listed. Use the value in your request body as a page_token to view more results.
  - `data` S12SchedulingFeedV1FeedScheduleOccurrence[] — The flat list of schedule occurrence records.
    - `id` string — Unique identifier for this schedule occurrence. Format: `{schedule_id}_{occurrence_id}_{assignee_id}` Example: `schedule_123_occ_456_assignee_789`.
    - `schedule_id` string — ID of the schedule that generated this occurrence. References a schedule from the FeedSchedules endpoint.
    - `occurrence_id` string — ID of the specific occurrence within the schedule's recurrence pattern. Each occurrence represents one instance of the scheduled inspection.
    - `template_id` string — ID of the template used for inspections created from this occurrence. References the inspection template that will be used.
    - `start_time` string — When the occurrence becomes available for inspection (ISO 8601 timestamp format; for example, `2024-01-15T09:00:00Z`).
    - `due_time` string — Final deadline (ISO 8601 timestamp format; for example, `2024-01-15T17:00:00Z`). After this time, the occurrence is missed and cannot be completed. For schedules with an overdue period, this comes after `miss_time`.
    - `miss_time` string — When this occurrence becomes overdue (ISO 8601 timestamp format). • Present only if an overdue period configured; otherwise omitted. • Between `miss_time` and `due_time`, unfinished occurrences are `OVERDUE`. • It is `null` if an overdue period is not configured.
    - `occurrence_status` string — Current status of this scheduled occurrence. • `TODO`: Not started. • `IN_PROGRESS`: Inspection has been started but not completed. • `COMPLETED`: Inspection has been finished on time. • `LATE`: Inspection has been finished after the `miss_time` but before `due_time`. • `OVERDUE`: Past `miss_time` but before `due_time`; not started. • `MISSED`: Past `due_time` and has not been completed. • `WONT_DO`: Intentionally skipped; `wont_do_note` is mandatory for this status.
    - `audit_id` string — ID of the inspection created from this occurrence. • Present when the `occurrence_status` is `IN_PROGRESS` or `COMPLETED`. • It is `null` for occurrences that haven't been started yet. • Use this ID to fetch full inspection details from inspection APIs.
    - `completed_at` string — When this occurrence was marked as completed (ISO 8601 timestamp format). • Present only when `occurrence_status` is `COMPLETED`. • It is `null` for incomplete occurrences.
    - `completion_rule` string — Completion requirement for the occurrence. One of: `any` (at least one assignee must complete) or `all` (every assignee must complete).
    - `organisation_id` string — ID of the organization that owns the occurrence.
    - `wont_do_note` string — Reason provided when marking occurrence as `won't do`. • Only populated when `occurrence_status` is `WONT_DO`. • Contains the explanation for why the occurrence was skipped.
    - `assignee_id` string — ID of the specific entity assigned to complete this occurrence. • It could be a user ID, role ID, or location ID, depending on assignment type. • Use with FeedScheduleAssignees to get assignee details.
    - `assignee_from` string — Original assignment source that generated this individual occurrence. • Format: `{type}_{id}` where type is user, group, role, or location. • Examples: `user_xxx`, `role_yyy`, `location_zzz` • Shows how this specific assignee was determined from the schedule's assignment rules.

## 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)
