curl --request POST \
--url https://odyssey.asteroid.ai/agents/v2/agent-profile-pools \
--header 'Content-Type: application/json' \
--header 'X-Asteroid-Agents-Api-Key: <api-key>' \
--data '
{
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"allowConcurrentUse": false,
"selectionStrategy": "least_recently_used"
}
'import requests
url = "https://odyssey.asteroid.ai/agents/v2/agent-profile-pools"
payload = {
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"allowConcurrentUse": False,
"selectionStrategy": "least_recently_used"
}
headers = {
"X-Asteroid-Agents-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Asteroid-Agents-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
organizationId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
allowConcurrentUse: false,
selectionStrategy: 'least_recently_used'
})
};
fetch('https://odyssey.asteroid.ai/agents/v2/agent-profile-pools', 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/agent-profile-pools",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'organizationId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'allowConcurrentUse' => false,
'selectionStrategy' => 'least_recently_used'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://odyssey.asteroid.ai/agents/v2/agent-profile-pools"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Asteroid-Agents-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://odyssey.asteroid.ai/agents/v2/agent-profile-pools")
.header("X-Asteroid-Agents-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://odyssey.asteroid.ai/agents/v2/agent-profile-pools")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Asteroid-Agents-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}"
response = http.request(request)
puts response.read_body{
"allowConcurrentUse": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "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>"
}Create Agent Profile Pool
Create a new agent profile pool
curl --request POST \
--url https://odyssey.asteroid.ai/agents/v2/agent-profile-pools \
--header 'Content-Type: application/json' \
--header 'X-Asteroid-Agents-Api-Key: <api-key>' \
--data '
{
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"allowConcurrentUse": false,
"selectionStrategy": "least_recently_used"
}
'import requests
url = "https://odyssey.asteroid.ai/agents/v2/agent-profile-pools"
payload = {
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"allowConcurrentUse": False,
"selectionStrategy": "least_recently_used"
}
headers = {
"X-Asteroid-Agents-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Asteroid-Agents-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
organizationId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
allowConcurrentUse: false,
selectionStrategy: 'least_recently_used'
})
};
fetch('https://odyssey.asteroid.ai/agents/v2/agent-profile-pools', 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/agent-profile-pools",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'organizationId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'allowConcurrentUse' => false,
'selectionStrategy' => 'least_recently_used'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://odyssey.asteroid.ai/agents/v2/agent-profile-pools"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Asteroid-Agents-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://odyssey.asteroid.ai/agents/v2/agent-profile-pools")
.header("X-Asteroid-Agents-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://odyssey.asteroid.ai/agents/v2/agent-profile-pools")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Asteroid-Agents-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"organizationId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"allowConcurrentUse\": false,\n \"selectionStrategy\": \"least_recently_used\"\n}"
response = http.request(request)
puts response.read_body{
"allowConcurrentUse": true,
"createdAt": "2023-11-07T05:31:56Z",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "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
Body
Agent profile pool to create
Request to create a new agent profile pool
Name of the agent profile pool (must be unique within organization)
1 - 255The ID of the organization that the pool belongs to
Whether multiple executions can use the same profile concurrently
Strategy for selecting an available profile from the pool
least_recently_used, most_recently_used Response
The request has succeeded and a new resource has been created as a result.
A pool of agent profiles that can be used for credential rotation
Whether multiple executions can use the same profile concurrently
When the pool was created
Unique identifier for the agent profile pool
Name of the agent profile pool (unique within organization)
The ID of the organization that owns this pool
Strategy for selecting an available profile from the pool
least_recently_used, most_recently_used When the pool was last updated

