定制 jasara/laravel-selling-partner-api 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jasara/laravel-selling-partner-api

最新稳定版本:v4.0.0

Composer 安装命令:

composer require jasara/laravel-selling-partner-api

包简介

Laravel wrapper for Amazon's Selling Partner API SDK

README 文档

README

Latest Version on Packagist GitHub Tests Action Status Code coverage Total Downloads

This package is a Laravel wrapper around Jasara's PHP SDK for Amazon's Selling Partner API.

License

While this package has an MIT license, the core PHP SDK package is not commercially licensed. If you are using this package commerically, please see the licensing section of the core PHP SDK package.

Installation

You can install the package via composer:

composer require jasara/laravel-selling-partner-api

You can publish the config file with:

php artisan vendor:publish --provider="Jasara\LaravelAmznSPA\LaravelAmznSPAServiceProvider" --tag="laravel-selling-partner-api-config"

This is the contents of the published config file:

return [
    'marketplace_id' => env('AMZN_SPA_MARKETPLACE_ID'),
    'application_id' => env('AMZN_SPA_APPLICATION_ID'),
    'redirect_url' => env('AMZN_SPA_REDIRECT_URL'),
    'use_test_endpoints' => env('AMZN_SPA_USE_TEST_ENDPOINTS'),
    'aws_access_key' => env('AMZN_SPA_AWS_ACCESS_KEY'),
    'aws_secret_key' => env('AMZN_SPA_AWS_SECRET_KEY'),
    'lwa_client_id' => env('AMZN_SPA_LWA_CLIENT_ID'),
    'lwa_client_secret' => env('AMZN_SPA_LWA_CLIENT_SECRET'),
];

Usage

For full usage information, see the documentation website.

In this Laravel wrapper, the underlying library will be automatically configured when you set the following environment variables:

AMZN_SPA_MARKETPLACE_ID=ATVPDKIKX0DER
AMZN_SPA_APPLICATION_ID=amzn1.sellerapps.app.appid-1234-5678-a1b2-a1b2c3d4e5f6
AMZN_SPA_REDIRECT_URL=yourapp.com/amazon/oauth/redirect
AMZN_SPA_USE_TEST_ENDPOINTS=true
AMZN_SPA_AWS_ACCESS_KEY=AKIASECRETKEY
AMZN_SPA_AWS_SECRET_KEY=rf7x7rpjqq1tlcbbv2r9iahcmm6mluaqn8deitcl
AMZN_SPA_LWA_CLIENT_ID=17r2r9iahcmm6mlubv2r9iahcmm6mluaqnlcbbv2r9iahiahcmm6mluaqn8de
AMZN_SPA_LWA_CLIENT_SECRET=Atzr|1tlcbbv2r9iahcmm6mluaqn8d-secret

To call the Amazon API, first instantiate the Laravel wrapper class, passing any configuration parameters (such as client authorization tokens) into the constructor.

$amzn = new \Jasara\LaravelAmznSPA\LaravelAmznSPA(
    tokens: new \Jasara\AmznSPA\DataTransferObjects\AuthTokensDTO(
        access_token: $access_token, // optional if there is a refresh token
        expires_at: $expires_at, // optional, instance of CarbonImmutable
        refresh_token: $refresh_token, // optional if there is an access token, Passing in the refresh token will automatically generate a new access token when needed
    ),
    http: $http, // instance of Illuminate\Http\Client\Factory - if you would like to stub tests, you can pass in a faked HTTP instance
    grantless_token: new \Jasara\AmznSPA\DataTransferObjects\GrantlessTokenDTO(
        access_token: $access_token, // optional, a new token will be automatically generated if not passed in
        expires_at: $expires_at, // optional, instance of CarbonImmutable
    ),
    marketplace_id: $marketplace_id, // e.g. ATVPDKIKX0DER
);

You can then call the underlying library resources directly, such as the Notifications resource. The response is a data transfer object adhering to the Amazon schema.

$amzn->notifications->getDestinations();
$destination_id = $response->payload[0]->destination_id;

统计信息

  • 总下载量: 17.83k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 9
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 9
  • Watchers: 1
  • Forks: 5
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-09-27