Submit a planning request

POST /v1/plan
application/json

Body Required

  • customerCode string Required
  • start string(date-time) Required
  • employees array[object]
    Hide employees attributes Show employees attributes object
    • id string Required
    • homeAddress object
      Hide homeAddress attributes Show homeAddress attributes object
      • address string Required
      • zipCode string Required
      • city string Required
    • homeGeo object
      Hide homeGeo attributes Show homeGeo attributes object
      • lat number(double) Required
      • lng number(double) Required
    • workHoursMonday integer Required
    • workHoursTuesday integer Required
    • workHoursWednesday integer Required
    • workHoursThursday integer Required
    • workHoursFriday integer Required
    • workHoursSaturday integer Required
    • workHoursSunday integer Required
    • unavailableDates array[object]
      Hide unavailableDates attributes Show unavailableDates attributes object
      • start string(date) Required
      • end string(date) Required
  • locations array[object]
    Hide locations attributes Show locations attributes object
    • id string Required
    • address object
      Hide address attributes Show address attributes object
      • address string Required
      • zipCode string Required
      • city string Required
    • geo object
      Hide geo attributes Show geo attributes object
      • lat number(double) Required
      • lng number(double) Required
  • workOrderAssignmentRules array[object]
    Hide workOrderAssignmentRules attributes Show workOrderAssignmentRules attributes object
    • locationId string Required
    • durationInMinutes integer Required
    • workOrderIds array[string] Required
    • priority integer Required
    • interval integer Required
    • intervalUnit string Required

      Values are Week, Month, or Year.

    • minimalDaysBetween integer Required
    • expectMaintenance boolean Required
    • maintenanceDate string(date) | null
    • availableDaysOfWeek array[integer]
    • unavailableDates array[object]
      Hide unavailableDates attributes Show unavailableDates attributes object
      • start string(date) Required
      • end string(date) Required
    • requiredEmployeeIds array[string]
    • requiredStartTime string(time) | null
    • lastWorkOrderDateForInterval string(date) | null
  • pinnedAssignments array[object]
    Hide pinnedAssignments attributes Show pinnedAssignments attributes object
    • workOrderId string Required
    • locationId string Required
    • employeeId string Required
    • start string(date-time) Required
    • end string(date-time) Required
  • holidays array[string(date)]

Responses

  • 200 application/json

    Planning submitted successfully

    Hide response attribute Show response attribute object
    • id string Required
POST /v1/plan
curl \
 --request POST 'https://api.planrobot.nl/v1/plan?key=api_token_value' \
 --header "Content-Type: application/json" \
 --data '{"customerCode":"string","start":"2025-05-04T09:42:00Z","employees":[{"id":"string","homeAddress":{"address":"string","zipCode":"string","city":"string"},"homeGeo":{"lat":42.0,"lng":42.0},"workHoursMonday":42,"workHoursTuesday":42,"workHoursWednesday":42,"workHoursThursday":42,"workHoursFriday":42,"workHoursSaturday":42,"workHoursSunday":42,"unavailableDates":[{"start":"2025-05-04","end":"2025-05-04"}]}],"locations":[{"id":"string","address":{"address":"string","zipCode":"string","city":"string"},"geo":{"lat":42.0,"lng":42.0}}],"workOrderAssignmentRules":[{"locationId":"string","durationInMinutes":42,"workOrderIds":["string"],"priority":42,"interval":42,"intervalUnit":"Week","minimalDaysBetween":42,"expectMaintenance":true,"maintenanceDate":"2025-05-04","availableDaysOfWeek":[42],"unavailableDates":[{"start":"2025-05-04","end":"2025-05-04"}],"requiredEmployeeIds":["string"],"requiredStartTime":"09:42:00Z","lastWorkOrderDateForInterval":"2025-05-04"}],"pinnedAssignments":[{"workOrderId":"string","locationId":"string","employeeId":"string","start":"2025-05-04T09:42:00Z","end":"2025-05-04T09:42:00Z"}],"holidays":["2025-05-04"]}'
Request examples
{
  "customerCode": "string",
  "start": "2025-05-04T09:42:00Z",
  "employees": [
    {
      "id": "string",
      "homeAddress": {
        "address": "string",
        "zipCode": "string",
        "city": "string"
      },
      "homeGeo": {
        "lat": 42.0,
        "lng": 42.0
      },
      "workHoursMonday": 42,
      "workHoursTuesday": 42,
      "workHoursWednesday": 42,
      "workHoursThursday": 42,
      "workHoursFriday": 42,
      "workHoursSaturday": 42,
      "workHoursSunday": 42,
      "unavailableDates": [
        {
          "start": "2025-05-04",
          "end": "2025-05-04"
        }
      ]
    }
  ],
  "locations": [
    {
      "id": "string",
      "address": {
        "address": "string",
        "zipCode": "string",
        "city": "string"
      },
      "geo": {
        "lat": 42.0,
        "lng": 42.0
      }
    }
  ],
  "workOrderAssignmentRules": [
    {
      "locationId": "string",
      "durationInMinutes": 42,
      "workOrderIds": [
        "string"
      ],
      "priority": 42,
      "interval": 42,
      "intervalUnit": "Week",
      "minimalDaysBetween": 42,
      "expectMaintenance": true,
      "maintenanceDate": "2025-05-04",
      "availableDaysOfWeek": [
        42
      ],
      "unavailableDates": [
        {
          "start": "2025-05-04",
          "end": "2025-05-04"
        }
      ],
      "requiredEmployeeIds": [
        "string"
      ],
      "requiredStartTime": "09:42:00Z",
      "lastWorkOrderDateForInterval": "2025-05-04"
    }
  ],
  "pinnedAssignments": [
    {
      "workOrderId": "string",
      "locationId": "string",
      "employeeId": "string",
      "start": "2025-05-04T09:42:00Z",
      "end": "2025-05-04T09:42:00Z"
    }
  ],
  "holidays": [
    "2025-05-04"
  ]
}
Response examples (200)
{
  "id": "string"
}