<- Back to all docs articles

Haekka Public API Documentation

Welcome to Haekka's Public API documentation!

Step 1 - Key Generation

The first step is to contact us to have API access turned on for your account. Once it's on, you can generate a new API key. Be sure to give it an accurate name, and to store the key in a safe place. We do not store API keys for you. If you lose one, you will need to regenerate it.

Step 2 - Make Your First API Call

Once you have a key, you can make your first API call to ensure that it works. Here's a quick example using Postman.

Inside of Postman, open a new tab and select "Headers". Add a new key for "Authorization" and a value of "Bearer {{key}}". If you hover over the key variable, it will ask you to create a new variable. Go ahead and do that and input the key from Step 1.

In the request input, paste the following URL https://app.haekka.com/api/public/employees/. This will allow you to grab a list of your users.

Available Routes

GET /employees


This endpoint returns a list of all active employees within a company.

GET /employees/:employee_id


This endpoint returns employee related data for a specific employee.

GET /trainings


This endpoint returns all trainings associated with a company.

GET /trainings/:training_id


This endpoint returns data related to a specific training.

GET /employee_trainings


This endpoint returns all employee trainings objects within a company.

GET /employee_trainings/:employee_training_id


This endpoint returns a specific employee training instance.

PATCH /employee_trainings/:employee_training_id

This updates a specific employee's training. Currently, we only support updating completion_status (true or false) and completion_rate (0 - 100). Note: if a request contains both completion_status and completion_rate in the payload, completion_status will override completion_rate to 100.


POST trainings/assign/


This API endpoint facilitates the assignment of Training to Employees. It requires 'training_id' and 'employee_ids' fields in the request payload. Additionally, there is an optional 'alert_employees' boolean field. If set, it determines whether the employees will be notified about their new training assignments. By default, 'alert_employees' is set to 'true'.

Example payload: { "training_id": "XXXXXXXX-a1c9-4643-8d28-220c0f8aXXXX", "employee_ids": [ "XXXXXXXX-c4bf-433b-bcef-ecf2cd08XXXX", "XXXXXXXX-118b-4b30-9ba3-f8e91920XXXX" ], "alert_employees": false}

Schedule a demo

Start delivering training via Slack today.

Get started with a free trial by scheduling a demo today. One of our training experts will walk you through a live Haekka demo.

Excellent! We received your demo request. You should be redirected to our scheduling system. If you ran into an issue, please contact us.
Hmm. Something went wrong while submitting your form.
Please refresh and try again.