tims/amazon-creatorsapi-php-sdk

Amazon Creators API official PHP SDK, packaged for Composer

Maintainers

Package info

github.com/timslabs/amazon-creatorsapi-php-sdk

pkg:composer/tims/amazon-creatorsapi-php-sdk

Transparency log

Statistics

Installs: 45

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v1.3.0 2026-07-26 05:53 UTC

This package is auto-updated.

Last update: 2026-07-26 05:54:07 UTC


README

Composer-ready packaging of Amazon's official Creators API PHP SDK.

Amazon distributes the SDK as a zip download from Associates Central and does not publish it to Packagist. This repository packages that SDK so it can be installed with Composer under tims/amazon-creatorsapi-php-sdk.

The PHP namespace remains Amazon's upstream Amazon\CreatorsAPI\v1\.

Requirements

  • PHP 8.1+
  • Guzzle 7.3+
  • Amazon Associates Creators API credentials (Credential ID, Credential Secret, Version)

Install

composer require tims/amazon-creatorsapi-php-sdk

Quick start

<?php

use Amazon\CreatorsAPI\v1\Configuration;
use Amazon\CreatorsAPI\v1\com\amazon\creators\api\DefaultApi;
use Amazon\CreatorsAPI\v1\com\amazon\creators\model\GetItemsRequestContent;
use Amazon\CreatorsAPI\v1\com\amazon\creators\model\GetItemsResource;

$config = new Configuration();
$config->setCredentialId('<YOUR CREDENTIAL ID>');
$config->setCredentialSecret('<YOUR CREDENTIAL SECRET>');
$config->setVersion('<YOUR CREDENTIAL VERSION>');

$api = new DefaultApi(null, $config);

$request = new GetItemsRequestContent();
$request->setPartnerTag('<YOUR PARTNER TAG>');
$request->setItemIds(['B0XXXX']);
$request->setResources([
    GetItemsResource::ITEM_INFO_TITLE,
    GetItemsResource::IMAGES_PRIMARY_MEDIUM,
]);

$response = $api->getItems('www.amazon.com', $request);

Samples

After composer install, run examples from examples/:

cd examples
php SampleGetItems.php
php SampleSearchItems.php

Replace placeholders in the sample files first:

  • <YOUR CREDENTIAL ID>
  • <YOUR CREDENTIAL SECRET>
  • <YOUR CREDENTIAL VERSION> (e.g. 2.1 / 3.1 for NA)
  • <YOUR MARKETPLACE> (e.g. www.amazon.com)
  • <YOUR PARTNER TAG>

Documentation

Extending the token manager

DefaultApi creates an in-memory OAuth2TokenManager by default. Subclasses can override createTokenManager() to plug in persistent caching (for example Laravel Cache) without forking the rest of the SDK:

class CachedDefaultApi extends DefaultApi
{
    protected function createTokenManager(OAuth2Config $oauthConfig): OAuth2TokenManager
    {
        return new MyCachedTokenManager($oauthConfig);
    }
}

getOrCreateTokenManager() and buildAuthenticatedHeaders() are protected so subclasses can extend auth behavior when needed.

Laravel

For Laravel integration, see tims/laravel-paapi.

License

Apache License 2.0 — see LICENSE.txt and NOTICE.txt (Amazon Creators API SDK).