canonical: https://jentic.com/apis/amazonaws.com/marketplace-catalog

# AWS Marketplace Catalog Service

Jentic publishes the only available OpenAPI specification for AWS Marketplace Catalog Service, keeping it validated and agent-ready. The Catalog API lets AWS Marketplace sellers automate product and offer management - listing entities, describing change sets, submitting changes, and applying resource policies for shared editing. It is the programmatic counterpart to the Marketplace Management Portal and supports product types such as SaaS, AMI, container, and AI/ML offerings. Change sets are the unit of edit, asynchronously applied with describe and cancel operations for status tracking.

## For AI agents

List, describe, and update AWS Marketplace product entities and offers programmatically through change sets and resource policies.

## Scope

Does not handle metering, billing, customer subscriptions, or buyer-side actions - use for AWS Marketplace seller-side product and offer catalog management only.

## Capabilities

- List Marketplace entities such as products, offers, and resale authorizations by type
- Describe a single entity to retrieve its current detail document
- Submit a change set with one or more change types to create or update entities
- Cancel a pending change set before AWS applies the requested changes
- Track change set status, applied changes, and per-change error details
- Attach or remove IAM resource policies that control who can edit a Marketplace entity
- Tag Marketplace entities and change sets for cost allocation and access control

## Use cases

### Programmatic Product Catalog Management

Independent software vendors automate Marketplace listings instead of using the Management Portal - pushing pricing updates, version changes, and metering dimensions through StartChangeSet. Each change is tracked as a change set with describe and cancel operations, giving the seller a full audit log of catalog edits and the ability to roll back unapplied changes.

Example prompt: Submit a StartChangeSet for the SaaSProduct catalog with a single change of ChangeType=UpdatePricingTerms and the new dimension price, then poll DescribeChangeSet until Status is SUCCEEDED

### Multi-Account Catalog Editing

Sellers operating across linked AWS accounts use PutResourcePolicy to grant edit rights on a Marketplace entity to teammates without sharing root credentials. The IAM policy is attached directly to the entity, and DeleteResourcePolicy revokes access. This pattern supports separation of duties between product, finance, and partnerships teams within one ISV.

Example prompt: Call PutResourcePolicy on EntityArn arn:aws:aws-marketplace:::Product/abc123 with a policy granting marketplace-catalog:StartChangeSet to a partner account principal

### Continuous Listing Validation

Operations teams run scheduled jobs that ListEntities for each product type and DescribeEntity for any entry in CHANGES_PENDING - surfacing pricing or visibility issues before customers see them. This monitoring pattern catches stuck change sets, flagged entities, and unintended visibility changes early, before they affect Marketplace transactions.

Example prompt: Call ListEntities with EntityType=SaaSProduct, then DescribeEntity for each result with EntityIdFilter to find any whose Visibility is Restricted

### AI Agent Marketplace Automation

ISVs run AI agents through Jentic to automate routine Marketplace tasks: pushing release notes via change sets, rolling pricing updates across regions, and reporting on catalog health. Jentic isolates the AWS access keys in the vault and surfaces the catalog operations as discoverable tools so the agent can answer 'update pricing for product X' without seeing raw long-lived keys.

Example prompt: Search Jentic for 'submit a marketplace change set', load the StartChangeSet operation, and execute it with Catalog=AWSMarketplace and a single UpdateInformation change for the target SaaS product

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /ListEntities | List Marketplace entities by type |
| GET | /DescribeEntity#catalog&entityId | Describe a single entity in detail |
| POST | /StartChangeSet | Submit a new change set |
| GET | /DescribeChangeSet#catalog&changeSetId | Describe an existing change set |
| POST | /CancelChangeSet#catalog&changeSetId | Cancel an in-progress change set |
| POST | /PutResourcePolicy | Attach a resource policy to an entity |
| POST | /ListChangeSets | List recent change sets in the catalog |

## Key resources

- **Entities** — List and describe Marketplace product, offer, and resale entities
- **ChangeSets** — Submit, describe, list, and cancel asynchronous change sets
- **ResourcePolicy** — Attach, fetch, or delete IAM resource policies on entities
- **Tags** — List, add, or remove tags on entities and change sets

## Why Jentic

- **Setup:** Wiring the AWS Marketplace Catalog Service by hand means implementing Signature Version 4 signing, resolving the regional catalog.marketplace host, and handling the asynchronous change-set polling loop yourself. Through Jentic you install once, import Marketplace Catalog from the API Directory, store the AWS keys once, and your agent calls it.
- **Permission scoping:** Marketplace Catalog is a JSON action API where the entity and change-set identifiers travel in the request body, so scope the agent to the operations it needs, such as ListEntities and DescribeEntity for read-only inspection. You choose the operations it may call, so change operations like StartChangeSet are not included unless you add them.
- **Credential handling:** Your AWS access keys are stored once, encrypted, by your own Jentic One instance and each request is signed with Signature Version 4 at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'submit a marketplace change set' or 'list marketplace entities', and Jentic returns the matching Marketplace Catalog operation with its input schema, including the asynchronous ChangeSetId polling pattern, so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **AWS Marketplace Metering** — Metering reports usage for SaaS products listed via the Catalog API
- **AWS License Manager** — License Manager governs entitlements created via Marketplace offers
- **AWS Service Catalog AppRegistry** — AppRegistry catalogs internal applications; Marketplace Catalog catalogs customer-facing products

## FAQ

### Why is there no official OpenAPI spec for AWS Marketplace Catalog Service?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call AWS Marketplace Catalog Service via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AWS Marketplace Catalog API use?

The API uses AWS Signature Version 4 (HMAC) with an access key ID and secret access key scoped via IAM policies under the aws-marketplace and marketplace-catalog action namespaces. Through Jentic, those keys live in the encrypted vault and Jentic signs each request server-side.

### Can I update product pricing with the AWS Marketplace Catalog API?

Yes. Submit a change set via POST /StartChangeSet with ChangeType=UpdatePricingTerms or UpdateOfferTerms, providing the EntityIdentifier and the new pricing details. The change set runs asynchronously - poll DescribeChangeSet with the returned ChangeSetId until Status is SUCCEEDED.

### What are the rate limits for the AWS Marketplace Catalog API?

AWS does not publish hard request-per-second limits for Marketplace Catalog operations in this spec. Concurrent change sets per entity are restricted - only one open change set can target a given entity at a time, and StartChangeSet returns ResourceInUseException if you violate that constraint.

### How do I list my Marketplace entities through Jentic?

Search Jentic for 'list marketplace products' to find POST /ListEntities. Load its schema with the Jentic SDK (pip install jentic), then execute it with Catalog=AWSMarketplace and EntityType set to SaaSProduct, AmiProduct, or ContainerProduct as needed. Pagination is via the NextToken field in responses.

### Is the AWS Marketplace Catalog Service free?

Yes - the Catalog API itself has no usage charge. Sellers pay AWS Marketplace listing and transaction fees on the underlying products and offers. Standard data transfer charges may apply for very high-volume API use, but typical seller workflows incur no API cost.

### Can I limit what my agent is allowed to do with the AWS Marketplace Catalog API?

Yes. Because you run Jentic One yourself, you decide which Marketplace Catalog operations the agent may call and which AWS credentials back them. Scope it to read-only inspection with ListEntities and DescribeEntity, and change operations such as StartChangeSet, CancelChangeSet, and PutResourcePolicy stay unavailable unless you explicitly add them. Your AWS keys are held by your own instance and signed into each request at execution time, so the agent never handles the raw keys.
