Skip to main content
Export Employee AI Goals
curl --request POST \
  --url https://{tenant_name}.{region}.techwolf.ai/export/employees/ai_goals \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "limit": 10,
  "filters": [
    {
      "filter": "is_active",
      "is_active": true
    }
  ]
}
'
{
  "has_next": true,
  "next_starting_after": "61a6e076-d780-11ec-9d64-0242ac120002",
  "records": [
    {
      "external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7",
      "goal": "Grow into a Senior Machine Learning Engineer role",
      "description": "Move from Data Scientist to Senior Machine Learning Engineer within 12 months by deepening expertise in MLOps, owning production model deployments, and mentoring two junior team members on experiment design.",
      "target_skills": [
        {
          "skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b"
        },
        {
          "skill_id": "c110316a-41d3-46ef-a35e-dbb27785b1c8"
        },
        {
          "skill_id": "e03c1859-3bae-4700-b2c5-ede2937038de"
        }
      ],
      "target_tasks": [
        {
          "task_id": "7c2f91a3-b8d4-4e56-9f12-3a8b6c4d7e90"
        },
        {
          "task_id": "d5e8f2a1-6b3c-4d79-8e45-1f2a3b4c5d6e"
        }
      ],
      "job_id": "b003505-eb84-42dc-a79f-5e7b1fe897b7",
      "version": 2,
      "created_on": "2026-04-17T09:12:43.521000+00:00",
      "last_updated": "2026-04-18T14:02:07.911000+00:00"
    }
  ]
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Query Parameters

external_vendor
enum<string>
default:techwolf

The external vendor vocabulary you want to see the Skills displayed in. This will only work for vendors that are activated on your tenant.

Available options:
techwolf,
workday,
sap_attribute_library
Example:

"workday"

versions
enum<string>
default:latest

Which versions of the AI Goal to return per Employee.

  • latest (default) — one record per Employee, the highest version.
  • all — every version per Employee, ordered newest first.
Available options:
latest,
all

Body

application/json
limit
integer
required

Number of Employees to return per page.

Required range: 1 <= x <= 100
starting_after
string<slug>

The external_id of the last Employee seen, used for cursor-based pagination. Pagination is always at Employee granularity: with versions=all the page returns every version for the Employees in the window, so the records array can be longer than limit. Omit on the first request.

Maximum string length: 100
filters
(is_active · object | last_updated · object)[]

A set of filters to apply on the exported Employees.

Response

OK

has_next
boolean
required

True when there is more data after this page.

records
object[]
required

AI Goal records. With versions=latest (default), one record per Employee. With versions=all, one record per AI Goal version — the same external_id can repeat. Employees without any AI Goal are omitted.

next_starting_after
string<slug>

The cursor value to use as starting_after on the next request. Only present when has_next is true.

Maximum string length: 100