boldgrid / reseller-api
BoldGrid API 的 SDK
This package is not auto-updated.
Last update: 2024-09-26 02:40:42 UTC
README
使用 composer,您可以快速开始
$ composer require boldgrid/api
在您的代码中,使用常规的自动加载过程。此客户端使用 PSR-4 规范进行自动加载
require __DIR__ . '/vendor/autoload.php';
现在您可以使用 API 了。下面的示例将假设您正在使用命名空间
use Boldgrid\Api\Boldgrid;
然后,您可以通过创建一个新的 API 调用并使用默认设置来开始
$api = new Boldgrid();
端点指向生产环境,但您可以通过将沙箱实例传递给新的 Boldgrid 构造函数来轻松地将此切换到 Reseller API 沙箱端点,如下所示
use Boldgrid\Api\Environment\Sandbox; $api = new Boldgrid( new Sandbox );
或者,您可以使用以下语法达到相同的目的
use Boldgrid\Api\Environment\Sandbox; $api = new Boldgrid(); $api = $api->setEnvironment( new Sandbox );
调用将使用基于令牌的认证,并在会话数据中查找存储的响应。您可以选择通过传递实现存储接口的类的实例来将数据存储在 memcache 中。以下示例显示了如何将存储设置为使用 Memcache 而不是 Session
use Boldgrid\Api\Environment; use Boldgrid\Api\Storage; $api = new Boldgrid( new Environment\Sandbox, new Storage\Memcache );
或者,您可以使用以下语法达到相同的目的
use Boldgrid\Api\Environment\Sandbox; use Boldgrid\Api\Storage\Memcache; $api = $api ->setEnvironment( new Sandbox ) ->setStorage( new Memcache );
使用基于令牌的认证(默认认证方法),您需要设置认证参数。BoldGrid Reseller API 中的令牌有效期为 2 天,因此您需要在您的应用程序中提供一种安全地检索密钥/秘密的方法。这可以通过传递密钥和 reseller 密钥来完成,如下所示
$api = $api ->setKey( $key ) ->setResellerKey( $resellerKey );
我们建议在从分布式应用程序进行调用时坚持使用基于令牌的认证,但在进行调用时您可能希望使用其他认证方法。如果您决定使用其他认证方法之一,您只需将所需的认证类型传递给 setAuth 方法。支持的类型是 token、basic 和 key。您可以在我们的 API 文档 中了解更多关于 API 认证方法的信息。
以下示例显示了如何将认证切换为基本认证,这将需要您传递密钥和 reseller 密钥秘密
$api = $api ->setAuth( 'basic' ) ->setKey( $key ) ->setResellerKey( $resellerKey );
以下示例显示了如何仅使用密钥和 reseller 密钥进行授权
$api = $api ->setAuth( 'key' ) ->setKey( $key ) ->setResellerKey( $resellerKey );
现在您已经了解了如何设置环境、授权和存储类型,您可以使用 BoldGrid Reseller API 客户端开始进行调用。每个调用都被分割到其基础端点和端点。例如,如果您想对 key/list 端点进行调用,语法将如下所示
$api->key()->list();
以下示例将环境设置为沙箱 API,使用基于令牌的授权(默认),将令牌存储在 memcache 中,并生成 reseller 下客户端的密钥列表
require __DIR__ . '/vendor/autoload.php'; use Boldgrid\Api\Boldgrid; use Boldgrid\Api\Environment\Sandbox; use Boldgrid\Api\Storage\Memcache; $api = new Boldgrid(); $api = $api ->setEnvironment( new Sandbox ) ->setStorage( new Memcache ) ->setKey( $key ) ->setResellerKey( $resellerKey ); $call = $api ->key() ->list(); var_dump( $call ); die;
以下是您可以进行的调用列表
认证
$api->auth() ->getToken( $key, $resellerKey );
币
$api->coin() ->balance( $connectId ); $api->coin() ->add( $connectId, $coins ); $api->coin() ->remove( $connectId, $coins );
密钥
$api->key() ->list(); $api->key() ->details( $connectId ); $api->key() ->create( $email, $isPremium ); $api->key() ->suspend( $connectId, $reason ); $api->key() ->unsuspend( $connectId, $reason ); $api->key() ->revoke( $connectId ); $api->key() ->changeType( $connectId, $type ); $api->key() ->createReseller( $title, $email, $optional );
站点
$api->site() ->list( $connectId, $dateFrom, $dateTo );
用户
$api->user() ->update( $connectId, $email, $displayName ); $api->user() ->updateReseller( $title, $email );