Search

Comparison of API v1 and v2 endpoints

Most of API v1 endpoints have an equivalent in API v2.

Technical changes

  • Better Open API support: the new endpoints have operationId property defined, which allows API client generators to produce more readable code.

  • Pagination changes: for better performance, instead of skip and take parameters, a single continuationToken parameter is used. An API response includes a continuation token that allows making a subsequent request to get the next page of data.

Tabel 1. Absences

OperationId

HTTP Method

Route

GetLeaveTypes

GET

/v2/absences/leave-types

GetHolidays

GET

/v2/absences/holidays

GetEmployeeAbsences

GET

/v2/employees/{employeeId}/absences

GetEmployeeVacationBalance

GET

/v2/employees/{employeeId}/vacation-balance

GetEmployeePendingAbsenceRequests

GET

/v2/employees/{employeeId}/absences/pending

CreateAbsence

POST

/v2/employees/absences

UpdateAbsence

PUT

/v2/employees/absences/{absenceId}

DeleteAbsenceById

DELETE

/v2/employees/absences/{absenceId}


Breaking changes

  • No API for approving/rejecting an employee

Tabel 2. Applications

OperationId

HTTP Method

Route

ListApplications

POST

/v2/applications/list

CreateApplication

POST

/v2/applications

GetApplicationFormData

GET

/v2/applications/{applicationId}/form-data/{formId}

ListApplicationFormData

GET

/v2/applications/form-data/{formId}

UpsertApplicationFormData

PUT

/v2/applications/{applicationId}/form-data/{formId}

ExportApplicationUsingJsonTemplate

GET

/v2/applications/{applicationId}/export-as-json/{jsonExportTemplateId}


Changes

  • ListApplications - combines previous endpoints:

    • GET /v1/{customer}/applications/find-by-date

    • GET /v1/{customer}/applications/find-by-name

Breaking changes

  • No API for deleting an application

Tabel 3. Candidates

OperationId

HTTP Method

Route

ListCandidates

POST

/v2/candidates/list


Changes

  • ListCandidates - combines previous endpoints:

    • GET /v1/{customer}/candidates/{date}

    • GET /v1/{customer}/candidates/find-by-name

Breaking changes

  • No API for deleting a candidate

Tabel 4. Countries

OperationId

HTTP Method

Route

GetCountries

GET

/v2/countries

GetCountryByCountryCode

GET

/v2/countries/{countryCode}


Tabel 5. Currency

OperationId

HTTP Method

Route

GetCurrencies

GET

/v2/currencies

GetCurrencyCode

GET

/v2/currencies/{currencyCode}


Tabel 6. Departments

OperationId

HTTP Method

Route

CreateDepartment

POST

/v2/departments

UpdateDepartment

PUT

/v2/departments

GetDepartmentById

GET

/v2/departments/{departmentId}

DeleteDepartmentById

DELETE

/v2/departments/{departmentId}

GetDepartmentByCustomId

GET

/v2/departments/custom-id/{customId}


Changes

  • No separate endpoint for deleting a department by CustomId

Tabel 7. Employees

OperationId

HTTP Method

Route

ListEmployees

POST

/v2/employees/list

GetEmployeeFilesByEmployeeId

GET

/v2/employees/{employeeId}/files

GetEmployeeFiles

GET

/v2/employees/files

UploadEmployeeFile

GET

/v2/employees/{employeeId}/files

DownloadEmployeeFile

GET

/v2/employees/{employeeId}/files

CreateEmployeeFileFolder

POST

/v2/employees/{employeeId}/folders

GetEmployeeFormDataByIdc

GET

/v2/employees/{employeeId}/form-data/{formId}

ListEmployeeFormData

GET

/v2/employees/form-data/{formId}/list

UpsertEmployeeFormData

PUT

/v2/employees/{employeeId}/form-data/{formId}

ExportEmployeeUsingJsonTemplate

GET

/v2/employees/{employeeId}/export-as-json/{jsonExportTemplateId}

ExportEmployeesUsingJsonTemplate

GET

/v2/employees/export-as-json/{jsonExportTemplateId}


Changes

  • ListEmployeeFormData - a new API that allows fetching employee form data in batches (instead of one record at a time).

  • ExportEmployeesUsingJsonTemplate - allows reading employees using a JSON Template in batches.

  • GetEmployeeFiles - now returns all employee attached files (including agreement files).

  • Uploading/downloading files no longer requires base64 encoding/decoding.

