PHPackages                             affise/php-sdk - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. affise/php-sdk

ActiveLibrary[API Development](/categories/api)

affise/php-sdk
==============

Affise API's Official SDK

v0.1.1(5y ago)47.2k↑42.2%2[1 issues](https://github.com/affise/php-sdk/issues)[1 PRs](https://github.com/affise/php-sdk/pulls)MITPHPPHP &gt;=7.4

Since Feb 11Pushed 4y ago4 watchersCompare

[ Source](https://github.com/affise/php-sdk)[ Packagist](https://packagist.org/packages/affise/php-sdk)[ RSS](/packages/affise-php-sdk/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (1)Dependencies (6)Versions (3)Used By (0)

affise\_sdk\_php
================

[](#affise_sdk_php)

- [Requirements](#requirements)
- [Installation](#installation)
- [Usage](#usage)
    - [Create api instance](#create-api-instance)
    - [Call endpoints](#call-endpoints)
    - [Upload files](#upload-files)
- [List of providers](#list-of-providers)
- [Advanced](#advanced)
    - [Providers](#providers)
    - [Transport layer](#transport-layer)
    - [Customize api transport](#customize-api-transport)

Requirements
------------

[](#requirements)

- PHP &gt;=7.4
- Guzzle &gt;=6.0
- Any PSR-17 and PSR-18 Implementation (optional)

Installation
------------

[](#installation)

```
composer require affise/php-sdk
```

Usage
-----

[](#usage)

### Create api instance

[](#create-api-instance)

```
use Affise\Sdk\Api;

require_once __DIR__ . '/vendor/autoload.php';

$api = Api::create('https://YOUR_API_DOMAIN', 'YOUR_API_KEY');
```

### Call endpoints

[](#call-endpoints)

```
$response = $api->users->usersList(['limit' => 10]);

var_dump($response->getStatus(), $response->getData());
```

```
$response = $api->statistics->byAdvertiser(['filter' => ['date_from' => '2020-12-20', 'date_to' => '2020-12-31',]]);

var_dump($response->getStatus(), $response->getData());
```

### Upload files

[](#upload-files)

Use `\Affise\Sdk\Transport\File` for each file.

```
use Affise\Sdk\Transport\File;

$response = $api->offerManaging->addOffer([
    ...
    'creativeFiles' => File::createFromFile('path/to/file'),
    ...
]);

var_dump($response->getStatus(), $response->getData());
```

List of providers
-----------------

[](#list-of-providers)

ProviderApi propertyLink`\Affise\Sdk\Statistics\StatisticsProvider``$api->statistics``\Affise\Sdk\AffiliateMethods\AffiliateMethodsProvider``$api->affiliateMethods``\Affise\Sdk\Offers\OffersProvider``$api->offers``\Affise\Sdk\Advertiser\AdvertiserProvider``$api->advertisers``\Affise\Sdk\AdvertiserBilling\AdvertiserBillingProvider``$api->advertiserBilling``\Affise\Sdk\OfferManaging\OfferManagingProvider``$api->offerManaging``\Affise\Sdk\Affiliate\AffiliateProvider``$api->affiliates``\Affise\Sdk\User\UserProvider``$api->users``\Affise\Sdk\ConversionsManaging\ConversionsManagingProvider``$api->conversions``\Affise\Sdk\OtherManaging\OtherManagingProvider``$api->otherManaging``\Affise\Sdk\Presets\PresetsProvider``$api->presets``\Affise\Sdk\Other\OtherProvider``$api->other`Advanced
--------

[](#advanced)

### Providers

[](#providers)

Each provider is a set of grouped endpoints.

```
use Affise\Sdk\Transport\GuzzleTransport;
use Affise\Sdk\Affiliate\AffiliateProvider;
use Affise\Sdk\User\UserProvider;

require_once __DIR__ . '/vendor/autoload.php';

$transport = new GuzzleTransport('https://YOUR_API_DOMAIN', 'YOUR_API_KEY');
$userProvider = new UserProvider($transport);
$affiliateProvider = new AffiliateProvider($transport);

$response = $userProvider->usersList(['limit' => 10]);

var_dump($response->getStatus(), $response->getData());

$response = $affiliateProvider->affiliateList(['limit' => 10, 'page' => 5]);

var_dump($response->getStatus(), $response->getData(), $response->getPagination()->getPage());
```

### Transport layer

[](#transport-layer)

Transport is an abstraction layer over HTTP clients.

```
use Affise\Sdk\Transport\GuzzleTransport;
use Affise\Sdk\Transport\PsrTransport;
use GuzzleHttp\Client;

require_once __DIR__ . '/vendor/autoload.php';

$transport = new GuzzleTransport('https://YOUR_API_DOMAIN', 'YOUR_API_KEY');

// Or you can use psr adapter
$transport = new PsrTransport(
    new Http\Factory\Guzzle\RequestFactory(),
    new Http\Factory\Guzzle\UriFactory(),
    new Http\Factory\Guzzle\StreamFactory(),
    new Client(),
    'https://YOUR_API_DOMAIN',
    'YOUR_API_KEY'
);

$raw = $transport->get('/3.0/admin/users', ['limit' => 10]);

var_dump($raw);

$raw = $transport->post('/3.0/admin/user/api_key/594927bd7e28fe1c4a8b4567');

var_dump($raw);
```

You can create your own transport. Just implement `Affise\Sdk\Transport\TransportInterface`.

### Customize api transport

[](#customize-api-transport)

```
use Affise\Sdk\Api;
use Affise\Sdk\Transport\GuzzleTransport;

require_once __DIR__ . '/vendor/autoload.php';

$api = new Api(new GuzzleTransport('https://YOUR_API_DOMAIN', 'YOUR_API_KEY'));
```

Test
----

[](#test)

```
./vendor/bin/phpunit tests
```

License
-------

[](#license)

The MIT license. Read [LICENSE file](https://github.com/affise/php-sdk/blob/master/LICENSE).

###  Health Score

27

—

LowBetter than 46% of packages

Maintenance15

Infrequent updates — may be unmaintained

Popularity28

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~123 days

Total

2

Last Release

1889d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/085c2572c61b773fefd248a46fa6a69cde3ca98ce099359d0b654bae5ab2a879?d=identicon)[Dmitry Zotov](/maintainers/Dmitry%20Zotov)

---

Top Contributors

[![OlegBabakov](https://avatars.githubusercontent.com/u/13997713?v=4)](https://github.com/OlegBabakov "OlegBabakov (4 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/affise-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/affise-php-sdk/health.svg)](https://phpackages.com/packages/affise-php-sdk)
```

###  Alternatives

[tempest/framework

The PHP framework that gets out of your way.

2.3k37.6k21](/packages/tempest-framework)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6943.5M449](/packages/drupal-core-recommended)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k6.0M777](/packages/sylius-sylius)[chargebee/chargebee-php

ChargeBee API client implementation for PHP

758.7M10](/packages/chargebee-chargebee-php)[typo3/cms

TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.

1.2k1.9M122](/packages/typo3-cms)[typo3/cms-core

TYPO3 CMS Core

3313.6M5.6k](/packages/typo3-cms-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
