# Accept Absence Day Off Request Source: https://apidocs.sesametime.com/api-reference/acceptabsencedayoffrequest POST /schedule/v1/absence-day-off-requests/{id}/accept # Accept Vacation Day Off Request Source: https://apidocs.sesametime.com/api-reference/acceptvacationdayoffrequest POST /schedule/v1/vacation-day-off-requests/{id}/accept # Add days off to vacation calendar Source: https://apidocs.sesametime.com/api-reference/adddaysofftovacationcalendar POST /schedule/v1/vacation-calendars/days-off Adds days off to a vacation calendar. The system automatically finds the correct calendar based on employee, vacation type and year. If the calendar doesn't exist, it will be created. # Answer a candidate recruitment evaluation Source: https://apidocs.sesametime.com/api-reference/answercandidaterecruitmentevaluation POST /poll/v1/evaluations/candidate-recruitment/{evaluationId} Submit answers for a candidate recruitment evaluation. Each answer must include either 'questionOptionIds' for choice-based questions or 'answer' for text-based questions, but not both. The required field depends on the question type: **Choice-based questions** (require questionOptionIds): - radio: Single choice selection - check: Multiple choice selection - faces: Emoji/face rating selection - range: Numeric range selection - ranking: Order-based selection - stars: Star rating selection - organization_chart: Organizational hierarchy selection **Text-based questions** (require answer): - text: Free text response - float: Numeric value input # Assign a compensation to an employee Source: https://apidocs.sesametime.com/api-reference/assigncompensationtoemployee POST /contract/v1/employees/{employeeId}/compensations/{compensationId} Assigns an existing compensation to an employee. **Requirements:** - The employee must have an active salary - The compensation's period must match the employee's salary period - The compensation's currency must match the employee's salary currency If these requirements are not met, a 422 error (IncompatibleCompensationException) is returned. # Assign an employee manager Source: https://apidocs.sesametime.com/api-reference/assignemployeemanager POST /core/v3/employee-managers # Assign Employees to Planner Source: https://apidocs.sesametime.com/api-reference/assignemployeestoplanner POST /schedule/v1/planners/{plannerId}/employees # Assign employees to a training Source: https://apidocs.sesametime.com/api-reference/assignemployeestotraining POST /training/v1/training-employees-assignations/{trainingId} # Assign an employee to a department Source: https://apidocs.sesametime.com/api-reference/assignemployeetodepartment POST /core/v3/employee-department-assignations # Assign employees to an entity group Source: https://apidocs.sesametime.com/api-reference/assignemployeetogroup POST /core/v3/entity-group-assignation # Assign an employee to an office Source: https://apidocs.sesametime.com/api-reference/assignemployeetooffice POST /core/v3/employee-office-assignations # Assign an Entity (Employee, Office, Department or EntityGroup) to a planned task Source: https://apidocs.sesametime.com/api-reference/assignentityreferencetoplannedtask POST /project/v1/planned-tasks-assignations # Assign Free Days to Employees in Planner Source: https://apidocs.sesametime.com/api-reference/assignfreedaystoemployeesinplanner POST /schedule/v1/planners/{plannerId}/free-days Marks a date range as free days for a list of employees in the given planner. Optionally accepts comments and time ranges for the free days. # Assign Holiday Calendar To Employee Source: https://apidocs.sesametime.com/api-reference/assignholidaycalendartoemployee POST /schedule/v1/holidays/{holidayCalendarId}/employees # Assign an owner to an entity group Source: https://apidocs.sesametime.com/api-reference/assignownertogroup POST /core/v3/entity-group-owners-assignation To assign a owner to an entity group, the employee must be assigned to the group first # Assign Role Source: https://apidocs.sesametime.com/api-reference/assignroles POST /core/v3/roles/assignation # Assign Shifts to Employees in Planner Source: https://apidocs.sesametime.com/api-reference/assignshiftstoemployeesinplanner POST /schedule/v1/planners/{plannerId}/shift-assignments # Assigns a vacation configuration to an employee Source: https://apidocs.sesametime.com/api-reference/assignvacationconfigurationtoemployee POST /schedule/v1/vacation-configurations-assignations/{vacationConfigurationId} # Bulk Update Check Incidences Source: https://apidocs.sesametime.com/api-reference/bulkupdatecheckincidences PUT /schedule/v1/check-incidences Update multiple check incidences at once # Automatic clock-in or clock-out based on current status Source: https://apidocs.sesametime.com/api-reference/clock POST /schedule/v1/work-entries/clock Performs an automatic clock-in if no open work entry exists, or clock-out if there's an open work entry. When closing with `withIncidence: true`, creates an incidence alert for the employee (useful for entries open from previous days). # Starts a new work entry right now Source: https://apidocs.sesametime.com/api-reference/clockin POST /schedule/v1/work-entries/clock-in # Ends the last work entry Source: https://apidocs.sesametime.com/api-reference/clockout POST /schedule/v1/work-entries/clock-out # Get contract payrolls Source: https://apidocs.sesametime.com/api-reference/contractpayrolls GET /contract/v1/contracts/contracts-for-payroll Retrieve labour and contract data for payroll purposes # Create Absence Calendar Source: https://apidocs.sesametime.com/api-reference/createabsencecalendar POST /schedule/v1/absence-calendars # Create Absence Day Off Request Source: https://apidocs.sesametime.com/api-reference/createabsencedayoffrequest POST /schedule/v1/absence-day-off-requests # Create an agreement Source: https://apidocs.sesametime.com/api-reference/createagreement POST /schedule/v1/agreements Create an agreement # Create Calendar Max Day Off Adjustment Source: https://apidocs.sesametime.com/api-reference/createcalendarmaxdayoffadjustment POST /schedule/v1/vacation-calendar/calendar/{calendarId}/adjustment Creates an adjustment to the maximum days off limit for a specific calendar. This endpoint is the recommended alternative to the deprecated maxDaysOff parameter in the vacation calendars endpoints. # Create a candidate Source: https://apidocs.sesametime.com/api-reference/createcandidate POST /recruitment/v1/candidates # Create a comment for a thread or for an entity reference Source: https://apidocs.sesametime.com/api-reference/createcomment POST /discussion/v1/comments Create a comment for a thread or for an entity reference # Create a new compensation Source: https://apidocs.sesametime.com/api-reference/createcompensation POST /contract/v1/compensations Creates a new compensation (complemento) for the authenticated company. **Compensation Types:** - `fixed`: Fixed amount (quantity required) - `variable`: Variable amount or percentage (quantity OR percentage required) - `additional`: Additional complement (quantity OR percentage required) **Valid Periods for Payroll:** - `weekly`: Weekly payment - `biweekly`: Every two weeks - `fortnightly`: First and second half of month - `monthly`: Monthly payment Note: `yearly` period is NOT valid for payroll compensations. **Important:** When assigning to employees, the compensation's period and currency must match the employee's active salary. # Create a contract Source: https://apidocs.sesametime.com/api-reference/createcontract POST /contract/v1/contracts # Create a contract annex Source: https://apidocs.sesametime.com/api-reference/createcontractannex POST /contract/v1/contracts/{contractId}/annexes Creates a new annex for an existing contract. Annexes represent modifications to the original contract terms. # Create a contract type Source: https://apidocs.sesametime.com/api-reference/createcontracttype POST /contract/v1/contract-types # Create a customer Source: https://apidocs.sesametime.com/api-reference/createcustomer POST /project/v1/customers # Create a custom field Source: https://apidocs.sesametime.com/api-reference/createcustomfield POST /core/v3/custom-fields # Create a degree Source: https://apidocs.sesametime.com/api-reference/createdegreeincontract POST /contract/v1/degrees # Create a department Source: https://apidocs.sesametime.com/api-reference/createdepartment POST /core/v3/departments # Create an employee Source: https://apidocs.sesametime.com/api-reference/createemployee POST /core/v3/employees # Create employee agreement Source: https://apidocs.sesametime.com/api-reference/createemployeeagreement POST /schedule/v1/agreement-employees Assign employee to agreement # Create an employee leave Source: https://apidocs.sesametime.com/api-reference/createemployeeleave POST /contract/v1/employee-leave/employees/{employeeId} Creates a new employee leave (baja) for the specified employee. The associated contract will be terminated. **Required fields:** - `endDate`: The leave effective date - `leaveReasonId`: The reason for the leave - `employeeLeaveTypeId`: The type of leave (voluntary/involuntary classification) - `contractId`: The contract to terminate **Optional fields:** - `comment`: Additional notes # Create a new employee leave type Source: https://apidocs.sesametime.com/api-reference/createemployeeleavetype POST /contract/v1/employee-leave-types Creates a new employee leave type for the authenticated company. # Create empty vacation calendar Source: https://apidocs.sesametime.com/api-reference/createemptyvacationcalendar POST /schedule/v1/vacation-calendars/create Creates an empty vacation calendar for a specific employee and year. Days off should be added using POST /vacation-calendars/days-off endpoint. # Create an entity group Source: https://apidocs.sesametime.com/api-reference/createentitygroup POST /core/v3/entity-groups # Create employee schedule template Source: https://apidocs.sesametime.com/api-reference/createentityscheduletemplate POST /schedule/v1/entity-schedule-templates Assign employee to schedule template # Create Holidays Calendar Source: https://apidocs.sesametime.com/api-reference/createholidayscalendar POST /schedule/v1/holiday-calendar # Create a job charge Source: https://apidocs.sesametime.com/api-reference/createjobcharge POST /core/v3/job-charges # Create a job charge Source: https://apidocs.sesametime.com/api-reference/createjobchargeincontract POST /contract/v1/job-charges # Create a new leave reason Source: https://apidocs.sesametime.com/api-reference/createleavereason POST /contract/v1/leave-reasons Creates a new leave reason for the authenticated company. # Create a monthly variable compensation Source: https://apidocs.sesametime.com/api-reference/createmonthlyvariablecompensation POST /contract/v1/monthly-variable-compensations Creates or updates a monthly variable compensation for an employee-compensation assignment. **Important:** - The `salaryCompensationId` must reference a salary compensation with a **variable** compensation type - The `date` must be within the salary compensation's date range - The `date` must be a valid pay day according to the compensation's period - The `amount` cannot exceed the compensation's maximum amount - If a record already exists for the same `salaryCompensationId` and `date`, it will be updated instead of created # Create an office Source: https://apidocs.sesametime.com/api-reference/createoffice POST /core/v3/offices # Create or update available check origins configuration Source: https://apidocs.sesametime.com/api-reference/createorupdateavailablecheckorigins PUT /core/v3/configurations/available-check-origin Creates or updates the available check origins configuration for a specific entity (employee or company) # Create a planned task for a project Source: https://apidocs.sesametime.com/api-reference/createplannedtask POST /project/v1/planned-tasks # Create a project Source: https://apidocs.sesametime.com/api-reference/createproject POST /project/v1/projects # Create Salary Source: https://apidocs.sesametime.com/api-reference/createsalary POST /contract/v1/salaries # Create Shift Source: https://apidocs.sesametime.com/api-reference/createshift POST /schedule/v1/shifts # Create Time Entry Source: https://apidocs.sesametime.com/api-reference/createtimeentry POST /project/v1/time-entries # Create a training Source: https://apidocs.sesametime.com/api-reference/createtraining POST /training/v1/trainings # Create Vacation Calendar Source: https://apidocs.sesametime.com/api-reference/createvacationcalendar POST /schedule/v1/vacation-calendars # Creates a new vacation configuration Source: https://apidocs.sesametime.com/api-reference/createvacationconfiguration POST /schedule/v1/vacation-configurations # Create Vacation Day Off Request Source: https://apidocs.sesametime.com/api-reference/createvacationdayoffrequest POST /schedule/v1/vacation-day-off-requests # Create a workday type Source: https://apidocs.sesametime.com/api-reference/createworkdaytypeincontract POST /contract/v1/workday-types # Create a worked holiday for an employee Source: https://apidocs.sesametime.com/api-reference/createworkedholiday POST /schedule/v1/worked-holidays # Create Work Entry Source: https://apidocs.sesametime.com/api-reference/createworkentry POST /schedule/v1/work-entries # Get current contract by employeeId Source: https://apidocs.sesametime.com/api-reference/currentcontract GET /contract/v1/contracts/{employeeId}/current-contract # Delete Absence Day Off Request Source: https://apidocs.sesametime.com/api-reference/deleteabsencedayoffrequest DELETE /schedule/v1/absence-day-off-requests/{id} # Delete Absence Days Off from Calendar Source: https://apidocs.sesametime.com/api-reference/deleteabsencedaysofffromvacationcalendar DELETE /schedule/v1/absence-day-off/{calendarId} Removes one or more absence days off from a specific calendar. ## Overview This endpoint allows authorized users to delete multiple absence days off in a single request by providing an array of day off IDs.. ## Important Behavior - **Atomic Operation**: The deletion is atomic - if any validation fails, no days off will be deleted. This ensures data consistency. - **Ownership Validation**: Each day off ID must belong to the specified calendar. Days off that exist but belong to a different calendar will cause the entire operation to fail. - **Empty Response**: On success, the endpoint returns an empty response with HTTP 200 status code. # Delete agreement Source: https://apidocs.sesametime.com/api-reference/deleteagreement DELETE /schedule/v1/agreements/{agreementId} # Delete Calendar Max Day Off Adjustment Source: https://apidocs.sesametime.com/api-reference/deletecalendarmaxdayoffadjustment DELETE /schedule/v1/vacation-calendar/calendar/{calendarId}/adjustment/{adjustmentId} Deletes a specific adjustment from a vacation calendar # Delete a comment by id Source: https://apidocs.sesametime.com/api-reference/deletecommentbyid DELETE /discussion/v1/comments/{commentId} Delete a comment by id # Delete a compensation Source: https://apidocs.sesametime.com/api-reference/deletecompensation DELETE /contract/v1/compensations/{compensationId} Permanently deletes a compensation. Cannot delete if assigned to employees. # Delete a contract Source: https://apidocs.sesametime.com/api-reference/deletecontract DELETE /contract/v1/contracts/{contractId} # Delete a contract annex Source: https://apidocs.sesametime.com/api-reference/deletecontractannex DELETE /contract/v1/contracts/{contractId}/annexes/{annexId} Deletes an existing annex from a contract. # Delete a contract type Source: https://apidocs.sesametime.com/api-reference/deletecontracttype DELETE /contract/v1/contract-types/{contractTypeId} # Delete a customer Source: https://apidocs.sesametime.com/api-reference/deletecustomer DELETE /project/v1/customers/{id} # Delete a custom field Source: https://apidocs.sesametime.com/api-reference/deletecustomfield DELETE /core/v3/custom-fields/{id} # Delete Days Off from Vacation Calendar Source: https://apidocs.sesametime.com/api-reference/deletedaysofffromvacationcalendar DELETE /schedule/v1/vacation-calendars/{id}/days-off Removes one or more days off from a specific vacation calendar. ## Overview This endpoint allows authorized users to delete multiple days off in a single request by providing an array of day off IDs. ## Important Behavior - **Atomic Operation**: The deletion is atomic - if any validation fails, no days off will be deleted. This ensures data consistency. - **Ownership Validation**: Each day off ID must belong to the specified vacation calendar. Days off that exist but belong to a different calendar will cause the entire operation to fail. - **Empty Response**: On success, the endpoint returns an empty response with HTTP 200 status code. # Delete a degree Source: https://apidocs.sesametime.com/api-reference/deletedegreeincontract DELETE /contract/v1/degrees/{degreeId} # Delete a department Source: https://apidocs.sesametime.com/api-reference/deletedepartment DELETE /core/v3/departments/{id} # delete document Source: https://apidocs.sesametime.com/api-reference/deletedocument DELETE /document/v1/documents/{documentId} # Delete an employee Source: https://apidocs.sesametime.com/api-reference/deleteemployee DELETE /core/v3/employees/{id} # Delete employee agreement Source: https://apidocs.sesametime.com/api-reference/deleteemployeeagreement DELETE /schedule/v1/agreement-employees/{agreementEmployeeId} Unassign employee to agreement # Remove a compensation assignment from an employee Source: https://apidocs.sesametime.com/api-reference/deleteemployeecompensation DELETE /contract/v1/employee-compensations/{salaryCompensationId} Removes the compensation assignment (soft delete). # Delete an employee leave type Source: https://apidocs.sesametime.com/api-reference/deleteemployeeleavetype DELETE /contract/v1/employee-leave-types/{employeeLeaveTypeId} Deletes an employee leave type. Cannot delete system defaults or types that are in use. # Delete an employee manager Source: https://apidocs.sesametime.com/api-reference/deleteemployeemanager DELETE /core/v3/employee-managers/{id} # Delete employee schedule template Source: https://apidocs.sesametime.com/api-reference/deleteentityscheduletemplate DELETE /schedule/v1/entity-schedule-templates/{entityScheduleTemplateId} Unassign employee to schedule template # Delete Free Days from Employees in Planner Source: https://apidocs.sesametime.com/api-reference/deletefreedaysfromemployeesinplanner DELETE /schedule/v1/planners/{plannerId}/free-days Removes free days within a date range for a list of employees in the given planner. # Delete an entity group Source: https://apidocs.sesametime.com/api-reference/deletegroup DELETE /core/v3/entity-groups/{entityGroupId} Permanently deletes an entity group by its ID. This operation cannot be undone. # Delete Holidays Calendar Source: https://apidocs.sesametime.com/api-reference/deleteholidayscalendar DELETE /schedule/v1/holiday-calendar/{holidayCalendarId} # Delete a job charge Source: https://apidocs.sesametime.com/api-reference/deletejobchargein DELETE /core/v3/job-charges/{jobChargeId} # Delete a job charge in contract Source: https://apidocs.sesametime.com/api-reference/deletejobchargeincontract DELETE /contract/v1/job-charges/{jobChargeId} # Delete a leave reason Source: https://apidocs.sesametime.com/api-reference/deleteleavereason DELETE /contract/v1/leave-reasons/{leaveReasonId} Soft-deletes a leave reason. Cannot delete system defaults or reasons in use by employee leaves. # Delete a monthly variable compensation Source: https://apidocs.sesametime.com/api-reference/deletemonthlyvariablecompensation DELETE /contract/v1/monthly-variable-compensations/{monthlyVariableCompensationId} Permanently deletes a monthly variable compensation. # Delete an office Source: https://apidocs.sesametime.com/api-reference/deleteoffice DELETE /core/v3/offices/{id} # Delete a planned task assignation by id Source: https://apidocs.sesametime.com/api-reference/deleteplannedtaskassignation DELETE /project/v1/planned-tasks-assignations/{plannedTaskAssignationId} # Delete a planned task by id Source: https://apidocs.sesametime.com/api-reference/deleteplannedtaskbyid DELETE /project/v1/planned-tasks/{plannedTaskId} # Delete a project Source: https://apidocs.sesametime.com/api-reference/deleteproject DELETE /project/v1/projects/{id} # Delete a salary Source: https://apidocs.sesametime.com/api-reference/deletesalary DELETE /contract/v1/salaries/{salaryId} # Delete Shift Assignment Source: https://apidocs.sesametime.com/api-reference/deleteshiftassignment DELETE /schedule/v1/planners/{plannerId}/shift-assignments/{shiftAssignmentId} Soft-deletes a shift assignment (shift draft) by ID # Delete a Time Entry Source: https://apidocs.sesametime.com/api-reference/deletetimeentry DELETE /project/v1/time-entries/{id} # Delete a training Source: https://apidocs.sesametime.com/api-reference/deletetraining DELETE /training/v1/trainings/{trainingId} # Deletes a vacation configuration Source: https://apidocs.sesametime.com/api-reference/deletevacationconfiguration DELETE /schedule/v1/vacation-configurations/{vacationConfigurationId} # Delete Vacation Day Off Request Source: https://apidocs.sesametime.com/api-reference/deletevacationdayoffrequest DELETE /schedule/v1/vacation-day-off-requests/{id} # Delete a workday type Source: https://apidocs.sesametime.com/api-reference/deleteworkdaytypeincontract DELETE /contract/v1/workday-types/{workdayTypeId} # Delete Worked Holiday for an employee Source: https://apidocs.sesametime.com/api-reference/deleteworkedholiday DELETE /schedule/v1/worked-holidays/{workedHolidayId} # Delete Work Entry Source: https://apidocs.sesametime.com/api-reference/deleteworkentry DELETE /schedule/v1/work-entries/{id} # Download a binary file of the document Source: https://apidocs.sesametime.com/api-reference/downloaddocument GET /document/v1/documents/{documentId}/download Returns a binary file # Get agreement Source: https://apidocs.sesametime.com/api-reference/getagreement GET /schedule/v1/agreements/{agreementId} # Get available check origins configuration Source: https://apidocs.sesametime.com/api-reference/getavailablecheckorigins GET /core/v3/configurations/available-check-origin Retrieves the available check origins configuration for a specific entity (employee or company) # Get Calendar Max Day Off Adjustments Source: https://apidocs.sesametime.com/api-reference/getcalendarmaxdayoffadjustments GET /schedule/v1/vacation-calendar/calendar/{calendarId}/adjustment Retrieves all adjustments to the maximum days off limit for a specific calendar. # Get a candidate Source: https://apidocs.sesametime.com/api-reference/getcandidate GET /recruitment/v1/candidates/{id} # Get candidates by vacancy and status Source: https://apidocs.sesametime.com/api-reference/getcandidatesbyvacancyandstatus GET /recruitment/v1/vacancies/{vacancyId}/candidates # Get a single compensation Source: https://apidocs.sesametime.com/api-reference/getcompensation GET /contract/v1/compensations/{compensationId} Returns details of a specific compensation. # Get a contract annex Source: https://apidocs.sesametime.com/api-reference/getcontractannex GET /contract/v1/contracts/{contractId}/annexes/{annexId} Retrieves a specific annex from a contract. # Get contracts by employee Source: https://apidocs.sesametime.com/api-reference/getcontractsemployee GET /contract/v1/contracts/{employeeId} # Get contract terminated details Source: https://apidocs.sesametime.com/api-reference/getcontractterminateddetails GET /contract/v1/contract-terminated/{contractId} # Get a contract type Source: https://apidocs.sesametime.com/api-reference/getcontracttypes GET /contract/v1/contract-types/{contractTypeId} # Get a degree Source: https://apidocs.sesametime.com/api-reference/getdegreeincontract GET /contract/v1/degrees/{degreeId} # Get an employee Source: https://apidocs.sesametime.com/api-reference/getemployee GET /core/v3/employees/{id} # Get Employee Check Incidences Source: https://apidocs.sesametime.com/api-reference/getemployeecheckincidences GET /schedule/v1/check-incidences/employees/{employeeId} Get check incidences for a specific employee # Get a single employee leave type Source: https://apidocs.sesametime.com/api-reference/getemployeeleavetype GET /contract/v1/employee-leave-types/{employeeLeaveTypeId} Returns details of a specific employee leave type. # Get Employees By Holiday Calendar Source: https://apidocs.sesametime.com/api-reference/getemployeesbyholidaycalendar GET /schedule/v1/holidays/{holidayCalendarId}/employees # Get organization chart manager by employee id Source: https://apidocs.sesametime.com/api-reference/getmanagerbyemployeeid GET /core/v3/employee-profiles/organization-chart-managers/{employeeId} # Get a monthly variable compensation Source: https://apidocs.sesametime.com/api-reference/getmonthlyvariablecompensation GET /contract/v1/monthly-variable-compensations/{monthlyVariableCompensationId} Returns details of a specific monthly variable compensation. # Get a single request Source: https://apidocs.sesametime.com/api-reference/getrequest GET /request/v1/requests/{requestId} Returns details of a specific request. # Get request documents Source: https://apidocs.sesametime.com/api-reference/getrequestdocuments GET /request/v1/requests/{requestId}/documents Returns a list of documents attached to a specific request. # Get a training Source: https://apidocs.sesametime.com/api-reference/gettraining GET /training/v1/trainings/{trainingId} # Get a vacancy Source: https://apidocs.sesametime.com/api-reference/getvacancy GET /recruitment/v1/vacancies/{id} # API Reference Source: https://apidocs.sesametime.com/api-reference/legacy-introduction Information about the current API and the transition to the new version ## API Reference The endpoints documented in this section belong to the current version of the Sesame HR API. We are actively working on a new, more robust API that will progressively replace these endpoints. As the new endpoints become available, the legacy ones will be gradually deprecated. We recommend staying up to date with our [Changelog](/changelog/2026) for deprecation notices and migration guides. # List Absence Calendars Source: https://apidocs.sesametime.com/api-reference/listabsencecalendars GET /schedule/v1/absence-calendars # List Absence Day Off Source: https://apidocs.sesametime.com/api-reference/listabsencedayoff GET /schedule/v1/absence-day-off # List Absence Day Off Requests Source: https://apidocs.sesametime.com/api-reference/listabsencedayoffrequests GET /schedule/v1/absence-day-off-requests # List Absence Types Source: https://apidocs.sesametime.com/api-reference/listabsencetypes GET /schedule/v1/absence-types # List agreements Source: https://apidocs.sesametime.com/api-reference/listagreements GET /schedule/v1/agreements # List Calendar Max Day Off Accumulated Source: https://apidocs.sesametime.com/api-reference/listcalendarmaxdayoffaccumulated GET /schedule/v1/calendar-max-day-off-accumulated/{calendarId} Retrieves the accumulated maximum days off records for a specific calendar # Get candidate status list Source: https://apidocs.sesametime.com/api-reference/listcandidatestatus GET /recruitment/v1/candidate-status/{vacancyId} # List Company Check Incidences Source: https://apidocs.sesametime.com/api-reference/listcheckincidences GET /schedule/v1/check-incidences Get a list of all check incidences for the company # List Check Type Collections Source: https://apidocs.sesametime.com/api-reference/listchecktypecollection GET /schedule/v1/check-type-collections # List Check Types Source: https://apidocs.sesametime.com/api-reference/listchecktypes GET /schedule/v1/check-types # List Check Validation By Employees and Status Source: https://apidocs.sesametime.com/api-reference/listcheckvalidations GET /schedule/v1/check-validation # List comments Source: https://apidocs.sesametime.com/api-reference/listcomments GET /discussion/v1/comments List comments for a thread, plannedTask or for an entity reference # List company directories Source: https://apidocs.sesametime.com/api-reference/listcompanydirectories GET /document/v1/directories # List company expenses Source: https://apidocs.sesametime.com/api-reference/listcompanyexpenses GET /expense-management/v1/expenses # List employees assigned to a compensation Source: https://apidocs.sesametime.com/api-reference/listcompensationemployees GET /contract/v1/compensations/{compensationId}/employees Returns all salary-compensation assignments for a specific compensation. # List all compensations Source: https://apidocs.sesametime.com/api-reference/listcompensations GET /contract/v1/compensations Returns a paginated list of compensations for the authenticated company. # List contract annexes Source: https://apidocs.sesametime.com/api-reference/listcontractannexes GET /contract/v1/contracts/{contractId}/annexes Returns a paginated list of annexes for a specific contract. Annexes represent modifications to the original contract terms. # List contract types Source: https://apidocs.sesametime.com/api-reference/listcontracttypes GET /contract/v1/contract-types # List Contribution Groups Source: https://apidocs.sesametime.com/api-reference/listcontributiongroups GET /contract/v1/contribution-groups # List customers Source: https://apidocs.sesametime.com/api-reference/listcustomers GET /project/v1/customers # List custom fields Source: https://apidocs.sesametime.com/api-reference/listcustomfields GET /core/v3/custom-fields # List degrees Source: https://apidocs.sesametime.com/api-reference/listdegreesincontract GET /contract/v1/degrees # List departments Source: https://apidocs.sesametime.com/api-reference/listdepartments GET /core/v3/departments # List directory documents Source: https://apidocs.sesametime.com/api-reference/listdirectorydocuments GET /document/v1/directories/{directoryId}/documents # List compensations assigned to an employee Source: https://apidocs.sesametime.com/api-reference/listemployeecompensations GET /contract/v1/employees/{employeeId}/compensations Returns all compensations currently assigned to the employee via their active salary. # List employee department assignation Source: https://apidocs.sesametime.com/api-reference/listemployeedepartmentassignations GET /core/v3/employee-department-assignations # List employee's entity schedule templates Source: https://apidocs.sesametime.com/api-reference/listemployeeentityscheduletemplates GET /schedule/v1/employees/{employeeId}/entity-schedule-templates List all entity schedule templates assigned to an employee # List all employee leave types Source: https://apidocs.sesametime.com/api-reference/listemployeeleavetypes GET /contract/v1/employee-leave-types Returns all employee leave types for the authenticated company, including system defaults. # List employee managers Source: https://apidocs.sesametime.com/api-reference/listemployeemanagers GET /core/v3/employee-managers # List employee office assignation Source: https://apidocs.sesametime.com/api-reference/listemployeeofficeassignations GET /core/v3/employee-office-assignations # List employees Source: https://apidocs.sesametime.com/api-reference/listemployees GET /core/v3/employees # List employee schedule template Source: https://apidocs.sesametime.com/api-reference/listemployeescheduletemplate GET /schedule/v1/employees/{employeeId}/schedule-templates List employee schedule template # List employees from a training Source: https://apidocs.sesametime.com/api-reference/listemployeesintraining GET /training/v1/training-employees-assignations/{trainingId} List employees from a training # List poll evaluations of the company Source: https://apidocs.sesametime.com/api-reference/listevaluations GET /poll/v1/evaluations List poll evaluations of the company # List expense categories Source: https://apidocs.sesametime.com/api-reference/listexpensecategories GET /expense-management/v1/expense-categories # List expense payment methods Source: https://apidocs.sesametime.com/api-reference/listexpensepaymentmethods GET /expense-management/v1/expense-payment-methods # List owners of an entity group Source: https://apidocs.sesametime.com/api-reference/listgroupowners GET /core/v3/entity-group-owners-assignation # List Holiday Calendar Source: https://apidocs.sesametime.com/api-reference/listholidaycalendar GET /schedule/v1/holiday-calendar/{holidayCalendarId} # List Holidays Source: https://apidocs.sesametime.com/api-reference/listholidays GET /schedule/v1/holidays # List Holidays Calendar Source: https://apidocs.sesametime.com/api-reference/listholidayscalendar GET /schedule/v1/holiday-calendar # List Hours Bag Rule History Source: https://apidocs.sesametime.com/api-reference/listhoursbagrulehistory GET /schedule/v1/hours-bag-rule-history # List Hours Bag Rules Source: https://apidocs.sesametime.com/api-reference/listhoursbagrules GET /schedule/v1/hours-bag-rules # List job charges Source: https://apidocs.sesametime.com/api-reference/listjobcharges GET /core/v3/job-charges # List job charges Source: https://apidocs.sesametime.com/api-reference/listjobchargesincontract GET /contract/v1/job-charges # List job levels Source: https://apidocs.sesametime.com/api-reference/listjoblevelsincontract GET /contract/v1/job-levels Returns a paginated list of job levels. Includes both company-specific and global job levels. # List all leave reasons Source: https://apidocs.sesametime.com/api-reference/listleavereasons GET /contract/v1/leave-reasons Returns all leave reasons for the authenticated company, including system defaults. # List all monthly variable compensations Source: https://apidocs.sesametime.com/api-reference/listmonthlyvariablecompensations GET /contract/v1/monthly-variable-compensations Returns a paginated list of monthly variable compensations for the authenticated company. Monthly variable compensations are monthly amount records associated to employee-compensation assignments (salary compensations) for variable-type compensations. # List offices Source: https://apidocs.sesametime.com/api-reference/listoffices GET /core/v3/offices # List planned tasks Source: https://apidocs.sesametime.com/api-reference/listplannedtasks GET /project/v1/planned-tasks # List planned tasks assignations by plannedTaskId Source: https://apidocs.sesametime.com/api-reference/listplannedtasksassignations GET /project/v1/planned-tasks-assignations/{plannedTaskId} # List Planner Employees Source: https://apidocs.sesametime.com/api-reference/listplanneremployees GET /schedule/v1/planners/{plannerId}/employees # List Planner Entity References Source: https://apidocs.sesametime.com/api-reference/listplannerentityreferences GET /schedule/v1/planners/{plannerId}/entity-references Returns the list of entity references (offices or entity groups) associated with a planner # List Company Planners Source: https://apidocs.sesametime.com/api-reference/listplanners GET /schedule/v1/planners # List projects Source: https://apidocs.sesametime.com/api-reference/listprojects GET /project/v1/projects # List requests Source: https://apidocs.sesametime.com/api-reference/listrequests GET /request/v1/requests Returns a paginated list of requests for the authenticated company. # List request types Source: https://apidocs.sesametime.com/api-reference/listrequesttypes GET /request/v1/request-types Returns a paginated list of request types for the authenticated company. # List Roles Source: https://apidocs.sesametime.com/api-reference/listroles GET /core/v3/roles # List Assignations Roles by Employee Source: https://apidocs.sesametime.com/api-reference/listrolesbyemployee GET /core/v3/roles/assignation/{employeeId} # List Salaries Source: https://apidocs.sesametime.com/api-reference/listsalaries GET /contract/v1/salaries # List schedule templates Source: https://apidocs.sesametime.com/api-reference/listscheduletemplates GET /schedule/v1/schedule-templates List schedule templates # List Shift Assignments Source: https://apidocs.sesametime.com/api-reference/listshiftassignments GET /schedule/v1/shift-assignments Returns paginated list of active shift assignments (drafts) across all planners for the company # List Shift Assignments in Planner Source: https://apidocs.sesametime.com/api-reference/listshiftassignmentsinplanner GET /schedule/v1/planners/{plannerId}/shift-assignments Returns paginated list of active shift assignments (drafts) for a planner # List Company Shifts Source: https://apidocs.sesametime.com/api-reference/listshifts GET /schedule/v1/shifts # List Time Entries Source: https://apidocs.sesametime.com/api-reference/listtimeentries GET /project/v1/time-entries # List trainings Source: https://apidocs.sesametime.com/api-reference/listtrainings GET /training/v1/trainings # List types of trainings Source: https://apidocs.sesametime.com/api-reference/listtrainingtypes GET /training/v1/training-types # Get vacancies list Source: https://apidocs.sesametime.com/api-reference/listvacancies GET /recruitment/v1/vacancies # List Vacation Calendars Source: https://apidocs.sesametime.com/api-reference/listvacationcalendars GET /schedule/v1/vacation-calendars # List Vacation Configurations Source: https://apidocs.sesametime.com/api-reference/listvacationconfigurations GET /schedule/v1/vacation-configurations # List Vacation Day Off Source: https://apidocs.sesametime.com/api-reference/listvacationdayoff GET /schedule/v1/vacation-day-off # List Vacation Day Off Requests Source: https://apidocs.sesametime.com/api-reference/listvacationdayoffrequests GET /schedule/v1/vacation-day-off-requests # List Work Breaks Source: https://apidocs.sesametime.com/api-reference/listworkbreaks GET /schedule/v1/work-breaks # List workday types Source: https://apidocs.sesametime.com/api-reference/listworkdaytypesincontract GET /contract/v1/workday-types # List Worked Holidays Source: https://apidocs.sesametime.com/api-reference/listworkedholidays GET /schedule/v1/worked-holidays # List Company Work Entries Source: https://apidocs.sesametime.com/api-reference/listworkentries GET /schedule/v1/work-entries # Partial Update Work Entry Source: https://apidocs.sesametime.com/api-reference/patchworkentry PATCH /schedule/v1/work-entries/{id} Partially update a work entry. Only the fields provided will be updated, the rest will keep their current values. # Reject Absence Day Off Request Source: https://apidocs.sesametime.com/api-reference/rejectabsencedayoffrequest POST /schedule/v1/absence-day-off-requests/{id}/reject # Reject Vacation Day Off Request Source: https://apidocs.sesametime.com/api-reference/rejectvacationdayoffrequest POST /schedule/v1/vacation-day-off-requests/{id}/reject # Retrieve a Check Type Collection by Id Source: https://apidocs.sesametime.com/api-reference/retrievechecktypecollection GET /schedule/v1/check-type-collections/{checkTypeCollectionId} # Retrieve employees assigned to a vacation configuration Source: https://apidocs.sesametime.com/api-reference/retrieveemployeesassignedtovacationconfiguration GET /schedule/v1/vacation-configurations-assignations/{vacationConfigurationId} # List entity groups Source: https://apidocs.sesametime.com/api-reference/retrieveentitygroups GET /core/v3/entity-groups # Get a job charge Source: https://apidocs.sesametime.com/api-reference/retrievejobcharge GET /core/v3/job-charges/{jobChargeId} # Get a job charge in contract Source: https://apidocs.sesametime.com/api-reference/retrievejobchargeincontract GET /contract/v1/job-charges/{jobChargeId} # Retrieve an office Source: https://apidocs.sesametime.com/api-reference/retrieveoffice GET /core/v3/offices/{id} # Retrieve Vacation Calendar Totals Source: https://apidocs.sesametime.com/api-reference/retrievevacationcalendartotals GET /schedule/v1/vacation-calendar-totals Retrieve Vacation Calendar Totals # Retrieve a vacation configuration Source: https://apidocs.sesametime.com/api-reference/retrievevacationconfiguration GET /schedule/v1/vacation-configurations/{vacationConfigurationId} # Send Notifications for Check Incidences Source: https://apidocs.sesametime.com/api-reference/sendcheckincidencenotifications POST /schedule/v1/check-incidences/send-notifications Send notifications for specific check incidences # Show Token Info Source: https://apidocs.sesametime.com/api-reference/showtokeninfo GET /core/v3/info # Time Entry In Source: https://apidocs.sesametime.com/api-reference/timeentryin POST /project/v1/time-entries/start # Time Entry Out Source: https://apidocs.sesametime.com/api-reference/timeentryout POST /project/v1/time-entries/stop # Unassign employee from department Source: https://apidocs.sesametime.com/api-reference/unassignemployeefromdepartments DELETE /core/v3/employee-department-assignations # Unassign employee from an entity group Source: https://apidocs.sesametime.com/api-reference/unassignemployeefromgroup DELETE /core/v3/entity-group-assignation # Unassign employee from office Source: https://apidocs.sesametime.com/api-reference/unassignemployeefromoffices DELETE /core/v3/employee-office-assignations # Unassign employees to a training Source: https://apidocs.sesametime.com/api-reference/unassignemployeestotraining DELETE /training/v1/training-employees-assignations/{trainingId} Unassign employees to a training # Unassign Holiday Calendar To Employee Source: https://apidocs.sesametime.com/api-reference/unassignholidaycalendartoemploye DELETE /schedule/v1/holidays/{holidayCalendarId}/employees # Unassign employee to own the entity group Source: https://apidocs.sesametime.com/api-reference/unassignownerfromgroup DELETE /core/v3/entity-group-owners-assignation # Unassign Role Source: https://apidocs.sesametime.com/api-reference/unassignroles DELETE /core/v3/roles/assignation # Update Absence Calendar Source: https://apidocs.sesametime.com/api-reference/updateabsencecalendar PUT /schedule/v1/absence-calendars/{id} # Update an agreement Source: https://apidocs.sesametime.com/api-reference/updateagreement PUT /schedule/v1/agreements/{agreementId} Update an agreement # Update a candidate Source: https://apidocs.sesametime.com/api-reference/updatecandidate PUT /recruitment/v1/candidates/{id} # Update Check Incidence Source: https://apidocs.sesametime.com/api-reference/updatecheckincidence PUT /schedule/v1/check-incidences/{checkIncidenceId} Update a specific check incidence # Update a comment by id Source: https://apidocs.sesametime.com/api-reference/updatecommentbyid PUT /discussion/v1/comments/{commentId} Update a comment by id # Update a company Source: https://apidocs.sesametime.com/api-reference/updatecompany PUT /core/v3/companies/{id} # Update a compensation Source: https://apidocs.sesametime.com/api-reference/updatecompensation PUT /contract/v1/compensations/{compensationId} Updates an existing compensation. Only name, status, code and comment can be updated. # Update a contract Source: https://apidocs.sesametime.com/api-reference/updatecontract PUT /contract/v1/contracts/{contractId} # Update a contract annex Source: https://apidocs.sesametime.com/api-reference/updatecontractannex PUT /contract/v1/contracts/{contractId}/annexes/{annexId} Updates an existing annex for a contract. All fields are optional except startAt which is required. # Update a contract type Source: https://apidocs.sesametime.com/api-reference/updatecontracttype PUT /contract/v1/contract-types/{contractTypeId} # Update a customer Source: https://apidocs.sesametime.com/api-reference/updatecustomer PUT /project/v1/customers/{id} # Update a custom field Source: https://apidocs.sesametime.com/api-reference/updatecustomfield PUT /core/v3/custom-fields/{id} # Update a degree Source: https://apidocs.sesametime.com/api-reference/updatedegreeincontract PUT /contract/v1/degrees/{degreeId} # Update a department Source: https://apidocs.sesametime.com/api-reference/updatedepartment PUT /core/v3/departments/{id} # Update an employee Source: https://apidocs.sesametime.com/api-reference/updateemployee PUT /core/v3/employees/{id} # Update an employee compensation assignment Source: https://apidocs.sesametime.com/api-reference/updateemployeecompensation PUT /contract/v1/employee-compensations/{salaryCompensationId} Updates the start and end dates of a compensation assignment. # Update an employee leave type Source: https://apidocs.sesametime.com/api-reference/updateemployeeleavetype PUT /contract/v1/employee-leave-types/{employeeLeaveTypeId} Updates the name of an employee leave type. System defaults cannot be modified. # Update an employee manager Source: https://apidocs.sesametime.com/api-reference/updateemployeemanager PUT /core/v3/employee-managers/{id} # Update an employee office assignation Source: https://apidocs.sesametime.com/api-reference/updateemployeeofficeassignation PUT /core/v3/employee-office-assignations/{id} Update the main office status of an employee office assignation # Update employee status at a training Source: https://apidocs.sesametime.com/api-reference/updateemployeesstatusattraining PUT /training/v1/training-employees-status/{assignId} # Update a group Source: https://apidocs.sesametime.com/api-reference/updategroup PUT /core/v3/entity-groups/{entityGroupId} Updates an existing entity group with the provided data. Only the name field is required, other fields are optional. # Update Holidays Calendar Source: https://apidocs.sesametime.com/api-reference/updateholidayscalendar PUT /schedule/v1/holiday-calendar/{holidayCalendarId} # Update a job charge Source: https://apidocs.sesametime.com/api-reference/updatejobcharge PUT /core/v3/job-charges/{jobChargeId} # Update a job charge in contract Source: https://apidocs.sesametime.com/api-reference/updatejobchargeincontract PUT /contract/v1/job-charges/{jobChargeId} # Update a leave reason Source: https://apidocs.sesametime.com/api-reference/updateleavereason PUT /contract/v1/leave-reasons/{leaveReasonId} Updates the name of a leave reason. System defaults cannot be modified. # Update organization chart manager by employee id Source: https://apidocs.sesametime.com/api-reference/updatemanagerbyemployeeid PUT /core/v3/employee-profiles/organization-chart-managers/{employeeId} # Update an office Source: https://apidocs.sesametime.com/api-reference/updateoffice PUT /core/v3/offices/{id} # Update a planned task Source: https://apidocs.sesametime.com/api-reference/updateplannedtask PUT /project/v1/planned-tasks/{plannedTaskId} # Update a project Source: https://apidocs.sesametime.com/api-reference/updateproject PUT /project/v1/projects/{id} Updates a project. Optional fields follow partial-update semantics: omitting a field preserves the existing value; sending a field explicitly as `null` clears it (except for `price`, `totalMinutes`, `fixedCost`, `progress`, and `privacy` which cannot be cleared). # Update a salary Source: https://apidocs.sesametime.com/api-reference/updatesalary PUT /contract/v1/salaries/{salaryId} # Update Time Entry Source: https://apidocs.sesametime.com/api-reference/updatetimeentry PUT /project/v1/time-entries/{id} # Update a training Source: https://apidocs.sesametime.com/api-reference/updatetraining PUT /training/v1/trainings/{trainingId} # Update Vacation Calendar (DEPRECATED) Source: https://apidocs.sesametime.com/api-reference/updatevacationcalendar PUT /schedule/v1/vacation-calendars/{id} DEPRECATED: This endpoint replaces all days off and has destructive behavior. Use atomic endpoints instead: POST /vacation-calendars/days-off to add days, DELETE /vacation-calendars/{id}/days-off to remove specific days. # Updates a vacation configuration Source: https://apidocs.sesametime.com/api-reference/updatevacationconfiguration PUT /schedule/v1/vacation-configurations/{vacationConfigurationId} # Update a workday type Source: https://apidocs.sesametime.com/api-reference/updateworkdaytypeincontract PUT /contract/v1/workday-types/{workdayTypeId} # Update Work Entry Source: https://apidocs.sesametime.com/api-reference/updateworkentry PUT /schedule/v1/work-entries/{id} # Upload document Source: https://apidocs.sesametime.com/api-reference/uploaddocument POST /document/v1/directories/{directoryId}/documents # Upload candidate document Source: https://apidocs.sesametime.com/api-reference/uploaddocumenttocandidate POST /recruitment/v1/candidates/{id} # Webhooks Source: https://apidocs.sesametime.com/api-reference/webhooks Receive real-time notifications about events in your Sesame HR account ## Webhooks Sesame HR offers the ability to configure **webhooks** to receive automatic real-time notifications when certain events occur in your account. With webhooks you can integrate Sesame HR with your internal systems and automate workflows without the need to periodically poll the API. ### Available Events | Event | Description | | --------------------- | ------------------------------------------ | | `EmployeeCreated` | A new employee has been created | | `EmployeeUpdated` | An employee's information has been updated | | `EmployeeActivated` | An employee has been activated | | `EmployeeDeactivated` | An employee has been deactivated | | `EmployeeDeleted` | An employee has been deleted | | `CheckInCreated` | A clock-in entry has been registered | | `CheckOutCreated` | A clock-out entry has been registered | Webhook activation and configuration is not available on a self-service basis. If you would like to enable webhooks for your account, please contact our **[support team](https://help.sesamehr.com)** for more information. # List Worked Absence Days By Employee Source: https://apidocs.sesametime.com/api-reference/workedholidaydaysbyemployee GET /schedule/v1/reports/worked-absence-days # List Worked Hours By Employee Source: https://apidocs.sesametime.com/api-reference/workedhoursbyemployee GET /schedule/v1/reports/worked-hours # List Worked Hours By Employee and Week Day Source: https://apidocs.sesametime.com/api-reference/workedhoursbyemployeeandweekday GET /schedule/v1/reports/worked-hours-by-week-day # List Worked Hours By Employee In Night Hours Source: https://apidocs.sesametime.com/api-reference/workednighthoursbyemployee GET /schedule/v1/reports/worked-night-hours # Authentication Source: https://apidocs.sesametime.com/authentication Secure your API requests with Bearer Token authentication ## Overview The Sesame HR API uses **Bearer Token** authentication. Every API request must include a valid token in the `Authorization` header. ``` Authorization: Bearer YOUR_API_TOKEN ``` ## Getting Your API Token Log in to [app.sesametime.com](https://app.sesametime.com) and navigate to **Settings** > **Integrations** > **API** Click **Create New Token** Copy the token, you can use the copy icon Save the token in your application's secure configuration (environment variables, secrets manager, etc.) **Security Best Practices** * Never expose tokens in client-side code, logs, or version control * Use environment variables or a secrets manager * Create separate tokens for each integration * Rotate tokens periodically * Revoke tokens immediately when compromised ## Making Authenticated Requests Include your token in every API request: ```bash cURL theme={null} curl -X GET "https://api-{region}.sesametime.com/core/v3/employees" \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json" ``` ```javascript JavaScript (fetch) theme={null} const SESAME_API_TOKEN = process.env.SESAME_API_TOKEN; const BASE_URL = 'https://api-{region}.sesametime.com'; async function fetchEmployees() { const response = await fetch(`${BASE_URL}/core/v3/employees`, { method: 'GET', headers: { 'Authorization': `Bearer ${SESAME_API_TOKEN}`, 'Content-Type': 'application/json' } }); if (!response.ok) { throw new Error(`API Error: ${response.status}`); } return response.json(); } ``` ```javascript Node.js (axios) theme={null} const axios = require('axios'); const sesameClient = axios.create({ baseURL: 'https://api-{region}.sesametime.com', headers: { 'Authorization': `Bearer ${process.env.SESAME_API_TOKEN}`, 'Content-Type': 'application/json' } }); // Usage const { data } = await sesameClient.get('/core/v3/employees'); ``` ```python Python (requests) theme={null} import os import requests class SesameAPI: def __init__(self): self.base_url = 'https://api-{region}.sesametime.com' self.token = os.environ.get('SESAME_API_TOKEN') self.headers = { 'Authorization': f'Bearer {self.token}', 'Content-Type': 'application/json' } def get_employees(self, **params): response = requests.get( f'{self.base_url}/core/v3/employees', headers=self.headers, params=params ) response.raise_for_status() return response.json() # Usage api = SesameAPI() employees = api.get_employees(limit=10) ``` ```python Python (httpx - async) theme={null} import httpx import os async def get_employees(): async with httpx.AsyncClient() as client: response = await client.get( 'https://api-{region}.sesametime.com/core/v3/employees', headers={ 'Authorization': f'Bearer {os.environ["SESAME_API_TOKEN"]}', 'Content-Type': 'application/json' } ) response.raise_for_status() return response.json() ``` ```php PHP theme={null} token = getenv('SESAME_API_TOKEN'); } public function getEmployees(array $params = []): array { $url = $this->baseUrl . '/core/v3/employees?' . http_build_query($params); $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ 'Authorization: Bearer ' . $this->token, 'Content-Type: application/json' ] ]); $response = curl_exec($ch); $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($statusCode >= 400) { throw new Exception("API Error: $statusCode"); } return json_decode($response, true); } } // Usage $api = new SesameAPI(); $employees = $api->getEmployees(['limit' => 10]); ``` ```go Go theme={null} package main import ( "encoding/json" "fmt" "net/http" "os" ) type SesameClient struct { BaseURL string Token string Client *http.Client } func NewSesameClient() *SesameClient { return &SesameClient{ BaseURL: "https://api-{region}.sesametime.com", Token: os.Getenv("SESAME_API_TOKEN"), Client: &http.Client{}, } } func (c *SesameClient) GetEmployees() (map[string]interface{}, error) { req, _ := http.NewRequest("GET", c.BaseURL+"/core/v3/employees", nil) req.Header.Set("Authorization", "Bearer "+c.Token) req.Header.Set("Content-Type", "application/json") resp, err := c.Client.Do(req) if err != nil { return nil, err } defer resp.Body.Close() var result map[string]interface{} json.NewDecoder(resp.Body).Decode(&result) return result, nil } ``` ```ruby Ruby theme={null} require 'net/http' require 'json' class SesameAPI BASE_URL = 'https://api-{region}.sesametime.com' def initialize @token = ENV['SESAME_API_TOKEN'] end def get_employees(params = {}) uri = URI("#{BASE_URL}/core/v3/employees") uri.query = URI.encode_www_form(params) if params.any? request = Net::HTTP::Get.new(uri) request['Authorization'] = "Bearer #{@token}" request['Content-Type'] = 'application/json' response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http| http.request(request) end JSON.parse(response.body) end end # Usage api = SesameAPI.new employees = api.get_employees(limit: 10) ``` ## Verifying Your Token Test your token by calling the info endpoint: ```bash theme={null} curl -X GET "https://api-{region}.sesametime.com/core/v3/info" \ -H "Authorization: Bearer YOUR_API_TOKEN" ``` ## Managing Tokens ### Listing Active Tokens View all active tokens in **Settings** > **Integrations** > **API**. Each token shows: * Token * Active * Creation Date * Last Used Date ### Revoking Tokens To revoke a token: 1. Go to **Settings** > **Integrations** > **API** 2. Find the token to revoke 3. Click the delete button 4. Confirm the action Revoking a token immediately invalidates it. Any applications using that token will receive `401 Unauthorized` errors. ## Authentication Errors | Status | Error | Cause | Solution | | ------ | ------------- | ------------------------ | -------------------------------------- | | `401` | Unauthorized | Missing or invalid token | Check token is correct and not deleted | | `401` | Token Expired | Token has been revoked | Generate a new token | 1. **Check token format**: Ensure the header is exactly `Authorization: Bearer YOUR_TOKEN` (note the space after "Bearer") 2. **Verify token is active**: Check in the dashboard that the token hasn't been deleted 3. **Check region**: Ensure you're using the correct API region for your account 4. **Check for typos**: Copy the token again from the dashboard 5. **Check encoding**: Ensure no extra characters or whitespace were added ## Security Recommendations Store tokens in environment variables, never in code Use AWS Secrets Manager, HashiCorp Vault, or similar for production Rotate tokens every 90 days as a security best practice Monitor API usage in your Sesame HR dashboard # 2026 Changelog Source: https://apidocs.sesametime.com/changelog/2026 API changes and updates throughout 2026 ## Q1 2026 ### Documentation Update & New API We have updated the API documentation and are actively working on a new, more robust version of our API. The current endpoints under **API Reference** will be gradually deprecated and replaced by improved, more consistent endpoints. We recommend keeping your integrations up to date and following this changelog for deprecation notices and migration guides as the new API becomes available. # API Changelog Source: https://apidocs.sesametime.com/changelog/overview Stay up to date with the latest API changes, improvements, and deprecations ## Overview This changelog documents all notable changes to the Sesame HR Public API. Latest changes in 2026 # Error Handling Source: https://apidocs.sesametime.com/errors Understand API errors and implement robust error handling ## Error Reference | Error Code | HTTP Status | Description | | --------------------- | ----------- | --------------------------------------- | | `validation_error` | 422 | Request data failed validation | | `not_found` | 404 | Requested resource doesn't exist | | `unauthorized` | 401 | Invalid or missing authentication token | | `forbidden` | 403 | Token lacks required permissions | | `conflict` | 409 | Resource conflict (duplicate, etc.) | | `rate_limit_exceeded` | 429 | Too many requests | | `internal_error` | 500 | Unexpected server error | | `service_unavailable` | 503 | Service temporarily unavailable | # Sesame HR API Source: https://apidocs.sesametime.com/introduction Automate your HR operations and build integrations that scale with your team Sesame HR is the all-in-one platform that helps companies manage their people — from time tracking and scheduling to contracts, vacations, recruitment, and beyond. Thousands of companies across Europe and Latin America rely on Sesame every day. The **Sesame HR API** opens that same power to your code. Connect your internal tools, sync data with your payroll provider, build custom dashboards, or automate the repetitive tasks that slow your HR team down. Make your first API call in under 5 minutes Explore every endpoint, parameter, and response ## Why use the API? Whether you are a two-person startup or a 10,000-employee enterprise, the API lets you: * **Eliminate double data entry** — sync employees, contracts, and org charts with your ERP or payroll system in real time. * **Build custom workflows** — auto-assign shifts, trigger absence approvals, or create onboarding pipelines that match how your company actually works. * **Centralize reporting** — pull time tracking, vacation balances, and expense data into your own BI tools. * **Extend the platform** — build internal apps, Slack bots, or mobile experiences on top of Sesame data. ## Base URL All requests go to a region-specific endpoint: ``` https://api-{region}.sesametime.com ``` Replace `{region}` with the data region assigned to your account. You can find your region [here](https://app.sesametime.com/admin/configuration/integrations/api-tokens). ## What can you build? Create, update, and query employee records, departments, offices, and org structure Clock in/out, log work entries, and pull attendance reports Manage shifts, planners, schedule templates, and work agreements Handle contracts, salaries, compensations, and payroll data Configure vacation policies, manage calendars, and process requests Post vacancies, track candidates, and automate hiring workflows ## Need help? Knowledge base and direct support Real-time uptime and incident history # Quickstart Source: https://apidocs.sesametime.com/quickstart Make your first API call in under 5 minutes ## Prerequisites Before you begin, make sure you have: Sign up at [sesamehr.com](https://sesamehr.com) if you don't have one You need admin permissions to generate API tokens ## Step 1: Get Your API Token Go to [app.sesametime.com](https://app.sesametime.com) and log in with your credentials Go to **Settings** > **Integrations** > **API** Click **Generate Token** and copy the token immediately ## Step 2: Make Your First Request Test your token by fetching your account information: ```bash cURL theme={null} curl -X GET "https://api-{region}.sesametime.com/core/v3/info" \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json" ``` ```javascript JavaScript theme={null} const response = await fetch('https://api-{region}.sesametime.com/core/v3/info', { method: 'GET', headers: { 'Authorization': 'Bearer YOUR_API_TOKEN', 'Content-Type': 'application/json' } }); const data = await response.json(); console.log(data); ``` ```python Python theme={null} import requests response = requests.get( 'https://api-{region}.sesametime.com/core/v3/info', headers={ 'Authorization': 'Bearer YOUR_API_TOKEN', 'Content-Type': 'application/json' } ) print(response.json()) ``` ```php PHP theme={null} "https://api-{region}.sesametime.com/core/v3/info", CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ "Authorization: Bearer YOUR_API_TOKEN", "Content-Type: application/json" ], ]); $response = curl_exec($curl); curl_close($curl); echo $response; ?> ``` You should receive a response like: ```json theme={null} { "data": { "company": { "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a", "name": "Demo Company", "notificationEmail": "demo@example.com", "language": "en-GB", "createdAt": "2020-01-01T10:00:00+01:00", "updatedAt": "2020-01-01T10:00:00+01:00" } } } ``` ## Step 3: List Your Employees Now let's fetch your employee list: ```bash cURL theme={null} curl -X GET "https://api-{region}.sesametime.com/core/v3/employees?limit=10" \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json" ``` ```javascript JavaScript theme={null} const response = await fetch('https://api-{region}.sesametime.com/core/v3/employees?limit=10', { method: 'GET', headers: { 'Authorization': 'Bearer YOUR_API_TOKEN', 'Content-Type': 'application/json' } }); const { data, meta } = await response.json(); console.log(`Found ${meta.total} employees`); data.forEach(emp => console.log(`${emp.firstName} ${emp.lastName}`)); ``` ```python Python theme={null} import requests response = requests.get( 'https://api-{region}.sesametime.com/core/v3/employees', headers={'Authorization': 'Bearer YOUR_API_TOKEN'}, params={'limit': 10} ) result = response.json() print(f"Found {result['meta']['total']} employees") for emp in result['data']: print(f"{emp['firstName']} {emp['lastName']}") ``` ## Common Use Cases Now that you're set up, explore these common integration scenarios: Keep your HR system in sync with Sesame Build automated clock-in/out systems Handle vacation requests programmatically Export time data for payroll processing ## Next Steps Learn about token management and security Handle errors gracefully Understand API limits # Rate Limiting Source: https://apidocs.sesametime.com/rate-limiting Understand API rate limits and implement efficient request patterns ## Overview The Sesame HR API implements rate limiting to ensure fair usage and maintain service stability for all users. ## Rate Limit The rate limit is **1,000 requests per minute per company**. This limit is shared across all API tokens belonging to the same company — the total sum of requests from all tokens cannot exceed 1,000 per minute. Using multiple tokens to bypass the rate limit is not possible, as the limit applies at the company level, not per token.