Skip to main content
POST
/
hris
/
employee-skill-assignments
Upsert employee skill assignment
curl --request POST \
  --url https://api.kombo.dev/v1/hris/employee-skill-assignments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-Integration-Id: <x-integration-id>' \
  --data '
{
  "employee_id": "26vafvWSRmbhNcxJYqjCzuJg",
  "skill_id": "28KMdr68N8kG9EzLwjsN9aoz",
  "proficiency": {
    "type": "NUMERIC",
    "value": 4
  }
}
'
{
  "status": "success",
  "data": {
    "task_id": "task_8AvRLpxwY5J6pGxfY6fUD81Z"
  }
}
Closed Beta Feature: This endpoint is currently in closed beta. We’re testing it with selected customers before its public release. If you’re interested in learning more or getting early access, please reach out.
Assign a skill to an employee, optionally with a proficiency rating. Include a proficiency to record a rated result (e.g. an assessment); where the source system supports source attribution, the rating is attributed to the provider configured on the connection. Omit proficiency to simply tag the employee with the skill, with no rating. Kombo records one rating per (employee, skill, rating_source) and upserts in place, so re-sending the same employee and skill replaces the rating from this write rather than stacking a new one; ratings recorded under a different source (e.g. a SELF / MANAGER rating read from the source system) stay as separate rows. The rating_source the write lands under depends on the system – systems without a dedicated external surface record it differently. Refer to the coverage grid for per-system support of ratings and attribution.
Note: This endpoint is asynchronous – it returns a task_id immediately and processes the request in the background. Use the corresponding GET endpoint to poll for the task status until it reaches COMPLETED or FAILED. Learn more in our async endpoints guide.

Authorizations

Authorization
string
header
required

Create an API key on the Secrets page in the Kombo dashboard.

Headers

X-Integration-Id
string
required

ID of the integration you want to interact with.

Body

application/json

POST /hris/employee-skill-assignments Request body

employee_id
string
required

The Kombo ID of the employee.

skill_id
string
required

The Kombo ID of the skill.

proficiency
object

The proficiency to record. Omit to assign the skill without a rating (a bare tag).

Response

POST /hris/employee-skill-assignments Positive response

status
string
required
Allowed value: "success"
data
object
required
Example:
{
"task_id": "task_8AvRLpxwY5J6pGxfY6fUD81Z"
}