whitelabeled / daisycon-api-client
Daisycon API client
Installs: 5 865
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 4
Forks: 1
Open Issues: 1
Requires
- league/oauth2-client: ^2.7
README
Library to retrieve sales from the Daisycon publisher API.
Usage:
Login
<?php require 'vendor/autoload.php'; session_start(); $client = new \whitelabeled\DaisyconApi\DaisyconClient( '123456', '848840-9900301-99494595-3994984', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'http://localhost/verify.php' ); $login = $client->login(); $_SESSION['state'] = $login->state; $_SESSION['pkce'] = $login->pkceCode; echo 'Login URL: ' . $login->loginUrl;
Verify
<?php require 'vendor/autoload.php'; session_start(); $client = new \whitelabeled\DaisyconApi\DaisyconClient( '123456', '848840-9900301-99494595-3994984', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'http://localhost/verify.php' ); $refreshToken = $client->verifyAuthCode($_SESSION['state'], $_SESSION['pkce'], $_GET['state'], $_GET['code']); // Store refreshtoken in database or persistent storage
Get transactions
<?php require 'vendor/autoload.php'; $client = new \whitelabeled\DaisyconApi\DaisyconClient( '123456', '848840-9900301-99494595-3994984', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'http://localhost/verify.php' ); // Refresh token, store new token in DB: $refreshToken = $client->refreshAccessToken($refreshToken); // Optional: //$client->mediaIds = ['666666', '777777']; $transactions = $client->getTransactions(new DateTime('2016-10-30 00:00:00')); /* * Returns: Array ( [0] => whitelabeled\DaisyconApi\Transaction Object ( [id] => 1KMDIMF49503095MFJULCM [partId] => F7I6 [transactionDate] => DateTime Object ( [date] => 2016-10-30 22:07:22.000000 [timezone_type] => 3 [timezone] => Europe/Berlin ) [clickDate] => DateTime Object ( [date] => 2016-10-30 21:54:09.000000 [timezone_type] => 3 [timezone] => Europe/Berlin ) [approvalDate] => [lastModifiedDate] => DateTime Object ( [date] => 2016-10-30 22:07:22.000000 [timezone_type] => 3 [timezone] => Europe/Berlin ) [programId] => 9999 [countryId] => 222 [regionId] => 0 [gender] => [age] => 0 [deviceType] => pc [program] => Advertisements Inc. [ipAddress] => ?.22.33.44 [status] => open [disapprovedReason] => [subId] => 222 [subId2] => 958503 [subId3] => [reference] => [commissionAmount] => 6 [totalCommissionAmount] => 6 [sharedCommission] => 0 [commissionPercentage] => 100 [revenueSharePartner] => [revenue] => 0 [extra1] => [extra2] => [extra3] => [extra4] => [extra5] => [publisherDescription] => Exciting product [mediaId] => 123456 [mediaName] => Super interesting website ) ) */
License
© Keuze.nl BV
MIT license, see LICENSE.txt for details.