curl --request GET \
--url https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs', 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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs",
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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs"
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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs")
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{
"setup_runs": [
{
"created_at": "2023-11-07T05:31:56Z",
"environment_id": "<string>",
"kind": "<string>",
"organization_id": "<string>",
"setup_run_id": "<string>",
"status": "<string>",
"compute_id": "<string>",
"compute_profile": {},
"duration_ms": 0,
"exit_code": 0,
"failed_command": "<string>",
"failed_line": 0,
"failure_code": "<string>",
"fingerprint": "<string>",
"finished_at": "2023-11-07T05:31:56Z",
"gpu_readiness": {},
"hint": "<string>",
"hint_code": "<string>",
"image": "<string>",
"imageCapture": {
"at": "2023-11-07T05:31:56Z",
"setupRunId": "<string>",
"status": "failed",
"message": "<string>",
"reason": "<string>"
},
"imageId": "<string>",
"log_bytes": 0,
"log_lines": 0,
"log_truncated": true,
"message": "<string>",
"next_action": {
"method": "<string>",
"operation_id": "managedAgentsGetEnvironmentSetupRunLog",
"path": "<string>"
},
"phase": "<string>",
"providerRunId": "<string>",
"requested_by_user_id": "<string>",
"session_id": "<string>",
"setupImage": {
"baseImageDigest": "<string>",
"capturedAt": "2023-11-07T05:31:56Z",
"computeId": "<string>",
"fingerprint": "<string>",
"generation": 0,
"image": "<string>",
"imageId": "<string>",
"runnerImage": "<string>",
"setupRunId": "<string>",
"sizeBytes": 0,
"usable": true,
"warmup": "<string>",
"warmupMessage": "<string>"
},
"started_at": "2023-11-07T05:31:56Z",
"stderr_tail": "<string>"
}
]
}{
"code": "invalid_request",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "unauthorized",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "forbidden",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "not_found",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "payload_too_large",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "rate_limit_exceeded",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "internal_error",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "bad_gateway",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "managed_agents_unavailable",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "gateway_timeout",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}List setup runs
Returns the environment’s recent setup runs, newest first: manual, automatic runner_refresh, and legacy session-triggered runs. The newest manual or runner_refresh run supplies the environment’s setup_verification verdict; a session run records legacy in-session setup and can be read here by its session_id.
curl --request GET \
--url https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs', 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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs",
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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs"
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.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.recursion.labelbox.com/managed-agents/v1/environments/{environmentId}/setup-runs")
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{
"setup_runs": [
{
"created_at": "2023-11-07T05:31:56Z",
"environment_id": "<string>",
"kind": "<string>",
"organization_id": "<string>",
"setup_run_id": "<string>",
"status": "<string>",
"compute_id": "<string>",
"compute_profile": {},
"duration_ms": 0,
"exit_code": 0,
"failed_command": "<string>",
"failed_line": 0,
"failure_code": "<string>",
"fingerprint": "<string>",
"finished_at": "2023-11-07T05:31:56Z",
"gpu_readiness": {},
"hint": "<string>",
"hint_code": "<string>",
"image": "<string>",
"imageCapture": {
"at": "2023-11-07T05:31:56Z",
"setupRunId": "<string>",
"status": "failed",
"message": "<string>",
"reason": "<string>"
},
"imageId": "<string>",
"log_bytes": 0,
"log_lines": 0,
"log_truncated": true,
"message": "<string>",
"next_action": {
"method": "<string>",
"operation_id": "managedAgentsGetEnvironmentSetupRunLog",
"path": "<string>"
},
"phase": "<string>",
"providerRunId": "<string>",
"requested_by_user_id": "<string>",
"session_id": "<string>",
"setupImage": {
"baseImageDigest": "<string>",
"capturedAt": "2023-11-07T05:31:56Z",
"computeId": "<string>",
"fingerprint": "<string>",
"generation": 0,
"image": "<string>",
"imageId": "<string>",
"runnerImage": "<string>",
"setupRunId": "<string>",
"sizeBytes": 0,
"usable": true,
"warmup": "<string>",
"warmupMessage": "<string>"
},
"started_at": "2023-11-07T05:31:56Z",
"stderr_tail": "<string>"
}
]
}{
"code": "invalid_request",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "unauthorized",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "forbidden",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "not_found",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "payload_too_large",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "rate_limit_exceeded",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "internal_error",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "bad_gateway",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "managed_agents_unavailable",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}{
"code": "gateway_timeout",
"message": "<string>",
"details": {
"field": "<string>",
"issues": [
"<string>"
],
"requestId": "<string>",
"retryable": true
}
}Authorizations
A Recursion API key, created in the console under API keys.
Headers
Optional tenant consistency check. When present, it must name the tenant bound to the API key, including when x-organization-id is default.
1Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or default.
1Path Parameters
Environment id (UUID).
Query Parameters
Maximum runs to return, newest first. Defaults to 50.
1 <= x <= 50Response
Recent setup runs for one environment, newest first. The newest manual run is the one the environment's setup_verification describes.
Recent setup runs for one environment, newest first. The newest manual run is the one the environment's setup_verification describes.
The environment's setup runs, newest first. Empty array when none has been requested.
Show child attributes
Show child attributes