AWS Compute Optimizer
amazonaws · Cloud
Compute Optimizer is a service that analyzes the configuration and utilization metrics of your Amazon Web Services compute resources, such as Amazon EC2 instances, Amazon EC2 Auto Scaling groups, Lambda functions, Amazon EBS volumes, and Amazon ECS services on Fargate. It reports whether your resources are optimal, and generates optimization recommendations to reduce the cost and improve the performance of your workloads. Compute Optimizer also provides recent utilization metric data, in additio
Authentication
Sample Requests
Describes recommendation export jobs created in the last seven days. Use the ExportAutoScalingGroupRecommendations or ExportEC2InstanceRecommendations actions to request an export of your recommendations. Then use the DescribeRecommendationExportJobs action to view you
Hover any highlighted part to learn what it does
| X-Amz-Target | ComputeOptimizerService.DescribeRecommendationExportJobs |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs?nextToken=example&maxResults=example" \ -H "X-Amz-Target: ComputeOptimizerService.DescribeRecommendationExportJobs"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "ComputeOptimizerService.DescribeRecommendationExportJobs"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ComputeOptimizerService.DescribeRecommendationExportJobs'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ComputeOptimizerService.DescribeRecommendationExportJobs")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ComputeOptimizerService.DescribeRecommendationExportJobs"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.DescribeRecommendationExportJobs?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ComputeOptimizerService.DescribeRecommendationExportJobs"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns the Compute Optimizer enrollment (opt-in) status of organization member accounts, if your account is an organization management account. To get the enrollment status of standalone accounts, use the GetEnrollmentStatus action.
Hover any highlighted part to learn what it does
| X-Amz-Target | ComputeOptimizerService.GetEnrollmentStatusesForOrganization |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization?nextToken=example&maxResults=example" \ -H "X-Amz-Target: ComputeOptimizerService.GetEnrollmentStatusesForOrganization"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "ComputeOptimizerService.GetEnrollmentStatusesForOrganization"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ComputeOptimizerService.GetEnrollmentStatusesForOrganization'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ComputeOptimizerService.GetEnrollmentStatusesForOrganization")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ComputeOptimizerService.GetEnrollmentStatusesForOrganization"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetEnrollmentStatusesForOrganization?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ComputeOptimizerService.GetEnrollmentStatusesForOrganization"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns Lambda function recommendations. Compute Optimizer generates recommendations for functions that meet a specific set of requirements. For more information, see the Supported resources and requirement
Hover any highlighted part to learn what it does
| X-Amz-Target | ComputeOptimizerService.GetLambdaFunctionRecommendations |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations?nextToken=example&maxResults=example" \ -H "X-Amz-Target: ComputeOptimizerService.GetLambdaFunctionRecommendations"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "ComputeOptimizerService.GetLambdaFunctionRecommendations"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ComputeOptimizerService.GetLambdaFunctionRecommendations'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ComputeOptimizerService.GetLambdaFunctionRecommendations")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ComputeOptimizerService.GetLambdaFunctionRecommendations"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/compute-optimizer/2019-11-01/#X-Amz-Target=ComputeOptimizerService.GetLambdaFunctionRecommendations?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ComputeOptimizerService.GetLambdaFunctionRecommendations"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with AWS Compute Optimizer?
AWS Compute Optimizer is a Cloud API. Developers commonly use cloud APIs for:
- provisioning and managing cloud infrastructure
- automating deployments and container orchestration
- monitoring uptime and performance metrics
- managing storage buckets and databases
- setting up auto-scaling and load balancing
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. AWS Compute Optimizer is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?