AWS Application Cost Profiler
amazonaws · Cloud
This reference provides descriptions of the AWS Application Cost Profiler API. The AWS Application Cost Profiler API provides programmatic access to view, create, update, and delete application cost report definitions, as well as to import your usage data into the Application Cost Profiler service. For more information about using this service, see the AWS Application Cost Profiler
Authentication
Sample Requests
Retrieves a list of all reports and their configurations for your AWS account. The maximum number of reports is one.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition?nextToken=example&maxResults=1"
import requests
params = {
"nextToken": "example",
"maxResults": "1"
}
response = requests.get(
"https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', '1');
const response = await fetch(url);
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/applicationcostprofiler/2020-09-10/reportDefinition")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "1")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
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/applicationcostprofiler/2020-09-10/reportDefinition")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "1"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition?" . http_build_query([
"nextToken" => "example",
"maxResults" => "1"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Retrieves the definition of a report already configured in AWS Application Cost Profiler.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}"import requests
response = requests.get(
"https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}';
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}"
req, _ := http.NewRequest("GET", targetURL, nil)
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/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/reportDefinition/{reportId}";
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Ingests application usage data from Amazon Simple Storage Service (Amazon S3). The data must already exist in the S3 location. As part of the action, AWS Application Cost Profiler copies the object from your S3 bucket to an S3 bucket owned by Amazon for processing asynchronously.
Hover any highlighted part to learn what it does
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/importApplicationUsage"
import requests
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/importApplicationUsage",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/importApplicationUsage';
const response = await fetch(url, {
method: 'POST',
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/importApplicationUsage"
req, _ := http.NewRequest("POST", targetURL, nil)
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/applicationcostprofiler/2020-09-10/importApplicationUsage")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/applicationcostprofiler/2020-09-10/importApplicationUsage";
$opts = ["http" => [
"method" => "POST",
]];
$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 Application Cost Profiler?
AWS Application Cost Profiler 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 Application Cost Profiler 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?