AWS Marketplace Catalog Service
amazonaws · Cloud
Catalog API actions allow you to manage your entities through list, describe, and update capabilities. An entity can be a product or an offer on AWS Marketplace. You can automate your entity update process by integrating the AWS Marketplace Catalog API with your AWS Marketplace product build or deployment pipelines. You can also create your own applications on top of the Catalog API to manage your products on AWS Marketplace.
Authentication
Sample Requests
Provides information about a given change set.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId?catalog=example&changeSetId=example"
import requests
params = {
"catalog": "example",
"changeSetId": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId');
url.searchParams.set('catalog', 'example');
url.searchParams.set('changeSetId', 'example');
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/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId")
q := baseURL.Query()
q.Set("catalog", "example")
q.Set("changeSetId", "example")
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/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId")
uri.query = URI.encode_www_form({
"catalog" => "example",
"changeSetId" => "example"
})
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/marketplace-catalog/2018-09-17/DescribeChangeSet#catalog&changeSetId?" . http_build_query([
"catalog" => "example",
"changeSetId" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns the metadata and content of the entity.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId?catalog=example&entityId=example"
import requests
params = {
"catalog": "example",
"entityId": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId');
url.searchParams.set('catalog', 'example');
url.searchParams.set('entityId', 'example');
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/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId")
q := baseURL.Query()
q.Set("catalog", "example")
q.Set("entityId", "example")
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/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId")
uri.query = URI.encode_www_form({
"catalog" => "example",
"entityId" => "example"
})
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/marketplace-catalog/2018-09-17/DescribeEntity#catalog&entityId?" . http_build_query([
"catalog" => "example",
"entityId" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Gets a resource-based policy of an Entity that is identified by its resource ARN.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn?resourceArn=example"
import requests
params = {
"resourceArn": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn');
url.searchParams.set('resourceArn', 'example');
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/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn")
q := baseURL.Query()
q.Set("resourceArn", "example")
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/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn")
uri.query = URI.encode_www_form({
"resourceArn" => "example"
})
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/marketplace-catalog/2018-09-17/GetResourcePolicy#resourceArn?" . http_build_query([
"resourceArn" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$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 Marketplace Catalog Service?
AWS Marketplace Catalog Service 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 Marketplace Catalog Service 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?