SafetyCulture · Schema
UpdateScheduleItem
The parameters for creating or updating a schedule item
CompanyBusiness ApplicationsSafetyInspectionWorkplace OperationsEHSComplianceTrainingField ServiceWebhookAustralia
Properties
| Name | Type | Description |
|---|---|---|
| description | string | Description of the schedule item |
| must_complete | object | Whom must complete a given schedule, either one assignee or all assignees |
| can_late_submit | boolean | Can the inspections be started after the due date |
| recurrence | string | [RRule](https://www.textmagic.com/free-tools/rrule-generator) formatted recurrence string. Example: `FREQ=WEEKLY;BYDAY=MO;INTERVAL=1` represents weekly on Monday. |
| start_time | object | The time the schedule item starts on each occurrence e.g. 9:10AM |
| duration | string | ISO8601 duration string, e.g. PT1H. How long inspection can be started after the start_date. |
| timezone | string | @deprecated, this field is not being used to dictate the timezone of the schedule item. The timezone of the schedule item is based on the authenticated user's profile timezone. |
| from_date | string | When this schedule will begin appearing |
| to_date | string | When the schedule will end |
| reminders | array | Reminders that will be sent to assignees |
| assignees | array | The users or groups that are assigned to complete the schedule |
| document | object | The document that is assigned to this schedule items |
| location_id | string | The location assigned to this schedule item |
| id | string | |
| modified_at | string | |
| created_at | string | |
| status | object | |
| creator | object | |
| next_occurrence | object | |
| asset_id | string | The asset assigned to this schedule item |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/safetyculture/main/json-schema/safetyculture-s12-schedules-v1-update-schedule-item-schema.json",
"title": "UpdateScheduleItem",
"description": "The parameters for creating or updating a schedule item",
"x-generated": "2026-10-14",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/safetyculture-mitti-api-openapi.yml#/components/schemas/s12.schedules.v1.UpdateScheduleItem",
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "Description of the schedule item"
},
"must_complete": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.MustComplete"
}
],
"description": "Whom must complete a given schedule, either one assignee or all assignees"
},
"can_late_submit": {
"type": "boolean",
"description": "Can the inspections be started after the due date"
},
"recurrence": {
"type": "string",
"description": "[RRule](https://www.textmagic.com/free-tools/rrule-generator) formatted\nrecurrence string. <br> Example: `FREQ=WEEKLY;BYDAY=MO;INTERVAL=1`\nrepresents weekly on Monday."
},
"start_time": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.StartTime"
}
],
"description": "The time the schedule item starts on each occurrence e.g. 9:10AM"
},
"duration": {
"type": "string",
"description": "ISO8601 duration string, e.g. PT1H. How long inspection can be started\nafter the start_date."
},
"timezone": {
"type": "string",
"description": "@deprecated, this field is not being used to dictate the timezone of the schedule item.\nThe timezone of the schedule item is based on the authenticated user's profile timezone."
},
"from_date": {
"type": "string",
"format": "date-time",
"description": "When this schedule will begin appearing"
},
"to_date": {
"type": "string",
"format": "date-time",
"description": "When the schedule will end"
},
"reminders": {
"type": "array",
"items": {
"type": "object",
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.Reminder"
},
"description": "Reminders that will be sent to assignees"
},
"assignees": {
"type": "array",
"items": {
"type": "object",
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.Entity"
},
"description": "The users or groups that are assigned to complete the schedule"
},
"document": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.Document"
}
],
"description": "The document that is assigned to this schedule items"
},
"location_id": {
"type": "string",
"description": "The location assigned to this schedule item"
},
"id": {
"type": "string",
"readOnly": true
},
"modified_at": {
"type": "string",
"format": "date-time",
"readOnly": true
},
"created_at": {
"type": "string",
"format": "date-time",
"readOnly": true
},
"status": {
"readOnly": true,
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.Status"
}
]
},
"creator": {
"readOnly": true,
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.Entity"
}
]
},
"next_occurrence": {
"readOnly": true,
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.NextOccurrence"
}
]
},
"asset_id": {
"type": "string",
"description": "The asset assigned to this schedule item"
}
},
"required": [
"description",
"must_complete",
"can_late_submit",
"recurrence",
"start_time",
"duration",
"from_date",
"assignees",
"document"
],
"$defs": {
"s12.schedules.v1.ScheduleItem.Document": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The unique identifier for the document"
},
"type": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.DocumentType"
}
],
"description": "The type of document, e.g. \"template\""
},
"name": {
"type": "string",
"readOnly": true,
"description": "The name of the document"
}
},
"description": "Document represents the document in a schedule",
"title": "ScheduleItem.Document",
"required": [
"id",
"type"
]
},
"s12.schedules.v1.ScheduleItem.DocumentType": {
"type": "string",
"enum": [
"DOCUMENT_TYPE_UNSPECIFIED",
"TEMPLATE"
],
"default": "DOCUMENT_TYPE_UNSPECIFIED",
"description": "- DOCUMENT_TYPE_UNSPECIFIED: Unspecified document type\n - TEMPLATE: Inspection Template",
"title": "DocumentType is the type of document (e.g. template)"
},
"s12.schedules.v1.ScheduleItem.Entity": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The unique identifier for the entity"
},
"type": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.EntityType"
}
],
"description": "The type of entity, e.g. \"user\" or \"role\""
},
"name": {
"type": "string",
"readOnly": true,
"description": "The name of the entity"
}
},
"description": "Entity represent the entity in a schedule, either creator or assignee",
"title": "ScheduleItem.Entity",
"required": [
"id",
"type"
]
},
"s12.schedules.v1.ScheduleItem.EntityType": {
"type": "string",
"enum": [
"ENTITY_TYPE_UNSPECIFIED",
"USER",
"ROLE"
],
"default": "ENTITY_TYPE_UNSPECIFIED",
"description": "- ENTITY_TYPE_UNSPECIFIED: Unspecified entity type\n - USER: User\n - ROLE: Role",
"title": "EntityType is the type of entity, either a user or a role"
},
"s12.schedules.v1.ScheduleItem.MustComplete": {
"type": "string",
"enum": [
"MUST_COMPLETE_UNSPECIFIED",
"ONE",
"ALL"
],
"default": "MUST_COMPLETE_UNSPECIFIED",
"description": "- MUST_COMPLETE_UNSPECIFIED: Unspecified must complete value\n - ONE: Schedule must be completed by one assignee\n - ALL: Schedule must be completed by all assignees",
"title": "MustComplete is whom must complete a given schedule, either one assignee or\nall assignees"
},
"s12.schedules.v1.ScheduleItem.NextOccurrence": {
"type": "object",
"properties": {
"start": {
"type": "string",
"format": "date-time",
"description": "The timestamp in the Internet Date-Time format when the next occurrence will occur"
},
"due": {
"type": "string",
"format": "date-time",
"description": "The timestamp in the Internet Date-Time format when the next occurrence is due by"
}
},
"description": "NextOccurrence is the next time the schedule item will occur for assignees",
"title": "ScheduleItem.NextOccurrence"
},
"s12.schedules.v1.ScheduleItem.Reminder": {
"type": "object",
"properties": {
"event": {
"allOf": [
{
"$ref": "#/$defs/s12.schedules.v1.ScheduleItem.ReminderEventType"
}
],
"description": "On what event to remind the assignees"
},
"duration": {
"type": "string",
"description": "ISO8601 duration string, e.g. PT1H. How long before the event to remind\nthe assignees."
}
},
"description": "Reminder represents a reminder for a schedule item",
"title": "ScheduleItem.Reminder",
"required": [
"event",
"duration"
]
},
"s12.schedules.v1.ScheduleItem.ReminderEventType": {
"type": "string",
"enum": [
"REMINDER_EVENT_TYPE_UNSPECIFIED",
"START",
"DUE"
],
"default": "REMINDER_EVENT_TYPE_UNSPECIFIED",
"description": "- REMINDER_EVENT_TYPE_UNSPECIFIED: Unspecified reminder event type\n - START: Default value - start of the schedule\n - DUE: End of the schedule",
"title": "ReminderEventType is the type of reminder event"
},
"s12.schedules.v1.ScheduleItem.StartTime": {
"type": "object",
"properties": {
"hour": {
"type": "integer",
"format": "int32",
"description": "The hour of the day to start the schedule"
},
"minute": {
"type": "integer",
"format": "int32",
"description": "The minute of the day to start the schedule"
}
},
"description": "StartTime represents the start time of a schedule item",
"title": "ScheduleItem.StartTime",
"required": [
"hour",
"minute"
]
},
"s12.schedules.v1.ScheduleItem.Status": {
"type": "string",
"enum": [
"STATUS_UNSPECIFIED",
"ACTIVE",
"PAUSED",
"NO_TEMPLATE",
"NO_ASSIGNEE",
"FINISHED",
"SUBSCRIPTION_INACTIVE",
"NO_SITE"
],
"default": "STATUS_UNSPECIFIED",
"description": "- STATUS_UNSPECIFIED: Unspecified status value\n - ACTIVE: Default value - schedule item is still active\n - PAUSED: Schedule has been paused e.g. manually paused/org frozen\n - NO_TEMPLATE: The template used for this schedule item has been deleted/archived\n - NO_ASSIGNEE: No valid assignees exist for this schedule item anymore\n - FINISHED: The schedule item has hit its end date or count limit and is now complete\n - SUBSCRIPTION_INACTIVE: User/org subscription is inactive\n - NO_SITE: The site used for this schedule has been removed",
"title": "Status is the current status of the schedule item"
}
}
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/safetyculture-s12-schedules-v1-update-schedule-item"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.