Breaking changes

  • No endpoint for creating an employee from form data

  • No endpoint for deleting an employee

Tabel 8. Exports (Employees / Applications)

OperationId

HTTP Method

Route

GetExportedEmployees

GET

/v2/employees/exports

GetExportedApplications

GET

/v2/applications/exports

DeleteEmployeeExportItem

DELETE

/v2/employees/exports/{employeeExportItemId}

DeleteApplicationExportItem

DELETE

/v2/applications/exports/{applicationExportItemId}

DownloadExportedEmployeeFile

GET

/v2/employees/exports/{employeeExportItemId}/files/{fileId}

DownloadExportedApplicationFile

GET

/v2/applications/exports/{applicationExportItemId}/files/{fileId}


Changes

  • There are now separate endpoints for exporting applications and employees.

  • The new endpoints GetExportedEmployees / GetExportedApplications allow reading entities in batches. Previously one call per record had to be made, which significantly multiplied the number of calls / time needed for the export.

Tabel 9. Forms and Form Data

OperationId

HTTP Method

Route

GetEmployeeForms

GET

/v2/employees/forms

GetOnboardingForms

GET

/v2/onboardings/forms

GetCandidateForms

GET

/v2/candidates/forms

GetEmployeeFormDefinitionById

GET

/v2/employees/forms/{formId}

GetOnboardingFormDefinitionById

GET

/v2/onboardings/forms/{formId}

GetCandidateFormDefinitionById

GET

/v2/candidates/forms/{formId}

UploadApplicationFormDataFile

POST

/v2/applications/form-data/files/upload

UploadOnboardingFormDataFile

POST

/v2/onboardings/form-data/files/upload

UploadEmployeeFormDataFile

POST

/v2/employees/form-data/files/upload


Changes

  • Now endpoints are separated per-entity: candidate/application/employee/onboarding

  • New endpoints for reading form data in batches: ListApplicationFormData / ListEmployeeFormData.

Tabel 10. Jobs / Job Postings / Talent Pools

OperationId

HTTP Method

Route

CreateJobVacancy

POST

/v2/vacancies/jobs

CreateTalentPool

POST

/v2/onboardings/forms

GetVacancyTemplates

GET

/v2/vacancies/templates

GetVacancyTemplateById

GET

/v2/vacancies/templates/{templateId}

GetVacancies

GET

/v2/vacancies

GetVacancyTeamMembers

GET

/v2/vacancies/{vacancyId}/team


Changes

  • Separate endpoints for creating a “job vacancy” and a “talent pool”.

  • A “Job posting” have been renamed to a “vacancy publishing”.

  • GetVacancies replaces previous job postings endpoints.

Tabel 11. Languages

OperationId

HTTP Method

Route

GetLanguages

GET

/v2/languages

GetLanguageByLanguageKey

GET

/v2/languages/{languageKey}


Tabel 12. Locations

OperationId

HTTP Method

Route

CreateDepartmentLocation

POST

/v2/departments/{departmentId}/locations

UpdateDepartmentLocation

PUT

/v2/departments/{departmentId}/locations/{locationId}


Changes

  • No dedicated location endpoints, where the department is identified via customId.

Tabel 13. Media

OperationId

HTTP Method

Route

GetVacancyMedia

GET

/v2/vacancies/media


Tabel 14. Onboardings

OperationId

HTTP Method

Route

ListOnboardings

POST

/v2/onboardings/list

GetOnboardingFormDataById

GET

/v2/onboardings/{onboardingId}/form-data/{formId}


Breaking changes

  • No endpoints for creating/updating an onboarding.

  • No endpoint for updating an onboarding form data.

Tabel 15. Roles

OperationId

HTTP Method

Route

GetUserRoles

GET

/v2/users/roles/


Tabel 16. Users

OperationId

HTTP Method

Route

ListUsers

POST

/v2/users/list

CreateUser

POST

/v2/users

GetUserById

GET

/v2/users/{userId}

UpdateUser

PUT

/v2/users/{userId}

DeleteUser

DELETE

/v2/users/{userId}


Changes

  • An endpoint for getting a user by customId is replaced with a filter field on ListUsers enpoint..

Var denne artikel en hjælp?

Var denne artikel en hjælp?

Vil du i kontakt?

Vi hjælper dig. Udfyld en anmodning, så vender vi tilbage til dig hurtigst muligt.

Indsend en anmodning