Представьте себе страуса, голова которого торчит в песке, а задница - снаружи. Вот задница страуса - это и есть API, который вам этот страус предоставляет, вы можете взаимодействовать со страусом ровно так, как вам этот страус позволяет, через эту самую задницу, не выкапывая при этом самого страуса из песка.
В вашем примере вы заталкиваете страусу в попу HTTP-запрос, он его обрабатывает и через эту же попу возвращает вам результат в формате JSON. Но это только особенности работы конкретного API, в Windows API к примеру вы вызываете функции, которые возвращают вам результат (либо в регистр процессора его записывают, либо кладут в память по адресу, который вы задаёте одним из параметров функции). Ещё некоторые API возвращают ответ в формате XML, а некоторые и вовсе позволяют выбрать желаемый формат ответа.