dugard/mytarget

PHP library for MyTarget API


Keywords
php, api, client, ads, myTarget
License
MIT

Documentation

MyTarget API Client for PHP

PHP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ для MyTarget Api основаный Π½Π° kradwhite/mytarget-api-client.

ВрСбования

  • PHP 7.0 ΠΈ Π²Ρ‹ΡˆΠ΅

Установка

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ composer:

composer require dugard/mytarget

ИспользованиС

ОглавлСниС

  1. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°
  2. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
  3. ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
  4. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ запросов
  5. ПолСзная информация

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°

use kradwhite\myTarget\oauth2\Oauth2;

$oauth = new Oauth2();
$token = $oauth->clientCredentialsGrant('client_id', 'client_secret')->request();
$access_token = $token['access_token'];

Для получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π²ΠΈΠ΄Π°ΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ познакомится Π² kradwhite\mytarget-oauth2

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

use kradwhite\myTarget\api\Client;

$client = new Client($access_token);

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

$config = [
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false. Если true, запросы Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ ΠΊ пСсочницС myTarget.
    'sandbox' => true,
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ true. Если true, ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ Π½Π° запросы ΠΊ myTarget Π±ΡƒΠ΄Π΅Ρ‚ ассоциативный массив,
    // Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎ случаС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.
    'assoc' => false,
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false. Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΠΏΡ†ΠΈΡŽ debug
    // http://docs.guzzlephp.org/en/stable/request-options.html#debug.
    'debug' => true,
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0. Установка ΠΎΠΏΡ†ΠΈΠΈ timeout
    // http://docs.guzzlephp.org/en/stable/request-options.html#timeout.
    'timeout' => 0,
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ kradwhite\myTarget\transport\Transport. Имя класса Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ
    // интСрфСйс kradwhite\mytarget\transport\TransportInterface.
    'transport' => Class::name,
];

// инициализация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ
$client = new Client($access_token, $config);

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ запросов

// ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΉ
$allCampaigns = $client->campaigns()->get();

// ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΉ
$activedCampaigns = $client->campaigns()->get([
    '_status' => 'active',
    'sorting' => 'id'
]);
// созданиС ссылки
$newUrlId = $client->createUrl()->post([
    'url' => 'http://example.com/123456789?1=1'
]);
// Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½ΠΎΠ³ΠΎ объявлСния
$response = $client->banner()->post([
    'status' => 'blocked'
]);
// запрос статистика ΠΏΠΎ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΈ
$statistics = $client->statistics()->get(
    // Π½Π°Π·Π²Π°Π½ΠΈΠ΅ рСсурса campaigns, banners ΠΈΠ»ΠΈ user
    'campaigns',
    // id рСсурса, ΠΈΠ»ΠΈ нСсколько id Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ
    '1234',
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ base, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°
    'base',
    // ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ summary, summary ΠΈΠ»ΠΈ days. Eсли days, Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ 
    // 2 ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² Π²ΠΈΠ΄Π΅ Π΄Π°Ρ‚Ρ‹
    'day',
    // Π΄Π°Ρ‚Π° Π½Π°Ρ‡Π°Π»Π° статистики
    '2019-10-08'
    // Π΄Π°Ρ‚Π° ΠΊΠΎΠ½Ρ†Π° статистика
    '2019-11-01'
);

ПолСзная информация

  • Π’ классС kradwhite\myTarget\api\Client ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π² коммСнтариях имССтся ссылка Π½Π° ΠΎΡ„Ρ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ страницу Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ myTarget ΠΏΠΎ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΠΎΠΌΡƒ рСсурсу.
  • ИмСна ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для получСния рСсурсов ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ рСсурсов ΠΈΠ· ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.