Skip to main content
Export Employee Task Profile data
curl --request POST \
  --url https://{tenant_name}.{region}.techwolf.ai/export/employees/task_profiles \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "limit": 10,
  "include": [
    "ai_impact",
    "source_events"
  ],
  "filters": [
    {
      "filter": "is_active",
      "is_active": true
    }
  ]
}
'
{
  "has_next": true,
  "next_starting_after": "id_4",
  "records": [
    {
      "external_id": "61a6e076-d780-11ec-9d64-0242ac120002",
      "tasks": [
        {
          "task_id": "write-unit-tests",
          "task": "Write unit tests",
          "validation_state": "validated",
          "weekly_hours": 5,
          "ai_impact": {
            "level": "H2",
            "rationale": "Portions can be automated via LLM test generation"
          },
          "linked_skills": [
            {
              "skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
              "skill": "Python"
            },
            {
              "skill_id": "e03c1859-3bae-4700-b2c5-ede2937038de",
              "skill": "Test-Driven Development"
            }
          ],
          "source_events": [
            {
              "external_id": "5cbdbdbe-5f44-4423-8157-520f8a2f429a",
              "event_type": "project"
            }
          ]
        },
        {
          "task_id": "review-pull-requests",
          "task": "Review pull requests",
          "validation_state": "suggested",
          "ai_impact": {
            "level": "H3",
            "rationale": "Requires human judgment for code quality assessment"
          },
          "linked_skills": [
            {
              "skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
              "skill": "Python"
            }
          ],
          "source_events": [
            {
              "external_id": "5cbdbdbe-5f44-4423-8157-520f8a2f429a",
              "event_type": "project"
            }
          ]
        }
      ]
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://developers.techwolf.ai/llms.txt

Use this file to discover all available pages before exploring further.

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"

response_format
enum<string>
default:list

The format of the response profile.

Available options:
list,
hierarchy
Example:

"list"

Body

application/json
limit
integer
required

Number of Employees to return per page.

Required range: 1 <= x <= 100
Example:

10

starting_after
string<slug>

The external_id of the last Employee seen. Used for cursor-based pagination. Omit on the first request.

Maximum string length: 100
Example:

"id_9"

include
enum<string>[]

Additional attributes that will be included in the response body.

  • ai_impact — includes AI impact level and rationale per task.
  • source_events — includes the source events behind each task.
  • linked_skills — includes Skills linked to each task, with Skill ID and name. Use the external_vendor query parameter to display Skill names in an external vendor vocabulary.
  • rejected_tasks — includes tasks that were rejected via PATCH feedback (excluded by default).
  • weekly_hours — includes the estimated number of hours spent on each task per week.
Available options:
ai_impact,
source_events,
linked_skills,
rejected_tasks,
weekly_hours
Example:
["ai_impact", "source_events"]
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.

Example:

true

records
object[]
required

List of Employee task profile records. Shape depends on response_format: each record contains either a flat tasks array (list) or a nested hierarchy tree (hierarchy).

Record shape when response_format=list (default). The profile consists of a flat list of Tasks assigned to the Employee.

Example:
{
"external_id": "61a6e076-d780-11ec-9d64-0242ac120002",
"tasks": [
{
"task_id": "write-unit-tests",
"task": "Write unit tests",
"validation_state": "validated",
"weekly_hours": 5,
"ai_impact": {
"level": "H2",
"rationale": "Portions can be automated via LLM test generation"
},
"linked_skills": [
{
"skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
"skill": "Python"
},
{
"skill_id": "e03c1859-3bae-4700-b2c5-ede2937038de",
"skill": "Test-Driven Development"
}
],
"source_events": [
{
"external_id": "5cbdbdbe-5f44-4423-8157-520f8a2f429a",
"event_type": "project"
}
]
},
{
"task_id": "review-pull-requests",
"task": "Review pull requests",
"validation_state": "suggested",
"ai_impact": {
"level": "H3",
"rationale": "Requires human judgment for code quality assessment"
},
"linked_skills": [
{
"skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
"skill": "Python"
}
],
"source_events": [
{
"external_id": "5cbdbdbe-5f44-4423-8157-520f8a2f429a",
"event_type": "job"
}
]
}
]
}
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
Example:

"id_4"