← API reference
CANONICAL TYPE REFERENCE

ShiftDefinitionState

A reusable shift template — a start/end clock time and the weekdays it recurs on. Tenant-scoped; work centers reference it via their shift profiles rather than restating times.

TypeID of this shift definition (prefix "shd", e.g. "shd_01K…").

nameString!

Human-readable label for the shift (e.g. "Early", "Night"). Must not be blank.

startTimeString!

Local clock time the shift starts, as 24-hour "HH:mm" (e.g. "22:00"). Wall-clock only — it carries no date; it is read in the tenant's time zone (settings.time.timeZone).

endTimeString!

Local clock time the shift ends, as 24-hour "HH:mm" (e.g. "06:00"). May be earlier than startTime, which means the shift runs past midnight.

activeDays[Int!]!

ISO-8601 weekdays the shift runs on (1 = Monday … 7 = Sunday). At least one day is required; each day refers to the day the shift starts on.

isOvernightBoolean!

Derived: true when endTime is earlier than startTime, i.e. the shift spans midnight.

ISO-8601 timestamp of when this shift definition was first persisted.

ISO-8601 timestamp of the last successful write to this shift definition; equal to createdAt until it is first updated.

View exact SDL
"""
A reusable shift template — a start/end clock time and the weekdays it recurs on. Tenant-scoped; work centers reference it via their shift profiles rather than restating times.
"""
type ShiftDefinitionState @iac_resource(name: "shift_definition") @iac_ops(create: "createShiftDefinition", read: "getShiftDefinition", update: "updateShiftDefinition", delete: "deleteShiftDefinition") {
  """TypeID of this shift definition (prefix "shd", e.g. "shd_01K…")."""
  id: ShiftDefinitionID! @iac_identity(assignedBy: SERVER) @iac_computed
  """
  Human-readable label for the shift (e.g. "Early", "Night"). Must not be blank.
  """
  name: String!
  """
  Local clock time the shift starts, as 24-hour "HH:mm" (e.g. "22:00"). Wall-clock only — it carries no date; it is read in the tenant's time zone (settings.time.timeZone).
  """
  startTime: String!
  """
  Local clock time the shift ends, as 24-hour "HH:mm" (e.g. "06:00"). May be earlier than startTime, which means the shift runs past midnight.
  """
  endTime: String!
  """
  ISO-8601 weekdays the shift runs on (1 = Monday … 7 = Sunday). At least one day is required; each day refers to the day the shift starts on.
  """
  activeDays: [Int!]!
  """
  Derived: true when endTime is earlier than startTime, i.e. the shift spans midnight.
  """
  isOvernight: Boolean! @iac_computed
  """ISO-8601 timestamp of when this shift definition was first persisted."""
  createdAt: ISO8601! @iac_computed
  """
  ISO-8601 timestamp of the last successful write to this shift definition; equal to createdAt until it is first updated.
  """
  updatedAt: ISO8601! @iac_computed
}

One stable address across all schema views. Follow a field’s type to explore connections between domains.