curl --request GET \
--url https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"task_id": "56dcdb53-264e-f380-50bf-5179e2d082af",
"task_name": "Write unit tests for backend services"
}Get a Task
Fetch a single Task by its task_id.
The task_id of Tasks can be found via the task search or task export
endpoints. For custom Tasks, the POST /tasks endpoint also returns the
associated task_id. By default the response contains only task_id and
task_name; request additional attributes via include.
curl --request GET \
--url https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{tenant_name}.{region}.techwolf.ai/tasks/{task_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"task_id": "56dcdb53-264e-f380-50bf-5179e2d082af",
"task_name": "Write unit tests for backend services"
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The identifier of the Task.
100"ba418404-3df1-cb19-a73c-1fb9351846d5"
Query Parameters
Additional attributes to include in the response. This query parameter can be added multiple times to include more attributes. By default none of these are returned.
ai_impact— includes AI impact level and rationale.hierarchy— includes the task's position in the work taxonomy (domain → subdomain → cluster → canonical task).task_source— distinguishes standard work-taxonomy Tasks (vocabulary) from Tasks created through thePOST /tasksendpoint (custom).enrichment_status— includes the status of the task's asynchronous AI-impact enrichment (pending,complete, orfailed).
ai_impact, hierarchy, task_source, enrichment_status Response
OK
Unique identifier of a Task.
"56dcdb53-264e-f380-50bf-5179e2d082af"
Name/description of the task.
"Write unit tests for backend services"
AI impact level and rationale for this task. Only present when include=ai_impact.
Show child attributes
Show child attributes
Position of this task in the work taxonomy (domain → subdomain → cluster → canonical task). Only present when include=hierarchy. Either all fields are populated, or all fields are null when the task has no position in the work taxonomy.
Show child attributes
Show child attributes
Origin of the task. Only present when include=task_source.
vocabulary, custom "vocabulary"
Status of the task's asynchronous AI-impact enrichment. Only present when include=enrichment_status.
pending, complete, failed "complete"
Was this page helpful?