ashek/admitad-api-php

Admitad API库

0.2 2023-07-26 15:25 UTC

This package is auto-updated.

Last update: 2024-09-26 18:20:54 UTC


README

Admitad API的PHP包装器

安装

安装https://getcomposer.org.cn/并运行以下命令

php composer.phar require admitad/api dev-master

示例

请求访问令牌

  • 通过用户名/密码
$api = new Admitad\Api\Api()
$response = $api->authorizeByPassword($clientId, $clientPassword, $scope, $username, $password);
$result = $response->getResult(); // or $response->getArrayResult();
  • OAuth2
// 1 step - get oauth authorization url
$api = new Admitad\Api\Api();
$authorizeUrl = $api->getAuthorizeUrl($clientId, $redirectUri, $scope);
// redirect user to authorizeUrl


// 2 step - request access token by OAuth2 code returned from authorization url
$response = $api->requestAccessToken($clientId, $clientSecret, $code, $redirectUri);
$result = $response->getResult();
  • 签名请求(用于apps.admitad.com上的应用程序)
$api = new Admitad\Api\Api();
$data = $api->parseSignedRequest($signedRequest, $clientSecret);
// this method throws Admitad\Api\Exception\InvalidSignedRequestException when $signedRequest is invalid

刷新令牌

$result = $api->refreshToken($clientId, $clientSecret, $refreshToken)->getResult();

方法

与API通信有两种常见方法

$api = new Admitad\Api\Api($accessToken);

$api->get($path, $params);
$api->post($path, $params);

//for example
$data = $api->get('/advcampaigns/', array(
    'limit' => 20,
    'offset' => 0
))->getResult();

分页结果方法可以按这种方式迭代(而不是手动调用不同偏移量的方法)

$iterator = $api->getIterator('/advcampaigns/', array(
    'order_by' => 'id'
));

foreach ($iterator as $campaign) {
    // do smth with campaign
}