🤯 Что такое API

Вот у вас есть левая рука и 5 пальцев на ней (бывает больше и меньше, но берем наиболее часто встречающееся количество пальцев на одной руке). Скорее всего вы даже можете по своему желанию сгибать и разгибать эти пальцы. Как это происходит?

Мозг даёт команду пальцу согнуться и он сгибается. Можно даже согнуть его на определенный градус: скажем, наполовину. То есть палец умеет принимать какие-то команды от мозга и выполнять их. Мозг как бы передает команды пальцу:

  • Согнуть палец на 90 градусов
  • Разогнуть палец на 90 градусов

При чем это довольно хорошо выстроенная система: не получится передать минусовое значение градуса или запредельное значение. Другими словами, вы не можете передать команду "выгнуть палец в обратную сторону" — он просто не выгнется. Также нет команды "повернуть палец вокруг своей оси".

👉 Обратите внимание на интересный момент: природа (или Бог, как вам больше нравится) в рамках защиты от дурака не даёт управлять мозгу некоторыми органами. Например, команд управления сердцем у человека нет — не получится осознанным усилием остановить сердце, ускорить его или напрячь его только наполовину. Это критическая инфраструктура, нельзя давать к ней прямой доступ человеку, который может загрустить, съесть шоколадку и обрадоваться — человек очень нестабильный управляющий.

⭐️ Всё это наглядный пример работы API: есть программа, которая что-то умеет делать. Если нужно сделать так, чтобы кто-то мог давать в эту программу какие-то управляющие команды, разработчики делают к программе API: создают команды, с помощью которых можно что-то сделать.

Примеры: — У пальца команды "согнуть и разогнуть палец". — У Jira может быть команда "создать задачу", "изменить статус задачи" и т.п. — У Head Hunter может быть команда "получить список вакансий", "откликнуться" и т.п.

У большинства популярных сервисов есть внешнее API, чтобы с ними можно было взаимодействовать. Если у вас возник вопрос "а можно ли это автоматизировать?", поищите API нужного сервиса — скорее всего можно. Кстати, API — Application Programming Interface. Программный интерфейс приложения, если по-русски. То есть набор управляющих команд для какого-то приложения или программы.