Schedules

circle-exclamation

Schedules define time-based rules using iCalendar (RFC 5545arrow-up-right) format for recurring events, working hours, and time-triggered automation.

Queries

schedule

Retrieves a schedule by its ID.

schedule(id: ID!): Schedule

Arguments

Name
Type
Description

id

ID!

The ID of the schedule to retrieve.

Output types:

chevron-rightSchedulehashtag

A schedule definition for work hours, maintenance windows, or other time-based rules.

Implements: Node, Titled, Customizable, Versioned

Field
Type
Description

id

ID!

A globally unique identifier. This ID is opaque and should not be parsed by clients.

version

Int!

The version number for optimistic locking. Incremented on each update. Can be provided in update/delete mutations to prevent lost updates. If omitted, the update proceeds without stale-read protection.

title

String!

The human-readable display name.

organization

The organization that owns this schedule.

scheduleData

ScheduleData!

The calendar and time interval definitions for this schedule.

customFields

JSON!

Custom field values as a key-value map. Keys are CustomFieldDefinition codes. System-reserved codes (geojson_data, schedule_data, device) are excluded from this map and exposed through dedicated typed fields on the entity instead.

chevron-rightOrganization (entity)hashtag

An organization in the hierarchy that owns entities and users.

Implements: Node, Versioned, Titled

Field
Type
Description

id

ID!

A globally unique identifier. This ID is opaque and should not be parsed by clients.

version

Int!

The version number for optimistic locking. Incremented on each update. Can be provided in update/delete mutations to prevent lost updates. If omitted, the update proceeds without stale-read protection.

title

String!

The human-readable display name.

externalId

String

An external system identifier for integration purposes.

isActive

Boolean!

Whether this organization is active.

features

The feature flags enabled for this organization.

parent

The parent organization in the hierarchy. Null for root organizations.

children

The child organizations.

members

The members of this organization.

devices

The devices owned by this organization.

assets

The assets owned by this organization.

geoObjects

The geographic objects owned by this organization.

schedules

The schedules owned by this organization.


schedules

Lists schedules for an organization.

Arguments

Name
Type
Description

organizationId

ID!

The organization to retrieve schedules for.

filter

ScheduleFilter

Filtering options for the returned schedules.

first

Int

The first n elements from the paginated listarrow-up-right.

after

String

The elements that come after the specified cursorarrow-up-right.

last

Int

The last n elements from the paginated listarrow-up-right.

before

String

The elements that come before the specified cursorarrow-up-right.

orderBy

ScheduleOrder

The ordering options for the returned schedules.

Input types:

chevron-rightScheduleFilterhashtag

Filtering options for schedules.

Field
Type
Description

titleContains

String

Partial match on title (case-insensitive contains).

customFields

Filter by custom field values.

chevron-rightCustomFieldFilterhashtag

A filter condition for a custom field value.

Field
Type
Description

code

Code!

The custom field code to filter by.

operator

The comparison operator.

value

The value to compare against. Null for IS_NULL and IS_NOT_NULL operators.

chevron-rightCustomFieldFilterValuehashtag

Typed filter value for custom fields. Exactly one field must be set (@oneOf). Choose the variant that matches the custom field's data type:

FieldType
Variant
Example

STRING, TEXT

string

{ string: "hello" }

NUMBER

number

{ number: 42.0 }

BOOLEAN

boolean

{ boolean: true }

DATE

date

{ date: "2024-01-15" }

DATETIME

datetime

{ datetime: "2024-01-15T10:30:00Z" }

OPTIONS, CATALOG, TAG

string

{ string: "option_code" }

DEVICE, REFERENCE

id

{ id: "019a6a3f-..." }

(IN operator)

stringList

{ stringList: ["a", "b"] }

(IN operator)

idList

{ idList: ["uuid1", "uuid2"] }

This input type uses @oneOf - exactly one field must be provided.

Field
Type
Description

string

String

String value — for STRING, TEXT, OPTIONS, CATALOG, TAG fields.

number

Float

Numeric value — for NUMBER fields.

boolean

Boolean

