Advertising API NodeJS client library.
Docs
Amazon Advertising Docs
Guide
Initiate the client
let AdvertisingClient = require('amz-advertising-api');
let client = new AdvertisingClient({
clientId: "CLIENT_ID",
clientSecret: "CLIENT_SECRET",
accessToken: "ACCESS_TOKEN",
refreshToken: "REFRESH_TOKEN",
profileId: "PROFILE_ID",
sandbox: false,
region: 'eu'
});
await client.init();
Refresh access token
The refresh token gets automaticly refreshed every 2 minutes.
{
"access_token": "Atza|IQEBLjAsAhRmHjNgHpi0U-Dme37rR6CuUpSR…",
"expires_in": 3600
}
Set profile Id
client.options.profileId = "1234567890";
Once you've set the profile Id you are ready to start making API calls.
API Calls
- Profiles
- Porfolios
- Sponsored Products
- Sponsored Brands
- Sponsored Display
List Profiles
List Profiles
let profiles = await client.listProfiles();
[
{
"profileId":1234567890,
"countryCode":"US",
"currencyCode":"USD",
"dailyBudget":10.00,
"timezone":"America/Los_Angeles",
"accountInfo":{
"marketplaceStringId":"ABC123",
"sellerStringId":"DEF456"
}
}
]
Get Profile
Retrieves a single profile by Id.
await client.getProfile("1234567890");
{
"profileId": 1234567890,
"countryCode": "US",
"currencyCode": "USD",
"dailyBudget": 3.99,
"timezone": "America/Los_Angeles",
"accountInfo": {
"marketplaceStringId": "ABC123",
"sellerStringId": "DEF456"
}
}
List Portfolios
listPortfolios(filter: {}, extended: false).
Accepts first argument as filter, and the second argument to list for extended details or not.
await client.listPortfolios();
[
{
"portfolioId": 1234567890,
"name": "Portfolio Name",
"budget": { },
"inBudget": true,
"state": "enabled"
}
]
Get Portfolio
getPortfolio(portfolioId, extended: false).
Accepts first argument as the portfolioId, and the second argument for extended details or not.
await client.getPortfolio(portfolioId);
{
"portfolioId": 1234567890,
"name": "Portfolio Name",
"budget": { },
"inBudget": true,
"state": "enabled",
"creationDate": 202-0101,
"lastUpdatedDate": 20210101
}