API (англ. Application Programming Interface, “Прикладний програмний інтерфейс”) – набір готових процедур, підпрограм, функцій, посилань чи параметрів, які дозволяють використовувати інформаційні системи для отримання структурованих або неструктурованих наборів даних чи іншої взаємодії.
Коли ви використовуєте програму на своєму мобільному телефоні, програма підключається до Інтернету та надсилає дані на сервер. Потім сервер отримує ці дані, інтерпретує їх, виконує необхідні дії та відправляє назад на ваш телефон. Потім додаток інтерпретує ці дані та представляє вам інформацію, яку ви хотіли прочитати. Ось що таке API – все це відбувається через API.
Складно? Ось простіший приклад – реальний випадок використання API.
Ви шукаєте квитки на авіарейс в Інтернеті. У вас є безліч варіантів на вибір, включаючи різні міста, дати вильоту та повернення тощо. Уявімо, що ви бронюєте свій рейс на вебсайті авіакомпанії. Ви вибираєте місто та дату вильоту, місто і дату повернення, клас, а також інші параметри. Для того, щоб забронювати свій рейс, ви у цьому випадку взаємодієте з вебсайтом авіакомпанії, щоб отримати доступ до їхньої бази даних і подивитися, чи є вільні місця на ці дати, скільки це коштує.
Проте Ви не завжди можете користуватись вебсайтом компанію, адже часто ми користуємось сайтами туристичних компаній чи агрегаторами на зразок Kiwi. У цьому випадку агрегатор взаємодіє з API авіакомпанії. API – це інтерфейс, який просить інформацію у бази даних авіакомпанії (або одразу кількох баз різних авіакомпаній) для бронювання місць, варіантів багажу тощо. Потім API приймає відповідь авіакомпанії на ваш запит, передає його назад на сайт агрегатора, який і показує вам найсвіжішу та найактуальнішу інформацію.
Простий приклад у вигляді мему
API є зручним та корисним для великих обсягів динамічних даних, оскільки дає змогу отримувати інформацію в автоматичному режимі та/чи в реальному часі. Якщо ваш набір даних містить великий обсяг інформації й часто оновлюється, доступ до нього варто запровадити саме за допомогою API.
Проте варто пам’ятати, що у будь-якого API мають бути детальні інструкції щодо його використання, приклади запитів зі всіма можливими параметрами та відповідей на ці запити.
Наприклад, портал “Вони голосують для тебе” пропонує отримати доступ до практично всієї інформації, яка міститься на сайті: інформація про депутатів, їхні голосування, ініціативи, які вони підтримують, голосування, які відбуваються у Верховній Раді. Для цього потрібно зареєструватись (варто ввести email та придумати логін і пароль) і Ви отримаєте спеціальний ключ, який допоможе отримувати актуальні, структуровані та регулярно оновлювані набори даних у форматі JSON.