List running environments (external)
curl --request GET \
--url https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments \
--header 'X-Asteroid-Agents-Api-Key: <api-key>'import requests
url = "https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments"
headers = {"X-Asteroid-Agents-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Asteroid-Agents-Api-Key': '<api-key>'}};
fetch('https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments', 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://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Asteroid-Agents-Api-Key: <api-key>"
],
]);
$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://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Asteroid-Agents-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments")
.header("X-Asteroid-Agents-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Asteroid-Agents-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"environments": [
{
"createdAt": "2023-11-07T05:31:56Z",
"environmentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expiresAt": "2023-11-07T05:31:56Z",
"agentProfileId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"conversationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"executionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"readyAt": "2023-11-07T05:31:56Z"
}
]
}{
"code": 400,
"message": "<string>"
}{
"code": 401,
"message": "<string>"
}{
"code": 403,
"message": "<string>"
}{
"code": 404,
"message": "<string>"
}{
"code": 500,
"message": "<string>"
}Environments
List running environments (external)
List the currently-running external-owned environments for this agent, to rediscover an env to attach to. Only external-owned environments are ever returned: an agentβs execution- and astro-owned environments are private to those owners.
GET
/
agents
/
{agentId}
/
environments
List running environments (external)
curl --request GET \
--url https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments \
--header 'X-Asteroid-Agents-Api-Key: <api-key>'import requests
url = "https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments"
headers = {"X-Asteroid-Agents-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Asteroid-Agents-Api-Key': '<api-key>'}};
fetch('https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments', 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://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Asteroid-Agents-Api-Key: <api-key>"
],
]);
$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://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Asteroid-Agents-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments")
.header("X-Asteroid-Agents-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://odyssey.asteroid.ai/agents/v2/agents/{agentId}/environments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Asteroid-Agents-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"environments": [
{
"createdAt": "2023-11-07T05:31:56Z",
"environmentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"expiresAt": "2023-11-07T05:31:56Z",
"agentProfileId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"conversationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"executionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"readyAt": "2023-11-07T05:31:56Z"
}
]
}{
"code": 400,
"message": "<string>"
}{
"code": 401,
"message": "<string>"
}{
"code": 403,
"message": "<string>"
}{
"code": 404,
"message": "<string>"
}{
"code": 500,
"message": "<string>"
}Authorizations
Path Parameters
The agent whose environments to list.
Response
The request has succeeded.
Response for the list endpoint. Astro hits this when it doesn't have an environment id in slip state and wants to see what it can attach to before deciding to start fresh.
All currently-running envs owned by the agent in question, ordered by createdAt DESC. Empty array when no envs are running.
Show child attributes
Show child attributes
βI

