Skip to content

Developer portal

Allocation guide

Shift grids, skills, and coverage rules — documented now, solver shipping next.

Pilot

When to use allocation

Cover shifts with the right skills while minimizing overtime and respecting fatigue rules.

Request fields

FieldTypeRequiredDescription
shifts[].idstringYes

Shift to cover.

shifts[].requiredSkillstringNo

Skill required on the shift.

staff[].namestringYes

Person identifier.

staff[].skillsstring[]No

Certifications and roles.

constraints[]string[]No

Coverage and fatigue rules.

Example payload

{
  "type": "allocation",
  "shifts": [
    {
      "id": "morning",
      "requiredSkill": "operator"
    },
    {
      "id": "swing",
      "requiredSkill": "operator"
    },
    {
      "id": "night",
      "requiredSkill": "lead"
    }
  ],
  "staff": [
    {
      "name": "Alicia",
      "skills": [
        "operator",
        "lead"
      ]
    },
    {
      "name": "Noah",
      "skills": [
        "operator"
      ]
    },
    {
      "name": "Priya",
      "skills": [
        "operator"
      ]
    },
    {
      "name": "Devin",
      "skills": [
        "lead"
      ]
    }
  ],
  "constraints": [
    "No back-to-back night and morning shifts",
    "Minimize overtime"
  ]
}