Get task details
curl --request GET \
--url https://neo.api.projectdiscovery.io/api/v1/tasks/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://neo.api.projectdiscovery.io/api/v1/tasks/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://neo.api.projectdiscovery.io/api/v1/tasks/{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{
"messages": [
{}
],
"task": {
"created_at": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"created_by": "jsmith@example.com",
"is_isolated": true,
"is_scheduled": true,
"model": "<string>",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schedule_info": {
"execution_count": 123,
"schedule_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"execution_info": {
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scheduled_at": "2023-11-07T05:31:56Z",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z"
},
"last_executed_at": "2023-11-07T05:31:56Z",
"next_execution_at": "2023-11-07T05:31:56Z",
"schedule_name": "<string>",
"start_time": "<string>"
},
"secret_names": [
"<string>"
],
"updated_at": "2023-11-07T05:31:56Z"
},
"read_only": true,
"stream": {
"hasStream": true,
"last_seq": 123,
"run_config": {
"agent_id": "<string>",
"agent_ids": [
"<string>"
],
"ask_question": true,
"auto_execute": true,
"max_iterations": 2,
"max_steps": 102,
"model": "<string>",
"sandbox_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
},
"streamId": "<string>",
"streamStatus": "<string>"
},
"streamUrls": [
{
"streamId": "<string>",
"url": "<string>",
"status": "<string>"
}
],
"streams": [
{
"created_at": "2023-11-07T05:31:56Z",
"status": "<string>",
"stream_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"completed_at": "2023-11-07T05:31:56Z",
"run_config": {
"agent_id": "<string>",
"agent_ids": [
"<string>"
],
"ask_question": true,
"auto_execute": true,
"max_iterations": 2,
"max_steps": 102,
"model": "<string>",
"sandbox_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}
]
}{
"error": "Bad request",
"code": "user_spending_cap_reached",
"error_id": "<string>",
"kind": "forbidden request",
"message": "<string>"
}{
"error": "Bad request",
"code": "user_spending_cap_reached",
"error_id": "<string>",
"kind": "forbidden request",
"message": "<string>"
}Tasks
Get task details
Retrieve task metadata and all messages for a specific task
GET
/
api
/
v1
/
tasks
/
{id}
Get task details
curl --request GET \
--url https://neo.api.projectdiscovery.io/api/v1/tasks/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://neo.api.projectdiscovery.io/api/v1/tasks/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{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://neo.api.projectdiscovery.io/api/v1/tasks/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://neo.api.projectdiscovery.io/api/v1/tasks/{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{
"messages": [
{}
],
"task": {
"created_at": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"created_by": "jsmith@example.com",
"is_isolated": true,
"is_scheduled": true,
"model": "<string>",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"schedule_info": {
"execution_count": 123,
"schedule_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"execution_info": {
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scheduled_at": "2023-11-07T05:31:56Z",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z"
},
"last_executed_at": "2023-11-07T05:31:56Z",
"next_execution_at": "2023-11-07T05:31:56Z",
"schedule_name": "<string>",
"start_time": "<string>"
},
"secret_names": [
"<string>"
],
"updated_at": "2023-11-07T05:31:56Z"
},
"read_only": true,
"stream": {
"hasStream": true,
"last_seq": 123,
"run_config": {
"agent_id": "<string>",
"agent_ids": [
"<string>"
],
"ask_question": true,
"auto_execute": true,
"max_iterations": 2,
"max_steps": 102,
"model": "<string>",
"sandbox_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
},
"streamId": "<string>",
"streamStatus": "<string>"
},
"streamUrls": [
{
"streamId": "<string>",
"url": "<string>",
"status": "<string>"
}
],
"streams": [
{
"created_at": "2023-11-07T05:31:56Z",
"status": "<string>",
"stream_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"completed_at": "2023-11-07T05:31:56Z",
"run_config": {
"agent_id": "<string>",
"agent_ids": [
"<string>"
],
"ask_question": true,
"auto_execute": true,
"max_iterations": 2,
"max_steps": 102,
"model": "<string>",
"sandbox_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}
]
}{
"error": "Bad request",
"code": "user_spending_cap_reached",
"error_id": "<string>",
"kind": "forbidden request",
"message": "<string>"
}{
"error": "Bad request",
"code": "user_spending_cap_reached",
"error_id": "<string>",
"kind": "forbidden request",
"message": "<string>"
}Authorizations
BearerAuthApiKeyAuth
JWT authentication token
Path Parameters
Task ID
Response
Task details with messages
Array of task messages
Show child attributes
Show child attributes
True when viewer has read-only access (e.g. team member viewing a team task)
Show child attributes
Show child attributes
Presigned URLs for stream content
Show child attributes
Show child attributes
Each agent run for this task, oldest first. Run settings are included when available.
Show child attributes
Show child attributes
⌘I

