Skip to main content

Python wrapper for the Amazon Advertising API

Project description

PYTHON-AMAZON-AD-API

CodeQL CodeQL CodeQL Documentation Status

Amazon's Advertising API

A wrapper to access Amazon's Advertising API with an easy-to-use interface.

Install

Badge

pip install python-amazon-ad-api

Donate

If you find this project is useful consider donating to keep on going on it, thank you.

paypal

alt text

Set Up

Create a .env file and put in the root of your project ( SANDBOX or PRODUCTION )

# environment variables defined inside a .env file
AWS_ENV=SANDBOX
.
├── .env
└── campaign_client.py

Switcher SandBox Environment

Use a .env to manage the environment. Is high recommended try the SANDBOX environment as some features may delete (archive) modules as campaigns, ad groups,...etc and this cannot be undone.

AWS_ENV=SANDBOX
# AWS_ENV=PRODUCTION

You may create a test profile id to include in your credentials with a curl command, note the {"countryCode":"ES"} that refers to the marketplace you will operate.

curl \
    -X PUT \
    -H "Content-Type:application/json" \
    -H "Authorization: Bearer Your-Token \
    -H "Amazon-Advertising-API-ClientId: your-client-id" \
    --data '{"countryCode":"ES"}' \
     https://advertising-api-test.amazon.com/v2/profiles/register

Credentials

Use a credentials.yml file with your credentials if you dont know how to obtain your refresh token, please visit:

Login with Amazon application

version: '1.0'

default:
  refresh_token: 'your-refresh-token'
  client_id: 'your-client-id'
  client_secret: 'your-client-secret'
  profile_id: 'your-profile-id'

Search path for credentials.yml

  • macOS and Other Unix: ~/.config/python-ad-api
  • Windows: %APPDATA%\python-ad-api where the APPDATA environment variable falls back to %HOME%\AppData\Roaming if undefined

Confuse Help

Modules Available Common Resources

  • Profiles
  • Invoices aka Billing
  • Elegibility
  • Metadata aka Product metadata
  • History
  • Localization
  • Audiences
  • Portfolios
  • Insights

Amazon Attribution open beta

  • Advertisers
  • Publishers
  • Attribution tags
  • Reports

Brand Metrics open beta

  • Reports

Test accounts

  • Create
  • Get

Modules Available Sponsored Products 2.0

  • Ad Groups
  • Bid Recommendations
  • Campaigns
  • Keywords
  • Negative Keywords
  • Product Ads
  • Suggested Keywords
  • Product Targeting
  • Negative Product Targeting
  • Campaign Negative Keywords
  • Reports
  • Snapshots

Modules Available Sponsored Products 3.0

  • Budget Rules
  • Campaign Optimization Rules
  • Ranked Keywords Recommendations
  • Product Targeting
  • Budget Recommendations
  • Budget Rules Recommendations
  • Product Recommendations

Modules Available Sponsored Brands

  • Campaigns
  • Ad Groups
  • Keywords
  • Negative Keywords
  • Product Targeting
  • Negative Product Targeting
  • Targeting Recommendations
  • Bid Recommendations
  • Stores
  • Landing Page Asins
  • Media
  • Brands
  • Moderation
  • Reports

Modules Available Sponsored Display

  • Campaigns
  • Ad Groups
  • Reports
  • Product Ads
  • Targets
  • Negative Targets
  • Targets Recommendations
  • Bid Recommendations
  • Creatives
  • Snapshots

Example Usage Campaigns

import logging
from ad_api.base import AdvertisingApiException, Marketplaces
from ad_api.api.sp import Campaigns

logging.basicConfig(
    level=logging.DEBUG,
    format="%(asctime)s:%(levelname)s:%(message)s"
)

try:

    states = 'enabled'

    res = Campaigns().list_campaigns_extended(
        stateFilter=states
    )

    campaigns = res.payload
    for campaign in campaigns:
        logging.info(campaign)

    logging.info(len(campaigns))


except AdvertisingApiException as error:
    logging.info(error)

SELLING PARTNER API

This API is based on the API Client created by @saleweaver which also build Python-Amazon-Selling-Partner-API with an easy-to-use interface. If you need use the Amazon's Selling Partner API you can find it here

DISCLAIMER

We are not affiliated with Amazon

LICENSE

License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-amazon-ad-api-0.2.6.tar.gz (50.4 kB view hashes)

Uploaded Source

Built Distribution

python_amazon_ad_api-0.2.6-py3-none-any.whl (90.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page