AWS Marketplace

Updating your AWS Marketplace products via Catalog API

We are pleased to announce the availability of the AWS Marketplace Catalog API. This new feature provides an API interface to programmatically view and update your data products. You can now extend your release and deployment pipeline to programmatically publish new dataset revisions to your data products using AWS SDKs and Catalog APIs.

AWS Marketplace Catalog API provides access to view your products (also known as entities) via ListEntities and DescribeEntity APIs. You can request updates to your products, view change history, and cancel ongoing changes via StartChangeSet, ListChangeSet, DescribeChangeSet, and CancelChangeSet APIs. Your intention for an update is represented by a change type. Each entity type has a predefined list of change types that can be invoked through Catalog API. Multiple changes for a given entity can be bundled together in a ChangeSet.

AWS Marketplace Catalog API now supports AddRevisions change type for data products. Data providers can use AddRevisions change type to request updates to their entities via StartChangeSet. Catalog API support for new change types and other product types in AWS Marketplace will follow.

How to Get Started

In order to use AWS Marketplace Catalog API to programmatically update your data products, AWS suggests you take the following actions:

Authorization: Data providers who meet the AWS Data Exchange eligibility criteria get automatic access to AWS Marketplace Catalog API as part of their on-boarding. To learn more about how to qualify as a data provider, see Getting Started as a Provider.

Initial Setup: Install the newest version of AWS Command Line Interface (AWS CLI) and/or use AWS SDKs. You can use the AWS Marketplace Catalog API by integrating with your own REST client, or one of the AWS SDKs.

Understanding Catalog APIs: Get familiar with the AWS Marketplace Catalog APIs that you will use to update your products. The following chart lists the API names with their descriptions.

Access Management: Use AWS Identity and Access Management (IAM) to create IAM roles and assign policies that grant limited permissions to your users. The policies define the actions the role can take on your product entities through the AWS Marketplace Catalog API. For example, you can define roles such as engineering, marketing, and pricing. A user who has been added to the engineering role might be granted permissions to initiate a change request to publish a new version. However, that user cannot list all change sets. Refer to AWS Marketplace Catalog API Access Control for details.

The following example is a policy document that grants access to all six actions in the AWS Marketplace Catalog API.

Catalog API Managed Policies

For request/response parameters and service limits, check the Catalog API Reference Guide.

How to Make Updates via Catalog API

Each entity is identified by its unique EntityId. To make changes to your data product, you must obtain an EntityId (described in the following steps 1 and 2). After you get your EntityId, you can make updates to it (described in steps 3 and 4).

  1. Call ListEntities to list all available entities for a particular EntityType in AWS Marketplace.
  2. Call DescribeEntity to retrieve details about one of the products obtained from the ListEntities call.
  3. Call StartChangeSet with change types specified depending on changes you want to make. The change type would be AddRevisions. Malformed requests will be rejected synchronously when the APIs are invoked.
  4. Call DescribeChangeSet to verify completion of a change request. Issues detected during change execution are reported as part of DescribeChangeSet.

To learn more about making updates to your data products via Catalog API, visit Publish and update data products dynamically with AWS Data Exchange.

If you are a seller in AWS Marketplace and want to learn more about Catalog API, visit the Catalog API reference guide or contact AWS Marketplace Seller Operations. For AWS Data Exchange support, contact AWS Marketplace Customer Support.

Available Now

The AWS Marketplace Catalog API can be accessed from the US East (N. Virginia) AWS Region with the following endpoint: catalog.marketplace.us-east-1.amazonaws.com.

Resources

Catalog API:

AWS Data Exchange:

 


About the Author

Vijay Kumar is a Senior Program Manager at AWS Marketplace. He enjoys solving challenging problems using technology to make this world a better place. Outside of work, he loves to hike and explore new places. In Vijay’s leisure time, you will find him spending time with his friends or binge-watching the best new Netflix series.

 

 

About the Co-author

Julia Brosseau is a Technical Account Manager at AWS Marketplace. Julia is passionate about optimization of work through process automation. Outside of work, she loves reading and watching documentaries. In her spare time, you will find her at a car show.