skip to Main Content

I need to retrieve the product catalog of my seller partner on Amazon. Although the API refers to this as "Inventory," I couldn’t find this term in the SDK documentation. I assume that the "Catalog" namespace is the equivalent.

Update:

My custom application requires a list of the following product values:

ASINs
UPCs
SKUs
FNSKUs
I have read the documentation and found an API that returns what I need, which can be found here:
https://developer-docs.amazon.com/sp-api/docs/fba-inventory-api-v1-use-case-guide
According to the documentation, I need to create a signature in order to use the API. However, it is noted that if I use the AWS SDK, I do not need to calculate the signature myself. Therefore, I understand that the best practice is to use the AWS SDK.

I have the necessary IAM role permissions and the SP-API app has been published. I am currently attempting to use the AWS SDK.

I have made some changes based on recommendations, but I am not completely sure what else I need to do. Here is my current code:

```
export const /*bundle */ start = async () => {
    const client = new MarketplaceCatalogClient({
        region: REGION,
        credentials: {
            accessKeyId: ACCESS_KEY_ID,
            secretAccessKey: ACCESS_SECRET_KEY,
        },
    });

    const params = {
        /** input parameters */
    };

    const answer = await client.send(
        new ListEntitiesCommand({ Catalog: "AWSMarketplace", EntityType: "ContainerProduct" })
    );

    console.log(100, answer);
    return answer;
};
```

I got the next answer with "AmiProduct" or "ContainerProduct":

{
  '$metadata': {
    httpStatusCode: 200,
    requestId: '91fc5fed-6cdc-42d6-97ec-1ed3cc9d5796',
    extendedRequestId: undefined,
    cfId: undefined,
    attempts: 1,
    totalRetryDelay: 0
  },
  EntitySummaryList: []
}

I’m having difficulty understanding how to correctly implement this. Any guidance would be greatly appreciated.

2

Answers


  1. The docs should be better. I spent a good 15 mins on the docs at https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html and failed to find a full list of valid EntityType values.

    Some EntityType values are documented here: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html

    • AmiProduct
    • ContainerProduct

    It looks like these types correspond to the product types in the index of the seller guide here -> https://docs.aws.amazon.com/marketplace/latest/userguide/machine-learning-products.html. It’s not clear what the other valid values are.

    Some other EntityType values are documented here: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html

    • Experience
    • Procurement Policy

    It looks the way to go for now is to scrounge these valid values from examples in the docs https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html. Not the best developer experience :grimace:

    Login or Signup to reply.
  2. Assuming you are a seller, that you have registered successfully with your AWS account. You can then use Marketplace APIs.

    To use them, you have to create an IAM role or a user with policies to grant access to invoke the selected APIs like listEntities, describeEntity, etc.

    Here I again assume you have the Cognito authorized credentials if using AWS SDK.

    Now to view the list of products successfully published, you use listEntites command.

    You can only view AMI or Containter product types. Read here.

    It uses minimum two required parameters Catalog and EntityType. The former has a fixed value AWSMarketplace, and latter can have a value either AmiProduct or ContainerProduct.

    To get a detailed information about a specific product, you use describeEntity command. It takes minimum 2 required parameters Catalog and EntityID.

    The former again has a fixed value AWSMarketplace. For latter, you’ll obtain it from the listEntites response.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search