Namespace Reference — Modules

Rota

Curated JQL namespaces and examples for rota management.

Rota namespaces cover tenant settings, planning boards, shift templates, dated shifts, assignments, patterns, availability, swap requests, open-shift claims, and compliance rules.

The in-product guide is /rota/help. Configurator documentation starts at /modules/rota-overview.

Key namespaces and models

  • rota.RotaSettings
  • rota.Rota
  • rota.ShiftTemplate
  • rota.RotaShift
  • rota.RotaAssignment
  • rota.RotaPattern
  • rota.RotaPatternSlot
  • rota.EmployeeAvailability
  • rota.ShiftSwapRequest
  • rota.OpenShiftClaim
  • rota.RotaComplianceRule

Common controller intents

Use schema: "controller" and set intent to the action name.

  • rota.Rota.getDashboard
  • rota.Rota.getBoard
  • rota.Rota.getMySchedule
  • rota.Rota.getEmployeeSchedule
  • rota.Rota.getConflicts
  • rota.Rota.getCoverageReport
  • rota.Rota.getMyBadgeCount
  • rota.Rota.publish
  • rota.Rota.copyWeek
  • rota.Rota.applyPattern
  • rota.Rota.bulkCreateShifts
  • rota.Rota.autoFill
  • rota.Rota.exportRota

Common model intents

Most listed model namespaces support retrieve, retrieveOne, create, update / patch, deleteOne, metadata, and aggregate, subject to permissions. Use consequence only where the model implements on_<consequence> (for example assignment cancel, confirm, decline).

Retrieve example

json
1{ 2 "__meta__": { 3 "schema": "model", 4 "namespace": "rota.Rota", 5 "intent": "retrieve", 6 "authenticationClass": "jwt", 7 "ordering": "name", 8 "limit": 20 9 }, 10 "id": null, 11 "name": null, 12 "status": null, 13 "groups": { 14 "id": null, 15 "name": null 16 } 17}

Controller example — board for a week

json
1{ 2 "__meta__": { 3 "schema": "controller", 4 "namespace": "rota.Rota", 5 "intent": "getBoard", 6 "authenticationClass": "jwt" 7 }, 8 "rotaId": 1, 9 "startDate": "2026-08-17", 10 "endDate": "2026-08-23" 11}

getBoard returns shifts, assignments (with presence when Attendance data exists), open slots, and violations. Assignment relation fields in create payloads must be scalar ids, not nested objects.

Create example

json
1{ 2 "__meta__": { 3 "schema": "model", 4 "namespace": "rota.ShiftTemplate", 5 "intent": "create", 6 "authenticationClass": "jwt", 7 "return": { 8 "id": null, 9 "name": null, 10 "alias": null 11 } 12 }, 13 "name": "Early", 14 "alias": "early", 15 "startTime": "07:00", 16 "endTime": "15:00", 17 "defaultHeadcount": 2, 18 "colour": "#6F49AB" 19}

For examples that include foreign keys, numeric ids must refer to records in the same tenant and visible to the authenticated user.