The list below provides an overview of breaking changes to the SkillEngine API. Breaking changes are modifications that may cause your existing integrations to stop working. These changes are only applied to your tenant when you request a version update.
skill_vocab
and external_id
fields from the
GET /taxonomy/skills
endpointskill_vocab
and external_id
fields from the
GET /taxonomy/skills/{skill_id}
endpointskill_vocab
and external_id
fields from the
GET /taxonomy/skill_clusters/{skill_cluster_external_id}/skills
endpointskill_vocab
and external_id
fields from the
GET /taxonomy/export
endpointPOST /integrations/file_load_task
endpoint.GET /integrations/file_load_task/{task_id}
endpoint./job_architecture/jobs/{job_external_id}/market_skill_profile
endpoint.response_format=trending
query paramter option for all
GET /<entity>/skill_profile
endpoints.GET /employees/{external_id}/metrics/position_alignment
endpoint.POST /vacancies/{external_id}/metrics/fillability
endpoint.include=description
to
include=skill_description
in the GET /taxonomy/skills
endpoint.GET /reports/data_maturity_scan/data_improvement_actions
endpoint.POST /reports/skills_alignment
endpoint.POST /reports/workforce_alignment
endpoint.POST /reports/strategy_map
endpoint.POST /reports/skill_frequencies
endpoint.POST /reports/organization_names
endpoint.POST /reports/employee_skill_distribution
endpoint.POST /reports/vacancy_skill_distribution
endpoint.name
to skill_name
in the
GET /employees/{external_id}/skill_profile
endpoint when the
response_format
query parameter is set to skill_clusters
or domains
.GET /reports/succession_risk
endpoint.GET /reports/employees/skills
endpoint.GET /reports/employees/position_alignment
endpoint.POST /reports/replacement_risk
endpoint.count
response body field from the POST /employees/search
endpoint.count
response body field from the POST /vacancies/search
endpoint.count
response body field from the POST /companies/search
endpoint.count
response body field from the
POST /employees/{external_id}/recommended_courses
endpoint.count
response body field from the
POST /employees/{employee_external_id}/vacancies/{vacancy_external_id}/recommended_courses
endpoint.count
response body field from the
POST /employees/{employee_external_id}/jobs/{job_external_id}/recommended_courses
endpoint.count
response body field from the
POST /employees/{external_id}/matching_vacancies
endpoint.count
response body field from the
POST /employees/{external_id}/matching_companies
endpoint.count
response body field from the
POST /employees/{external_id}/matching_jobs
endpoint.count
response body field from the
POST /employees/{external_id}/matching_job_families
endpoint.count
response body field from the
POST /vacancies/{external_id}/matching_employees
endpoint.count
response body field from the
POST /companies/{external_id}/matching_employees
endpoint.count
response body field from the
POST /job_architecture/jobs/{external_id}/matching_employees
endpoint.count
response body field from the
POST /job_architecture/job_families/{external_id}/matching_employees
endpoint.GET /reports/employees/employability
endpoint.GET /employees/{external_id}/metrics/employability
endpoint.GET /vacancies/{external_id}/metrics/fillability
endpoint.language
filter in the
POST /companies/{external_id}/matching_employees
endpoint.feedback_format=skill_clusters
support for the
PATCH /vacancies/{external_id}/skill_profile
endpoint.feedback_format=skill_clusters
support for the
PATCH /courses/{external_id}/skill_profile
endpoint.response_format=skill_clusters
support for the
GET /vacancies/{external_id}/skill_profile
endpoint.response_format=skill_clusters
support for the
GET /courses/{external_id}/skill_profile
endpoint.POST /reports/clustered_trending_skills
endpoint.POST /reports/emerging_skills
endpoint.POST /employees/{external_id}/similar
endpoint.POST /vacancies/{external_id}/similar
endpoint.POST /courses/{external_id}/similar
endpoint.include=skill_match_scores
query parameter of
POST /employees/{external_id}/matching_job_families
skill_type
field with skill_types
for the skills
response
body field of the GET /job_architecture/job/{job_id}/skill_profile
and
GET /job_architecture/job_families/{job_family_id}/skill_profile
endpoints.skill_type
field with skill_types
for the skills
field of
the records
response body field of the
POST /job_architecture/export/jobs/skill_profiles
, and
POST /job_architecture/export/job_families/skill_profiles
endpoints.skill_type
field with skill_types
for the skills
field of
skill_clusters
field of the records
response body field of the
POST /job_architecture/export/jobs/skill_clusters
.include=skill_clusters
query parameter of
POST /vacancies/{external_id}/matching_employees
and
GET /employees/{employee_external_id}/vacancies/{vacancy_external_id}/match
.relevant_experience
response body field of the
response_format=explained
query parameter to the newly added
include=relevant_experience
query parameter of the
GET /employees/{employee_external_id}/vacancies/{vacancy_external_id}/match
endpoint.skill
response body field to skill_name
of the
GET employees/{external_id}/vacancies/{external_id}/gap
endpoint.GET /job_architecture/job/{job_id}/skill_profile
endpoint has a new
Skill type called Family-Specific
.GET /job_architecture/job_families/{job_family_id}/skill_profile
endpoint has a new Skill type called Family-Specific
.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /employees/{external_id}/skill_profile
now requires either
a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /job_architecture/jobs/{job_external_id}/skill_profile
now
requires either a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint
PATCH /job_architecture/job_families/{job_family_external_id}/skill_profile
now requires either a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /vacancies/{external_id}/skill_profile
now requires either
a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /courses/{external_id}/skill_profile
now requires either a
skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /occupations/{external_id}/skill_profile
now requires
either a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /vacancies/{external_id}/skill_profile
now requires either
a skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /courses/{external_id}/skill_profile
now requires either a
skill
or a skill_id
, not both.skills
request body field of the SkillProfileUpdateMessage
of the
endpoint PATCH /occupations/{external_id}/skill_profile
now requires
either a skill
or a skill_id
, not both.GET /employees/{external_id}/profile/related
endpoint.POST /employees/{external_id}/profile/related
endpoint.GET /vacancies/{external_id}/profile/related
endpoint.POST /vacancies/{external_id}/profile/related
endpoint.GET /courses/{external_id}/profile/related
endpoint.POST /courses/{external_id}/profile/related
endpoint.GET /occupations/{external_id}/profile/related
endpoint.POST /occupations/{external_id}/profile/related
endpoint.GET /skills/{skill_name}/related
endpoint.POST /skill_clusters
in favor of POST /taxonomy/skill_clusters
.DELETE /skill_clusters/{skill_cluster_id}
in favor of
DELETE /taxonomy/skill_clusters/{skill_cluster_id}
.PATCH /skill_clusters/{skill_cluster_id}
in favor of
PATCH /taxonomy/skill_clusters/{skill_cluster_id}
.PUT {entity}/{external_id}/skill_profile
endpoint.skill_event
with project_content
now assumes a textual description of
a ticket from a ticketing system (e.g. Jira, Asana, Github issues, etc.).
The previous functionality of general project descriptions is removed.desired_functions
and non_desired_functions
fields of the Employee
have been changed from lists of titles to list of Function objects. A
Function object consists of a Function title and a relative importance.competency
, competencies
or capitalized alternatives
have been renamed to skill_cluster
and skill_clusters
, and their
capitalized versions.category
, categories
or capitalized alternatives have
been renamed to domain
and domains
, and their capitalized versions.The competency
and score
fields in
PUT, PATCH /{entity}/{external_id}/skill_profile
in competencies
format
are now renamed to competency_name
and proficiency_level
respectively.
The score
fields in PUT, PATCH /{entity}/{external_id}/skill_profile
in
skills
format is replaced by has_skill
which is a boolean instead of
number.
The competency
and score
fields in
GET /{entity}/{external_id}/skill_profile
in competencies
format are now
renamed to competency_name
and proficiency_level
respectively.
score
field in GET /{entity}/{external_id}/skill_profile
in list
format is now optional.GET /employees/{external_id}/recommended_courses
and added POST
instead.POST /competencies/{external_id}/similar
and
POST /competencies/{external_id}/profile/related
endpoints.PUT /competencies/{external_id}/skill_profile
feedback endpoint.POST
instead of GET
.score_min_threshold
query parameter, and
defaults to 0.5 for this value instead of the previously internal 0.0.GET/POST /employees/{external_id}/matching_vacancies
,
GET/POST /vacancies/{external_id}/matching_employees
,
GET /employees/{external_id}/matching_companies
and
GET /companies/{external_id}/matching_employees
) has changed from a list
to an object containing two fields: the list of results and the total number
of results available.POST /employees/search
,
POST /vacancies/search
and POST /companies/search
) has changed from a
list to an object containing two fields: the list of search results and the
total number of results available from the free text search.GET /employees/
, GET /vacancies/
,
GET /companies/
, GET /courses/
, GET /competencies/
, GET /documents/
and GET /occupations/
) has changed from a list to an object containing two
fields: the list of results and the total number of results available.POST /employees
) and updates
(PATCH /employees/{external_id}
) no longer support uploading individual
resumes (as employee_resume
) in favour of accepting a list of multiple
resumes (as employee_documents
) with the same format.GET /employees
, GET /vacancies
,
GET /courses
, GET /occupations
, GET /competencies
and
GET /documents
) no longer support the response_format
query parameter.
The response now corresponds to the former objects
response format for all
endpoints.version
,
indicating the current version of your tenant. The version is returned as a
date (ISO-8601, ex. 2021-01-19) and no longer as a number.