Роль API2 полягає у тому, щоб зробити послуги Green Mail доступними для клієнтів, щоб вони могли отримати до них доступ з будь-якого місця. Більшість функціональних можливостей порталу Green Mail реалізовано через API2. Порівняно з попереднім API1, він приносить кілька значних удосконалень. Окрім розширення кількості служб, однією з найважливіших є можливість викликати веб-службу як за допомогою SOAP, так і за допомогою REST.

green

Документацію REST щодо доступу до послуг можна знайти за адресою zelenaposta.docs.apiary.io. На цьому веб-сайті можна побачити окремі запити та відповіді на них у форматі JSON. Ви також можете протестувати окремі послуги безпосередньо з цього веб-сайту в середовищі розробки Green Mail.

Документацію SOAP-доступу до послуг можна знайти безпосередньо на веб-сайті Green Mail.

Аутентифікація

Більшість методів вимагає входу з обліковим записом користувача. Аутентифікація може бути виконана на рівні HTTP або на рівні запиту SOAP у разі викликів служб, схожих на SOAP.

Аутентифікація HTTP

Аутентифікацію HTTP можна використовувати для обох службових дзвінків. Під час виклику служб, схожих на REST, аутентифікація HTTP є єдиним варіантом автентифікації. SOAP API також підтримує інші методи автентифікації. При використанні аутентифікації HTTP використовується заголовок авторизації HTTP .

Ви можете автентифікувати двома методами:

базова автентифікація за базовою схемою автентифікації. Якщо напр. Ім'я користувача та пароль Аладдіна - OpenSesame, тому заголовок надсилається у формі:

де рядок QWxhZGRpbjpPcGVuU2VzYW1l був створений шляхом кодування base64 рядка Aladdin: OpenSesame (тобто base64encode ("$ username: $ password")).

Аутентифікація маркера за схемою автентифікації маркера .

Аутентифікація OAuth 2.0

Також можна використовувати автентифікацію OAuth 2.0 під час входу за допомогою маркера доступу. Токен можна отримати за допомогою служби api/2/oauth. Процедура така:

  1. Буде використана адреса https://www.zelenaposta.sk/oauth/request-token?client_id=[clientId]&redirect_uri= [redirectUrl], де [clientId] - ідентифікатор клієнта програми, а [redirectUrl] - повернення адреса, на яку повертається. Приклад, якщо [clientId] = 123456 і [redirectUrl] = https://yourwebsite.com так, отримана адреса виглядає так: https://www.zelenaposta.sk/oauth/request-token?client_id=123456&redirect_uri=https% 3A% 2F% 2Fwww.yourwebsite.com% 2F .

Не забудьте закодувати значення [redirectUrl] так, щоб воно відповідало умовам формату URL рядка запиту (у PHP метод urlencode ()), тобто. спеціальні символи, замінені відсотками відшкодування тощо.

Відвідавши адресу, користувачеві буде запропоновано увійти до системи Green Mail. Коли він входить (або вже ввійшов), йому показують сторінку, де він може дозволити додатку отримати доступ до його даних в системі Green Mail.

Після затвердження користувач повертається до зазначеного [redirectUrl], при цьому маркер запиту повертається як один із параметрів GET. Тому зворотна URL-адреса виглядає напр. наступним чином: https://www.yourwebsite.com/?code=13b435432483b199961bc6cdc063e5d3c93a06a9 .

За допомогою цього маркера можна створити маркер доступу за допомогою методу getAccessToken в api/2/oauth .

Після створення маркера доступу можна ввійти до служб Green Mail наступним чином: