API для розробників
Загальні положення
Опис
REST API сервісу Estismail визначає набір функцій для взаємодії за протоколом HTTP. Усі відповіді за замовчуванням повертаються у форматі JSON. Також доступно отримання відповідей у форматі XML.
Авторизація
Авторизація здійснюється за допомогою персонального API key, який передається в кожному запиті через HTTP-заголовок X-Estis-Auth.
Щоб отримати ключ, перейдіть у Мій кабінет → Мої налаштування → API і натисніть Згенерувати.
Основний URL
Взаємодія виконується через HTTP-запити з параметрами у кодуванні UTF-8 за адресою:
https://v1.estismail.com/[section]/[resource]
Використання HTTPS є обов’язковим.
Використовувані HTTP-методи
Метод | Опис |
|---|---|
get | Отримання ресурсу. |
post | Створення ресурсу. |
put | Оновлення ресурсу. |
delete | Видалення ресурсу. |
Основні методи API
Назва методу | Опис |
|---|---|
index | Отримання повного списку елементів ресурсу. |
view | Отримання одного елемента ресурсу. |
add | Додавання нового елемента. |
edit | Редагування елемента ресурсу. |
delete | Видалення елемента ресурсу. |
Деякі ресурси можуть не містити повного набору методів. Якщо метод відсутній, повертається помилка 405 Not Allowed.
Детальні описи методів наведені у специфікаціях відповідних ресурсів.
Стандартні опціональні параметри
Методи index і view (лише параметр fields) підтримують стандартні параметри:
limit — кількість елементів для відображення.
За замовчуванням: 10. Діапазон: 1–100.
page — номер сторінки (за замовчуванням 1).
fields — JSON-рядок із масивом полів:
["key1","key2", ...]
filter — JSON-рядок із об’єктом:
{"key1":"value1","key2":"value2", ...}
Фільтрація виконується за точним співпадінням значень.
sort_field — поле для сортування. За замовчуванням: id.
sort_direction — напрямок сортування:
1 — за зростанням
-1 — за спаданням
За замовчуванням: за зростанням.
Допустимі поля для кожного ресурсу наведені у його специфікації.
Можливі статуси HTTP-відповідей
Код | Опис |
|---|---|
Успішні | |
200 OK | Запит виконано успішно (index, view). |
201 Created | Створено новий ресурс (add). |
204 No Content | Запит виконано успішно, без тіла відповіді (edit, delete). |
Помилки клієнта | |
400 Bad Request | Помилка синтаксису або неправильні параметри. |
401Unauthorized | Потрібна автентифікація; неправильний або відсутній X-Estis-Auth. |
404 Not Found | Ресурс не знайдено. |
405 Not Allowed | Метод не підтримується для поточного ресурсу. |
Приклад запиту на PHP
Приклад отримання списку груп підписників, де $apiKey — ваш API key.
|
|---|