Search code examples
amazon-mwsamazonsellercentralamazon-marketplace

Get Order Metrics using Amazon Selling Partner API


I am trying to make an API call to get order metrics from the amazon seller central page from Postman App. I have followed all the steps in the documentation. I self authorized my app using the refresh token found on the Developer Central page. I am able to generate the access token using the refresh token. When making a request to the api to get order metrics, the query parameters are : marketplaceIds : A21TJRUUN4KGV (India) interval : 2021-01-01T00:00:00-07:00--2021-09-04T00:00:00-07:00 granularity : Day

The AWS signature for this request has my access key and secret key derived from when I created the IAM User. The region is eu-west-1 and service name is execute-api.

In the headers I have passed x-amz-access-token: Atza|IwExxxxxxx user agent:PostmanRuntime/7.26.8 Host: sellingpartnerapi-eu.amazon.com x-amz-date : calculated when request is sent

After sending the request I get this response:

{
    "errors": [
        {
            "message": "Access to requested resource is denied.",
            "code": "Unauthorized",
            "details": ""
        }
    ]
}

403 Forbidden: Request is legal but server is refusing to respond. Authenticating will make no difference.

I have logged case with Seller Central support but it has been over a month and they haven't replied. Please tell me what should I add or remove or check to make this request work.


Solution

  • https://docs.amazonaws.cn/en_us/IAM/latest/UserGuide/id_credentials_temp_request.html

    Following this gave me temporary access token, access secret key and session token. Using that in the AWS signature for getting orders gave the desired output.