Boolean value — for BOOLEAN fields.

date

Date

Date value — for DATE fields.

datetime

DateTime

Date-time value — for DATETIME fields.

id

ID

ID value — for DEVICE, REFERENCE fields.

stringList

[String!]

List of strings — for IN operator on string-based fields.

idList

[ID!]

List of IDs — for IN operator on reference fields.

chevron-rightScheduleOrderhashtag

Ordering options for schedules.

Field
Type
Description

field

The standard field to order by. Mutually exclusive with customFieldCode.

customFieldCode

Code

The custom field code to order by. Mutually exclusive with field.

direction

The direction to order.

Output types:

chevron-rightScheduleConnectionhashtag

A paginated list of Schedule items.

Implements: Connection

Field
Type
Description

edges

A list of edges.

nodes

A list of nodes in the connection (without edge metadata).

pageInfo

Information about the current page.

total

The total count of items matching the filter.

chevron-rightPageInfo (entity)hashtag

Information about the current page in a paginated connection.

Field
Type
Description

hasNextPage

Boolean!

Whether more items exist after the current page.

hasPreviousPage

Boolean!

Whether more items exist before the current page.

startCursor

String

The cursor pointing to the first item in the current page.

endCursor

String

The cursor pointing to the last item in the current page.


Mutations

scheduleCreate

Creates a new schedule.

Arguments

Name
Type
Description

input

ScheduleCreateInput!

The input fields for creating the schedule.

Input types:

chevron-rightScheduleCreateInputhashtag

Input for creating a new schedule.

Field
Type
Description

organizationId

ID!

The organization that will own the schedule.

title

String!

The schedule display name.

scheduleData

ScheduleData!

The schedule data.

customFields

The custom field values.

chevron-rightCustomFieldsPatchInputhashtag

Input for updating custom field values using a patch model.

Field
Type
Description

set

JSON

Fields to set or update as a key-value map.

unset

[Code!]

Field codes to remove.

Output types:

chevron-rightSchedulePayloadhashtag

The result of a schedule mutation.

Field
Type
Description

schedule

The created or updated schedule.

chevron-rightSchedule (entity)hashtag

A schedule definition for work hours, maintenance windows, or other time-based rules.

Implements: Node, Titled, Customizable, Versioned

Field
Type
Description

id

ID!

A globally unique identifier. This ID is opaque and should not be parsed by clients.

version

Int!

The version number for optimistic locking. Incremented on each update. Can be provided in update/delete mutations to prevent lost updates. If omitted, the update proceeds without stale-read protection.

title

String!

The human-readable display name.

organization

The organization that owns this schedule.

scheduleData

ScheduleData!

The calendar and time interval definitions for this schedule.

customFields

JSON!

Custom field values as a key-value map. Keys are CustomFieldDefinition codes. System-reserved codes (geojson_data, schedule_data, device) are excluded from this map and exposed through dedicated typed fields on the entity instead.


scheduleUpdate

Updates an existing schedule.

Arguments

Name
Type
Description

input

ScheduleUpdateInput!

The input fields for updating the schedule.

Input types:

chevron-rightScheduleUpdateInputhashtag

Input for updating an existing schedule.

Field
Type
Description

id

ID!

The schedule ID to update.

version

Int

The current version for optimistic locking. If omitted, auto-increments without conflict check.

title

String

The new display name.

scheduleData

ScheduleData

The new schedule data.

customFields

The custom field changes.

chevron-rightCustomFieldsPatchInputhashtag

Input for updating custom field values using a patch model.

Field
Type
Description

set

JSON

Fields to set or update as a key-value map.

unset

[Code!]

Field codes to remove.

Output types:

chevron-rightSchedulePayloadhashtag

The result of a schedule mutation.

Field
Type
Description

schedule

The created or updated schedule.

chevron-rightSchedule (entity)hashtag

A schedule definition for work hours, maintenance windows, or other time-based rules.

Implements: Node, Titled, Customizable, Versioned

Field
Type
Description

id

ID!

A globally unique identifier. This ID is opaque and should not be parsed by clients.

