Skip to main content
Export Job Task Profile data
curl --request POST \
  --url https://{tenant_name}.{region}.techwolf.ai/job_architecture/export/jobs/task_profiles \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "limit": 10,
  "include": [
    "ai_impact",
    "source_data"
  ],
  "filters": [
    {
      "filter": "is_active",
      "is_active": true
    }
  ]
}
'
{
  "has_next": true,
  "next_starting_after": "id_4",
  "records": [
    {
      "external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7",
      "tasks": [
        {
          "task_id": "conduct-machine-learning-experiments",
          "task": "Conduct machine learning experiments",
          "validation_state": "validated",
          "weekly_hours": 5,
          "ai_impact": {
            "level": "H1",
            "rationale": "Highly automatable with AI-powered experiment tooling"
          },
          "linked_skills": [
            {
              "skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
              "skill": "Python"
            },
            {
              "skill_id": "c110316a-41d3-46ef-a35e-dbb27785b1c8",
              "skill": "Machine Learning"
            }
          ],
          "source_data": [
            {
              "external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7"
            }
          ]
        },
        {
          "task_id": "review-model-outputs",
          "task": "Review model outputs",
          "validation_state": "suggested",
          "ai_impact": {
            "level": "H3",
            "rationale": "Requires human judgment to evaluate model quality"
          },
          "linked_skills": [
            {
              "skill_id": "c110316a-41d3-46ef-a35e-dbb27785b1c8",
              "skill": "Machine Learning"
            }
          ],
          "source_data": [
            {
              "external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7"
            }
          ]
        }
      ]
    }
  ]
}

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 Jobs to return per page.

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

10

starting_after
string<slug>

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

Maximum string length: 100
Example:

"job-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_data — includes the job profile data entries 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_data,
linked_skills,
rejected_tasks,
weekly_hours
Example:
["ai_impact", "source_data"]
filters
(is_active · object | last_updated · object | job_family_id_is_in_list · object)[]

A set of filters to apply on the exported Jobs.

Response

OK

has_next
boolean
required

True when there is more data after this page.

Example:

true

records
object[]
required

List of Job 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 Job.

Example:
{
"external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7",
"tasks": [
{
"task_id": "conduct-machine-learning-experiments",
"task": "Conduct machine learning experiments",
"validation_state": "validated",
"weekly_hours": 5,
"ai_impact": {
"level": "H1",
"rationale": "Highly automatable with AI-powered experiment tooling"
},
"linked_skills": [
{
"skill_id": "4b85469d-6729-4d70-9876-a0faa2a2f63b",
"skill": "Python"
},
{
"skill_id": "c110316a-41d3-46ef-a35e-dbb27785b1c8",
"skill": "Machine Learning"
}
],
"source_data": [
{
"external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7"
}
]
},
{
"task_id": "review-model-outputs",
"task": "Review model outputs",
"validation_state": "suggested",
"ai_impact": {
"level": "H3",
"rationale": "Requires human judgment to evaluate model quality"
},
"linked_skills": [
{
"skill_id": "c110316a-41d3-46ef-a35e-dbb27785b1c8",
"skill": "Machine Learning"
}
],
"source_data": [
{
"external_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7"
}
]
}
]
}
next_starting_after
string<slug>

Cursor value for the next page. Only present when has_next is true.

Maximum string length: 100
Example:

"id_4"