Add schedule entry
Schedule an employee on a job cost centre for a time block.
POST https://cotlet.dev/api/v1/simpro/jobs/{job_id}/schedule-entries
write Confirm
Creates a schedule block for one employee on a job, section and cost centre and returns it. If timesheets are locked for that date, Simpro refuses it. The block shows in that employee's schedule. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| job_id integer required | integer | Job ID from list_jobs. |
| section_id integer required | integer | Section ID from get_job. |
| cost_centre_id integer required | integer | Cost centre ID from get_job. |
| employee_id integer required | integer | Employee ID from get_schedule. |
| date string required | string | ISO date. |
| start_time string required | string | HH:MM, 24 hour. |
| end_time string required | string | HH:MM, 24 hour. |
Request
curl -X POST https://cotlet.dev/api/v1/simpro/jobs/20871/schedule-entries \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"section_id":1,"cost_centre_id":2,"employee_id":41,"date":"2026-10-16","start_time":"08:00","end_time":"11:30"}' result = client.call("simpro", "add_schedule_entry", {"job_id":20871,"section_id":1,"cost_centre_id":2,"employee_id":41,"date":"2026-10-16","start_time":"08:00","end_time":"11:30"}) const result = await cotlet.call('simpro', 'add_schedule_entry', {"job_id":20871,"section_id":1,"cost_centre_id":2,"employee_id":41,"date":"2026-10-16","start_time":"08:00","end_time":"11:30"}); cotlet call simpro add_schedule_entry --data '{"job_id":20871,"section_id":1,"cost_centre_id":2,"employee_id":41,"date":"2026-10-16","start_time":"08:00","end_time":"11:30"}' Example response
{
"schedule_id": 66120,
"job_id": 20871,
"cost_centre": "Plumbing",
"employee": "Sam Ortiz",
"date": "2026-10-16",
"start": "08:00",
"end": "11:30"
}