List a run's tasks
curl --request GET \
--url https://api.example.com/api/crew-runs/{run_id}/tasks \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/crew-runs/{run_id}/tasks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/crew-runs/{run_id}/tasks', 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://api.example.com/api/crew-runs/{run_id}/tasks",
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://api.example.com/api/crew-runs/{run_id}/tasks"
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://api.example.com/api/crew-runs/{run_id}/tasks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/crew-runs/{run_id}/tasks")
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{
"run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"replayable": true,
"reason": "<string>",
"parent_run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"replayed_from_task": 123,
"tasks": [
{
"task_index": 123,
"task_key": "<string>",
"agent": "<string>",
"raw": "<string>",
"raised": false,
"was_replayed": false,
"finished_at": "2023-11-07T05:31:56Z"
}
]
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Crew runs
List a run's tasks
The tasks a run finished, and the one it stopped at.
Same visibility as GET /api/crew-runs/{run_id}: your own runs, or any
run with nx1_crew_admin. replayable says whether the run can be
restarted at a task, and reason says why not when it cannot.
GET
/
api
/
crew-runs
/
{run_id}
/
tasks
List a run's tasks
curl --request GET \
--url https://api.example.com/api/crew-runs/{run_id}/tasks \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/crew-runs/{run_id}/tasks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/crew-runs/{run_id}/tasks', 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://api.example.com/api/crew-runs/{run_id}/tasks",
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://api.example.com/api/crew-runs/{run_id}/tasks"
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://api.example.com/api/crew-runs/{run_id}/tasks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/crew-runs/{run_id}/tasks")
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{
"run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"replayable": true,
"reason": "<string>",
"parent_run_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"replayed_from_task": 123,
"tasks": [
{
"task_index": 123,
"task_key": "<string>",
"agent": "<string>",
"raw": "<string>",
"raised": false,
"was_replayed": false,
"finished_at": "2023-11-07T05:31:56Z"
}
]
}{
"error": "<string>",
"code": 500
}{
"error": "<string>",
"code": 500
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
OAuth2AuthorizationCodeBearerAPIKeyHeader
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
ID of the run record.
Response
Successful Response
A run's kept tasks, and whether it can be restarted at one.
The run these tasks belong to.
Whether this run can be restarted at a task: a custom crew with at least one kept task.
Why it cannot be restarted, when it cannot.
The run this one replayed, if any.
The task index this run started at, if a replay.
The tasks, in the order they ran.
Show child attributes
Show child attributes
Was this page helpful?