version

Int!

The version number for optimistic locking. Incremented on each update. Can be provided in update/delete mutations to prevent lost updates. If omitted, the update proceeds without stale-read protection.

title

String!

The human-readable display name.

organization

The organization that owns this schedule.

scheduleData

ScheduleData!

The calendar and time interval definitions for this schedule.

customFields

JSON!

Custom field values as a key-value map. Keys are CustomFieldDefinition codes. System-reserved codes (geojson_data, schedule_data, device) are excluded from this map and exposed through dedicated typed fields on the entity instead.


scheduleDelete

Deletes a schedule.

Arguments

Name
Type
Description

input

ScheduleDeleteInput!

The input fields for deleting the schedule.

Input types:

chevron-rightScheduleDeleteInputhashtag

Input for deleting a schedule.

Field
Type
Description

id

ID!

The schedule ID to delete.

version

Int

The current version for optimistic locking. If omitted, auto-increments without conflict check.

Output types:

chevron-rightDeletePayloadhashtag

The result of a delete mutation.

Field
Type
Description

deletedId

ID!

The ID of the deleted entity.


Objects

Schedule

A schedule definition for work hours, maintenance windows, or other time-based rules.

Implements: Node, Titled, Customizable, Versioned

Field
Type
Description

id

ID!

A globally unique identifier. This ID is opaque and should not be parsed by clients.

version

Int!

The version number for optimistic locking. Incremented on each update. Can be provided in update/delete mutations to prevent lost updates. If omitted, the update proceeds without stale-read protection.

title

String!

The human-readable display name.

organization

The organization that owns this schedule.

scheduleData

ScheduleData!

The calendar and time interval definitions for this schedule.

customFields

JSON!

Custom field values as a key-value map. Keys are CustomFieldDefinition codes. System-reserved codes (geojson_data, schedule_data, device) are excluded from this map and exposed through dedicated typed fields on the entity instead.


SchedulePayload

The result of a schedule mutation.

Field
Type
Description

schedule

The created or updated schedule.


Inputs

ScheduleFilter

Filtering options for schedules.

Field
Type
Description

titleContains

String

Partial match on title (case-insensitive contains).

customFields

Filter by custom field values.


ScheduleOrder

Ordering options for schedules.

Field
Type
Description

field

The standard field to order by. Mutually exclusive with customFieldCode.

customFieldCode

Code

The custom field code to order by. Mutually exclusive with field.

direction

The direction to order.


ScheduleCreateInput

Input for creating a new schedule.

Field
Type
Description

organizationId

ID!

The organization that will own the schedule.

title

String!

The schedule display name.

scheduleData

ScheduleData!

The schedule data.

customFields

The custom field values.


ScheduleUpdateInput

Input for updating an existing schedule.

Field
Type
Description

id

ID!

The schedule ID to update.

version

Int

The current version for optimistic locking. If omitted, auto-increments without conflict check.

title

String

The new display name.

scheduleData

ScheduleData

The new schedule data.

customFields

The custom field changes.


ScheduleDeleteInput

Input for deleting a schedule.

Field
Type
Description

id

ID!

The schedule ID to delete.

version

Int

The current version for optimistic locking. If omitted, auto-increments without conflict check.


Enums

ScheduleOrderField

Fields available for ordering schedules.

Value
Description

TITLE

Order by title.


Scalars

ScheduleData

A schedule data structure containing time intervals and recurrence rules.

Property
Value

Format

iCalendar-compatible JSON

Example

{"intervals": [...], "rrule": "FREQ=WEEKLY;BYDAY=MO,WE,FR"}


Pagination types

ScheduleConnection

A paginated list of Schedule items.

Implements: Connection

Field
Type
Description

edges

A list of edges.

nodes

A list of nodes in the connection (without edge metadata).

pageInfo

Information about the current page.

total

The total count of items matching the filter.


ScheduleEdge

An edge in the Schedule connection.

Implements: Edge

Field
Type
Description

cursor

String!

An opaque cursor for this edge.

node

The schedule at the end of the edge.


Last updated

Was this helpful?