curl https://api.solvice.io/v2/fill/demo -H "Authorization: <<apiKey>>" | \
curl https://api.solvice.io/v2/fill/solve -H "Authorization: <<apiKey>>" \
-X POST -H "Content-Type: application/json" -d @-
FILL request
payload and send it to the /v2/solve
endpoint. You can find the
schema of the request in the Schemas section.
A FILL request will consist of employees (schema:employees) to be assigned to shifts (schema:shifts).
📘 Postman Download postman collectionUnderneath you can find an example
request
, solution
and explanation
json.
{
"employees": [
{
"name": "employee 1",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 2",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 3",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 4",
"skills": [
{
"name": "kitchen"
}
]
},
{
"name": "employee 5",
"skills": [
{
"name": "kitchen"
}
]
},
{
"name": "employee 6",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 7",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 8",
"skills": [
{
"name": "kitchen"
}
]
},
{
"name": "employee 9",
"skills": [
{
"name": "bar"
}
]
},
{
"name": "employee 10",
"skills": [
{
"name": "bar"
}
]
}
],
"shifts": [
{
"name": "shift 1",
"from": "2024-04-18T08:00:00",
"to": "2024-04-18T17:00:00",
"skills": [
{
"name": "kitchen"
}
],
"value": 2
},
{
"name": "shift 2",
"from": "2024-04-19T08:00:00",
"to": "2024-04-19T17:00:00",
"skills": [
{
"name": "kitchen"
}
],
"value": 2
},
{
"name": "shift 3",
"from": "2024-04-20T08:00:00",
"to": "2024-04-20T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 4",
"from": "2024-04-21T08:00:00",
"to": "2024-04-21T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 5",
"from": "2024-04-22T08:00:00",
"to": "2024-04-22T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 6",
"from": "2024-04-23T08:00:00",
"to": "2024-04-23T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 7",
"from": "2024-04-24T08:00:00",
"to": "2024-04-24T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 8",
"from": "2024-04-25T08:00:00",
"to": "2024-04-25T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 9",
"from": "2024-04-26T08:00:00",
"to": "2024-04-26T17:00:00",
"skills": [
{
"name": "bar"
}
],
"value": 2
},
{
"name": "shift 10",
"from": "2024-04-27T08:00:00",
"to": "2024-04-27T17:00:00",
"skills": [
{
"name": "kitchen"
}
],
"value": 2
}
]
}
{
"score": {
"hardScore": 0,
"mediumScore": 0,
"softScore": -20,
"feasible": true
},
"assignments": [
{
"shift": "shift 1",
"from": "2024-04-18T08:00:00",
"to": "2024-04-18T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 4"
},
{
"shift": "shift 1",
"from": "2024-04-18T08:00:00",
"to": "2024-04-18T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 5"
},
{
"shift": "shift 2",
"from": "2024-04-19T08:00:00",
"to": "2024-04-19T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 4"
},
{
"shift": "shift 2",
"from": "2024-04-19T08:00:00",
"to": "2024-04-19T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 5"
},
{
"shift": "shift 3",
"from": "2024-04-20T08:00:00",
"to": "2024-04-20T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 3",
"from": "2024-04-20T08:00:00",
"to": "2024-04-20T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 4",
"from": "2024-04-21T08:00:00",
"to": "2024-04-21T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 4",
"from": "2024-04-21T08:00:00",
"to": "2024-04-21T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 5",
"from": "2024-04-22T08:00:00",
"to": "2024-04-22T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 5",
"from": "2024-04-22T08:00:00",
"to": "2024-04-22T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 6",
"from": "2024-04-23T08:00:00",
"to": "2024-04-23T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 6",
"from": "2024-04-23T08:00:00",
"to": "2024-04-23T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 7",
"from": "2024-04-24T08:00:00",
"to": "2024-04-24T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 7",
"from": "2024-04-24T08:00:00",
"to": "2024-04-24T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 8",
"from": "2024-04-25T08:00:00",
"to": "2024-04-25T17:00:00",
"skills": [
"bar"
],
"employee": "employee 1"
},
{
"shift": "shift 8",
"from": "2024-04-25T08:00:00",
"to": "2024-04-25T17:00:00",
"skills": [
"bar"
],
"employee": "employee 2"
},
{
"shift": "shift 9",
"from": "2024-04-26T08:00:00",
"to": "2024-04-26T17:00:00",
"skills": [
"bar"
],
"employee": "employee 3"
},
{
"shift": "shift 9",
"from": "2024-04-26T08:00:00",
"to": "2024-04-26T17:00:00",
"skills": [
"bar"
],
"employee": "employee 6"
},
{
"shift": "shift 10",
"from": "2024-04-27T08:00:00",
"to": "2024-04-27T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 4"
},
{
"shift": "shift 10",
"from": "2024-04-27T08:00:00",
"to": "2024-04-27T17:00:00",
"skills": [
"kitchen"
],
"employee": "employee 5"
}
]
}
{
"score": {
"hardScore": 0,
"mediumScore": 0,
"softScore": -20,
"feasible": true
},
"conflicts": [
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
},
{
"constraint": "Employee Skill Level Match Soft",
"score": "-1soft"
}
],
"unresolved": [
{
"constraint": "Employee Skill Level Match Soft",
"score": "-20soft"
}
]
}
Was this page helpful?