curl --request POST \
--url https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {}
}
'import requests
url = "https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants"
payload = {
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
machine_pool_id: '<string>',
description: '<string>',
default_machine_cpu: 1073741824,
default_machine_memory_mb: 1073741824,
default_machine_env_overlay: {},
default_machine_secret_env_overlay: {},
default_machine_provider_options_overlay: {},
default_cwd: '<string>',
max_total_machines: 1073741823,
max_total_cpu: 1073741823,
max_total_memory_mb: 1073741823,
min_machine_cpu: 1073741823,
min_machine_memory_mb: 1073741823,
max_machine_cpu: 1073741824,
max_machine_memory_mb: 1073741824,
delete_after_idle_minutes: 0,
metadata: {}
})
};
fetch('https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants', 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.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants",
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([
'machine_pool_id' => '<string>',
'description' => '<string>',
'default_machine_cpu' => 1073741824,
'default_machine_memory_mb' => 1073741824,
'default_machine_env_overlay' => [
],
'default_machine_secret_env_overlay' => [
],
'default_machine_provider_options_overlay' => [
],
'default_cwd' => '<string>',
'max_total_machines' => 1073741823,
'max_total_cpu' => 1073741823,
'max_total_memory_mb' => 1073741823,
'min_machine_cpu' => 1073741823,
'min_machine_memory_mb' => 1073741823,
'max_machine_cpu' => 1073741824,
'max_machine_memory_mb' => 1073741824,
'delete_after_idle_minutes' => 0,
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants"
payload := strings.NewReader("{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"org_id": "<string>",
"project_id": "<string>",
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"id": "<string>",
"org_id": "<string>",
"project_id": "<string>",
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Create project machine pool grant
Lets a project create machines from a machine pool, optionally with its own defaults and usage caps within the pool’s limits, and returns the grant. No machines are created by this call.
curl --request POST \
--url https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {}
}
'import requests
url = "https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants"
payload = {
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
machine_pool_id: '<string>',
description: '<string>',
default_machine_cpu: 1073741824,
default_machine_memory_mb: 1073741824,
default_machine_env_overlay: {},
default_machine_secret_env_overlay: {},
default_machine_provider_options_overlay: {},
default_cwd: '<string>',
max_total_machines: 1073741823,
max_total_cpu: 1073741823,
max_total_memory_mb: 1073741823,
min_machine_cpu: 1073741823,
min_machine_memory_mb: 1073741823,
max_machine_cpu: 1073741824,
max_machine_memory_mb: 1073741824,
delete_after_idle_minutes: 0,
metadata: {}
})
};
fetch('https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants', 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.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants",
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([
'machine_pool_id' => '<string>',
'description' => '<string>',
'default_machine_cpu' => 1073741824,
'default_machine_memory_mb' => 1073741824,
'default_machine_env_overlay' => [
],
'default_machine_secret_env_overlay' => [
],
'default_machine_provider_options_overlay' => [
],
'default_cwd' => '<string>',
'max_total_machines' => 1073741823,
'max_total_cpu' => 1073741823,
'max_total_memory_mb' => 1073741823,
'min_machine_cpu' => 1073741823,
'min_machine_memory_mb' => 1073741823,
'max_machine_cpu' => 1073741824,
'max_machine_memory_mb' => 1073741824,
'delete_after_idle_minutes' => 0,
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants"
payload := strings.NewReader("{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.omnara.com/v1/orgs/{orgID}/projects/{projectID}/machine-pool-grants")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"machine_pool_id\": \"<string>\",\n \"description\": \"<string>\",\n \"default_machine_cpu\": 1073741824,\n \"default_machine_memory_mb\": 1073741824,\n \"default_machine_env_overlay\": {},\n \"default_machine_secret_env_overlay\": {},\n \"default_machine_provider_options_overlay\": {},\n \"default_cwd\": \"<string>\",\n \"max_total_machines\": 1073741823,\n \"max_total_cpu\": 1073741823,\n \"max_total_memory_mb\": 1073741823,\n \"min_machine_cpu\": 1073741823,\n \"min_machine_memory_mb\": 1073741823,\n \"max_machine_cpu\": 1073741824,\n \"max_machine_memory_mb\": 1073741824,\n \"delete_after_idle_minutes\": 0,\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"org_id": "<string>",
"project_id": "<string>",
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"id": "<string>",
"org_id": "<string>",
"project_id": "<string>",
"machine_pool_id": "<string>",
"description": "<string>",
"default_machine_cpu": 1073741824,
"default_machine_memory_mb": 1073741824,
"default_machine_env_overlay": {},
"default_machine_secret_env_overlay": {},
"default_machine_provider_options_overlay": {},
"default_cwd": "<string>",
"max_total_machines": 1073741823,
"max_total_cpu": 1073741823,
"max_total_memory_mb": 1073741823,
"min_machine_cpu": 1073741823,
"min_machine_memory_mb": 1073741823,
"max_machine_cpu": 1073741824,
"max_machine_memory_mb": 1073741824,
"delete_after_idle_minutes": 0,
"metadata": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>",
"current_digest": "<string>",
"issues": [
{
"path": "<string>",
"message": "<string>",
"line": 2,
"column": 2
}
]
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Authorizations
An opaque Omnara personal or organization bearer token.
Headers
Idempotency key for replay-safe mutating requests.
1 - 255Path Parameters
Organization ID (org_...).
^org_[a-z2-7]{26}$Project ID (proj_...).
^proj_[a-z2-7]{26}$Body
Machine pool ID (mpo_...).
^mpo_[a-z2-7]{26}$Optional note about this grant.
Default CPU count for machines this project creates from the pool, overriding the pool's default.
1 <= x <= 2147483647Default memory in MB for machines this project creates from the pool, overriding the pool's default.
1 <= x <= 2147483647Env overlay merged over the pool's default_machine_env for machines materialized through this grant; a null entry removes the key.
Show child attributes
Show child attributes
Secret env overlay merged over the pool's default_machine_secret_env for machines materialized through this grant; a null entry removes the key.
Show child attributes
Show child attributes
Provider-specific options layered over the pool's provider options for this project's machines.
Default working directory for processes on this project's machines from the pool.
Maximum number of live machines this project can have from the pool.
0 <= x <= 2147483647Maximum total CPU across this project's live machines from the pool.
0 <= x <= 2147483647Maximum total memory in MB across this project's live machines from the pool.
0 <= x <= 2147483647Smallest CPU count one of this project's machines can request.
0 <= x <= 2147483647Smallest memory in MB one of this project's machines can request.
0 <= x <= 2147483647Largest CPU count one of this project's machines can request.
1 <= x <= 2147483647Largest memory in MB one of this project's machines can request.
1 <= x <= 2147483647Idle minutes before deleting a machine created through this grant. Use 0 to disable for this grant; omit to inherit the pool default. Values from 1 through 4 are invalid.
0 <= x <= 2147483647Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 characters, values must be strings of up to 512 characters.
Show child attributes
Show child attributes
Response
Existing project machine pool grant returned.
^pmpg_[a-z2-7]{26}$^org_[a-z2-7]{26}$Project ID (proj_...).
^proj_[a-z2-7]{26}$Machine pool ID (mpo_...).
^mpo_[a-z2-7]{26}$1 <= x <= 21474836471 <= x <= 2147483647Env overlay merged over the pool's default_machine_env for machines materialized through this grant; a null entry removes the key.
Show child attributes
Show child attributes
Secret env overlay merged over the pool's default_machine_secret_env for machines materialized through this grant; a null entry removes the key.
Show child attributes
Show child attributes
0 <= x <= 21474836470 <= x <= 21474836470 <= x <= 21474836470 <= x <= 21474836470 <= x <= 21474836471 <= x <= 21474836471 <= x <= 2147483647Idle minutes before deleting a machine created through this grant. Zero disables deletion for this grant; null inherits the pool default.
0 <= x <= 2147483647Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 characters, values must be strings of up to 512 characters.
Show child attributes
Show child attributes