revolution/laravel-amazon-product-api
| Install | |
|---|---|
composer require revolution/laravel-amazon-product-api |
|
| Latest Version: | 4.10.0 |
| PHP: | ^8.3 |
| Laravel: | 12 · 13 |
| Older releases: | 4 – 11 |
| License: | MIT |
| Last Updated: | Oct 2, 2026 |
| Links: | GitHub · Packagist |
Amazon Product Advertising API for Laravel
End of active support (2020/06)
The recent Amazon Product Advertising API has become more restrictive and difficult to use.
Although we support the latest Laravel/PHP, it is in maintenance mode with no other development work.
Requirements
- PHP >= 8.3
- Laravel >= 12.0
Installation
composer require revolution/laravel-amazon-product-api
Uninstall
composer remove revolution/laravel-amazon-product-api
Publishing config (Optional)
php artisan vendor:publish --tag=amazon-product-config
.env
AMAZON_API_KEY=
AMAZON_API_SECRET_KEY=
AMAZON_ASSOCIATE_TAG=
AMAZON_HOST=webservices.amazon.com
AMAZON_REGION=us-east-1
Country lists
https://webservices.amazon.com/paapi5/documentation/common-request-parameters.html
Note
Usage
<?php
use Revolution\Amazon\ProductAdvertising\Facades\AmazonProduct;
# string $category, string $keyword = null, int $page = 1
$response = AmazonProduct::search(category: 'All', keyword: 'amazon' , page: 1);
dd($response);
# returns normal array
# string $browse Browse node
$response = AmazonProduct::browse(node: '1');
# string $asin ASIN
$response = AmazonProduct::item(asin: 'ASIN1');
# array $asin ASIN
$response = AmazonProduct::items(asin: ['ASIN1', 'ASIN2']);
# setIdType: support only item() and items()
$response = AmazonProduct::setIdType(idType: 'EAN')->item(asin: 'EAN');
# reset to ASIN
AmazonProduct::setIdType(idType: 'ASIN');
# PA-APIv5 not support EAN?
browse() is not contains detail data.
use Revolution\Amazon\ProductAdvertising\Facades\AmazonProduct;
$response = AmazonProduct::browse(node: '1');
$nodes = data_get($response, 'BrowseNodesResult');
$items = data_get($nodes, 'BrowseNodes.TopSellers.TopSeller');
$asins = data_get($items, '*.ASIN');
$results = AmazonProduct::items(asin: $asins);
# PA-APIv5 not support TopSeller?
Probably, you need try-catch or Laravel's rescue() helper.
use Revolution\Amazon\ProductAdvertising\Facades\AmazonProduct;
try {
$response = AmazonProduct::browse(node: '1');
} catch(ApiException $e) {
}
$response = rescue(function () use ($browse_id) {
return AmazonProduct::browse(node: $browse_id);
}, []);
LICENSE
MIT
Copyright kawax
Related Packages
Use Amazon's MWS web services with Laravel 5.x. Based on przemekperon/amazon-mws...
Add new cache and session driver to use AWS ElastiCache with auto discovery
A minimal service provider to set up and use the MWS API PHP library in Laravel...
A simple Laravel 9/10/11/12/13 service provider for including the AWS SDK for PH...
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 4.10.0 | ^8.3 | ^12.0| | MIT | |
| 4.9.1 | ^8.2 | ^11.0| | MIT | |
| 4.9.0 | ^8.2 | ^11.0| | MIT | |
| 4.8.0 | ^8.1 | ^10.0| | MIT | |
| 4.7.0 | ^8.0 | ^9.0| | MIT | |
| 4.6.0 | ^8.0 | ^9.0| | MIT | |
| 4.5.0 | ^7.4| | ^6.0| | MIT | |
| 4.4.1 | ^7.3| | ^6.0| | MIT | |
| 4.4.0 | ^7.3| | ^6.0| | MIT | |
| 4.3.0 | ^7.2| | ^6.0| | MIT | |
| 4.2.1 | ^7.2| | ^6.0| | MIT | |
| 4.2.0 | ^7.2| | ^6.0| | MIT | |
| 4.1.1 | ^7.1.3| | ^5.8| | MIT | |
| 4.1.0 | ^7.1.3| | ^5.8| | MIT | |
| 4.0.9 | ^7.1.3| | ^5.8| | MIT | |
| 4.0.8 | ^7.1.3| | ^5.8| | MIT | |
| 4.0.7 | ^7.1.3| | ^5.8| | MIT | |
| 4.0.6 | ^7.1.3| | ^5.8| | MIT | |
| 4.0.5 | ^7.1.3 | ^5.8| | MIT | |
| 4.0.4 | ^7.1.3 | ^5.8| | MIT | |
| 4.0.3 | ^7.1.3 | ^5.8| | MIT | |
| 4.0.2 | ^7.1.3 | ^5.8| | MIT | |
| 4.0.1 | ^7.1.3 | ^5.8| | MIT | |
| 4.0.0 | ^7.1.3 | ^5.8| | MIT | |
| 3.0.0 | ^7.2 | ^6.0 | MIT | |
| 2.0.3 | >=7.1.3 | * | MIT | |
| 2.0.2 | >=7.1.3 | ^5.8 | | MIT | |
| 2.0.1 | >=7.1.3 | ^5.8 | MIT | |
| 2.0.0 | >=7.1.3 | ^5.8 | MIT | |
| 1.1.0 | >=7.1.3 | ^5.6 | MIT |
Showing the latest 30 of 42. See every release on Packagist