All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Code generation system (
codegen/) — custom Python generator producing Pydantic v2 models and async clients from OpenAPI specsspec_parser.py— JSON/YAML OpenAPI parser with $ref resolutionmodel_generator.py— Pydantic v2 model generation (StrEnum, Field alias, allOf/oneOf)client_generator.py— Async client method generation inheriting BaseAdsClientconflict_resolver.py— Multi-version spec endpoint conflict resolutionspec_config.yaml— Configuration for 86 specs (80 active)
- 5,018 auto-generated Pydantic model classes in
amazon_ads_api/generated/models/ - 650 auto-generated async API methods in
amazon_ads_api/generated/clients/ - CI/CD workflows:
ci.yml— Lint, test, codegen validation on push/PR (Python 3.11-3.13 matrix)check-spec-updates.yml— Daily spec update detection with auto GitHub Issue creation
scripts/check_spec_updates.py— Spec freshness checker (HEAD or full hash comparison)scripts/regenerate.sh— One-command regenerationscripts/migrate_inheritance.py— Bulk inheritance migration tool- 17 new codegen unit tests (79 total tests, 100% pass rate)
- All 88 hand-written API files now inherit from generated clients (was: BaseAdsClient directly)
- Expanded API spec coverage from 59 to 86 OpenAPI specs (642+ unique endpoints)
pyproject.toml— addedpydantic>=2.0.0dependency,pyyaml>=6.0.0dev dependency
specs/Reporting_prod_3p.json— empty stub (0 paths)- Root-level debug JSON/YAML files
- Initial release of Amazon Ads API Python SDK
- Support for 59 official Amazon Ads API endpoints
- 100% coverage verification against official OpenAPI specs
- Async/await support with httpx
- Automatic OAuth2 token refresh
- Rate limiting and retry mechanisms
- Comprehensive error handling
- Unit tests (62 tests, 100% pass rate)
- Integration tests (6 tests, 100% pass rate)
- End-to-end tests (5 tests, 100% pass rate)
- Sponsored Products (SP): Campaigns, Ad Groups, Keywords, Product Ads, Negative Keywords, Campaign Negative Keywords, Targets, Negative Targets, Budget Rules, Budget Recommendations
- Sponsored Brands (SB): Campaigns, Ad Groups, Keywords, Product Targeting, Brand Video, Creatives, Moderation, Landing Pages
- Sponsored Display (SD): Campaigns, Ad Groups, Product Ads, Targets, Creative Assets, Budget Rules, Forecast
- DSP: Advertisers, Audiences, Campaigns, Conversions, Measurement, Target KPI
- Accounts: Profiles, Portfolios, Budgets, Billing, Advertising Accounts, Test Accounts
- Audiences: Audience Discovery, Product Selector
- Exports: Data Exports, Report Exports
- Eligibility: Campaign Eligibility, Keyword Eligibility
- Locations: Location Targeting
- Amazon Marketing Cloud (AMC): Administration, Reporting, Audiences
- Attribution: Attribution Tags, Publishers, Reports
- Data Provider: Data Sets, Uploads
- Unified API: Amazon Ads API v1 (campaigns, keywords, recommendations, forecasts, etc.)
- Posts: Sponsored Posts API
- Retail Ad Service: Orders, Line Items, Creatives
- Marketing Stream: Real-time data streaming
- Reporting: Reports v2, Reports v3, MMM (Marketing Mix Modeling), Offline Reports
- Recommendations: Campaign Recommendations, Keyword Recommendations, Budget Recommendations
- Insights: Brand Insights, Product Insights, Audience Insights
- Common Services: Change History, Creative Asset Library, Stores
- Media Planning: Reach Forecasting, Media Planning Tools
- Brand Associations: Brand Safety, Brand Suitability
- Ads Data Manager: Data Sources, Audiences
- Ad Library: Ad Repository Management
- Brand Home: Store Pages, Brand Stores
- Localization: Currency, Keyword, Product, Targeting Expression Localization
- Moderation: Pre-moderation, Creative Moderation
- Partner Opportunities: Partner Network
- Persona Builder: Audience Persona
- Sponsored TV: TV Campaigns, Formats
- Automated coverage verification scripts
- Deep verification for duplicate detection
- Comprehensive test suite (unit/integration/e2e)
- OpenAPI spec synchronization (59 specs)
- Documentation generation
- Initial alpha release
- Basic API client structure
- OAuth2 authentication
- Core SP/SB/SD APIs
- Multiple path errors in AMC APIs
- Incorrect endpoint implementations in Ad Library, Brand Home, Localization
- HTTP method mismatches in Unified API
- Missing endpoints in Advertising Accounts API
- Migrated from requests to httpx for async support
- Restructured project to 4-tier architecture (L1/L2/L3/L4)
- Improved error handling and retry logic
- Enhanced token management with automatic refresh
- Project initialization
- Basic project structure
- Initial README and LICENSE
- MAJOR: Breaking API changes
- MINOR: New features, new API endpoints
- PATCH: Bug fixes, documentation updates