↓ Перейти к основному содержимому

Обертка для YouGile REST API

·327 слов·2 минут
Shamil Shafeev
Автор
Shamil Shafeev
Пишу про WordPress, 1С, автоматизацию и полезные сервисы.
Ссылки

Официальная документация API на сайте yougile.

Обертка для API на github.

Необходимые данные
#

Для начала работы с api обязательно нужно знать два параметра: ID компании и ключ. Получить их можно с помощью методов:

/api-v2/auth/companies // (ID)
/api-v2/auth/keys // (ключ)
Альтернативный вариант получения ID компании

Его мне подсказали в технической поддержке сервиса. Нажимаем сочетания клавиш ctrl + alt + q.

На экране появится id и автоматически скопируется в буфер обмена.

Еще ID компании можно увидеть в конфигураторе компании и в навигаторе по объектам. 👇

Установка
#

Библиотека устанавливается с помощью Composer. Если Composer ещё не установлен, установите его по официальной инструкции или одним из способов ниже.

На Windows скачайте и запустите Composer-Setup.exe.
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

После установки Composer добавьте библиотеку в проект. Для этого в его каталоге выполните команду:

composer require shami/yougile

Composer установит пакет и все необходимые зависимости. При успешном завершении в терминале появится соответствующее сообщение:

Результат установки библиотеки через Composer

и в каталоге проекта появится папка vendor с библиотекой и её зависимостями:

Папка vendor после установки библиотеки
На этом установка завершена — библиотека готова к работе.

Пример работы
#

Для простоты и наглядности в той же папке куда мы устанавливали библиотеку создадим файл main.php.

Содержимое файла:

<?php
require_once __DIR__ . "/vendor/autoload.php";
use Yougile\Yougile;

$yougile = new Yougile('ID_Компании', 'КЛЮЧ'); 

Замените ID_Компании и КЛЮЧ на свои значения. После этого через переменную $yougile можно обращаться к разделам YouGile REST API.

Раздел «Задачи»
#

Получение списка задач
#

$tasks = $yougile->api("tasks")->get_list(); 
echo '<pre>';
var_dump($tasks);

Получение задачи по ID
#

Подставьте вместо примера настоящий идентификатор задачи:

$task = $yougile->api("tasks")->get_by_id(
    "07824884-a8c1-4a48-a490-000000000000"
);
echo '<pre>';
var_dump($task);

Создание задачи
#

Полный список параметров доступен в документации метода создания задачи. Поле title является обязательным, остальные параметры добавляются при необходимости.

$params = array(
    "title" => "Hello!",
    "columnId" => "9a209afc-dab5-4856-84c2-000000000",
    "description" => "Test"
);
$task = $yougile->api("tasks")->create($params);

Обновление задачи
#

В метод передаются идентификатор задачи и массив полей, которые нужно изменить:

$id_task = "2a3a009c-a312-4087-a80b-000000000";
$params = array(
    "title" => "Hello New!",
);
$task = $yougile->api("tasks")->update($id_task, $params);