Insomnia — десктопний HTTP-клієнт з відкритим вихідним кодом для тестування REST, GraphQL і WebSocket API. Інструмент вирізняється мінімалістичним інтерфейсом, вбудованим редактором запитів і підтримкою змінних оточення без необхідності реєстрації. За даними Insomnia Documentation (2026), клієнт підтримує автогенерацію коду 20+ мовами програмування.
Головне
Insomnia — крос-платформовий застосунок (Electron) для надсилання HTTP-запитів і налагодження API. Розробляється компанією Kong з 2016 року як альтернатива Postman з акцентом на швидкість роботи та конфіденційність: дані зберігаються локально, хмарна синхронізація опційна і потребує реєстрації.
Головне вікно розділене на три колонки: зліва — дерево запитів (Workspace), по центру — редактор запиту з вкладками Params, Headers, Body, справа — панель відповіді з режимами Pretty, Raw і Preview. Темна тема увімкнена за замовчуванням, підтримуються кастомні теми через CSS-змінні.
Insomnia підтримує експорт запиту в код 20+ мовами та фреймворками: cURL, HTTPie, Python Requests, JavaScript Fetch/Axios, Kotlin OkHttp, Swift URLSession, Java Unirest, Ruby Net::HTTP та інші. Генератор враховує заголовки, тіло запиту та тип автентифікації, що прискорює інтеграцію API в код застосунку.
Insomnia і Postman вирішують одне завдання, але з різними пріоритетами. Insomnia легший (~80 MB проти ~300 MB), швидше запускається і працює повністю офлайн без нав'язування реєстрації. Postman пропонує зрілішу екосистему з моніторингом, mock-серверами та командними workspace.
| Критерій | Insomnia | Postman |
|---|---|---|
| Вага застосунку | ~80 MB | ~300 MB |
| Офлайн-режим | Повний | Обмежений |
| GraphQL | Вбудований редактор | Бета-версія |
| CLI | Inso CLI | Newman |
| Плагіни | Plugin Hub | Розширення |
Для індивідуальної розробки та швидкого тестування ендпоінтів Insomnia зручніший завдяки легкості та відсутності реєстрації. Для командної роботи зі спільною колекцією, CI/CD-інтеграцією та моніторингом production-API Postman залишається стандартом індустрії.
Workspace в Insomnia містить дерево запитів, розділене на папки. Кожен запит може бути типу HTTP, GraphQL, WebSocket або gRPC. Підтримується перетягування, дублювання та групування запитів за кольоровими мітками. Файл конфігурації workspace зберігається у форматі JSON.
Insomnia підтримує вкладені оточення (Sub Environments), які успадковують змінні батьківського. Це дозволяє визначити базовий URL у глобальному оточенні та перевизначати лише відмінні параметри для різних середовищ. Змінні підставляються через синтаксис {`{`}_variable${`}`}.
// Приклад структури оточення Insomnia
{
"base_url": "https://api.example.com",
"timeout": 5000,
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
}
Insomnia надає один із найкращих серед API-клієнтів редакторів GraphQL. Вкладка GraphQL Query дозволяє писати запити з автодоповненням полів на основі завантаженої схеми. Справа відображається документація за типами, полями та аргументами в реальному часі.
Схема завантажується через GraphQL Introspection запит до ендпоінта. Insomnia кешує схему локально та автоматично оновлює її при змінах. Після завантаження стають доступними автодоповнення (Ctrl+Space), валідація запиту та попередній перегляд можливих помилок до надсилання.
# GraphQL запит зі змінними в Insomnia
query GetUser($id: ID!) {
user(id: $id) {
name
email
posts {
title
createdAt
}
}
}
Insomnia Plugin Hub містить понад 100 плагінів, що розширюють функціональність клієнта. Плагіни встановлюються через меню Preferences → Plugins або вручну через npm. Популярні категорії включають генерацію тестових даних, експорт у різні формати та кастомні валідатори відповідей. Кожен плагін проходить обов'язкову модерацію перед публікацією в спільному хабі розробників.
Плагіни пишуться на JavaScript і взаємодіють з Insomnia через API шаблонізатора (response.*, request.*, environment.*). Розробка плагіна потребує базового знання Node.js і публікації через npm-пакет з тегом insomnia-plugin.
Inso CLI — консольна утиліта, вбудована в Insomnia, для запуску запитів і тестів з термінала. Inso запускає окремі запити або цілі колекції, експортує результати в JSON і може інтегруватися в CI/CD пайплайни. Команда inso run collection послідовно виконує всі запити в колекції.
Inso CLI працює в Docker-контейнерах і headless-режимі, що дозволяє використовувати його в GitHub Actions і GitLab CI. Конфігурація запуску описується в YAML-файлі із зазначенням шляху до експортованої колекції та оточення. Підтримуються асершени на статус-код і тіло відповіді через JavaScript-скрипти.
# GitHub Actions workflow з Inso CLI
- name: Run API tests
run: npx insomnia-inso run collection
--collection "Auth API"
--env "Staging"
--reporter junit
--output reports/api-results.xml
Insomnia підтримує синхронізацію колекцій через Git. Файли колекцій зберігаються у форматі JSON і можуть бути додані в репозиторій проєкту. Insomnia надає вбудований Git-клієнт для перегляду змін, створення коммітів і вирішення конфліктів злиття прямо з інтерфейсу.
Для підключення Git створіть локальну папку з репозиторієм і вкажіть її як кореневу директорію в налаштуваннях Insomnia. Застосунок автоматично відстежує зміни у файлах колекції та відображає їх у панелі Version Control. Підтримуються стандартні операції: commit, push, pull і перегляд diff між версіями.
Для проєктів без Git Insomnia пропонує хмарну синхронізацію через Insomnia Cloud. Безкоштовний тариф включає до 3 учасників команди та автоматичне резервне копіювання колекцій. Платні тарифи додають керування доступом, аудит змін і пріоритетну підтримку.
| Спосіб синхронізації | Безкоштовно | Офлайн | Контроль версій |
|---|---|---|---|
| Git (локальний) | Так | Так | Повний (commit, diff, merge) |
| Insomnia Cloud | До 3 користувачів | Ні | Базовий (історія змін) |
| Файловий експорт | Так | Так | Ручний (через систему контролю версій) |
Design Mode в Insomnia дозволяє створювати API-специфікації у форматі OpenAPI 3.0. Режим працює як візуальний редактор: визначайте ендпоінти та схеми даних без написання YAML вручну. Специфікацію можна експортувати в JSON або YAML.
Insomnia імпортує OpenAPI-специфікації та створює колекцію запитів для кожного ендпоінта. Шляхи та схеми перетворюються на готові HTTP-запити. Функція корисна при інтеграції з мікросервісами, де специфікація зберігається в окремому репозиторії команди.
Кожному запиту можна призначити кольорову мітку: red, blue, green, orange, purple. Фільтрація за тегами працює через пошуковий рядок незалежно від структури папок, що спрощує навігацію в проєктах із сотнями ендпоінтів і безліччю модулів.
Design Mode в Insomnia дозволяє створювати API-специфікації у форматі OpenAPI 3.0 прямо всередині застосунку. Режим працює як візуальний редактор: визначайте ендпоінти, схеми даних і параметри без написання YAML вручну. Специфікацію можна експортувати в JSON або YAML для публікації в репозиторіях.
Insomnia імпортує існуючі OpenAPI-специфікації та автоматично створює колекцію запитів для кожного ендпоінта. Шляхи та схеми перетворюються на готові HTTP-запити з коректними типами даних. Ця функція корисна при інтеграції з мікросервісами, де специфікація зберігається та підтримується окремою командою розробників бекенду.
Для організації великої кількості запитів Insomnia підтримує тегування — кожному запиту можна призначити кольорову мітку: red, blue, green, orange, purple. Фільтрація за тегами працює через пошуковий рядок незалежно від структури папок, що спрощує навігацію в проєктах із сотнями ендпоінтів і безліччю функціональних модулів API.
Часті запитання
Ні, реєстрація не обов'язкова. Insomnia працює повністю офлайн. Хмарна синхронізація доступна як опція для командної роботи, але всі дані зберігаються локально в JSON-файлах у папці ~/.config/Insomnia/.
Експортуйте колекцію з Postman у форматі JSON (Collection v2.1). В Insomnia виберіть Import/Export → Import Data → From File. Insomnia автоматично сконвертує колекцію зі збереженням запитів, заголовків і змінних оточення.
Так, починаючи з версії 2022. Insomnia підтримує WebSocket і Socket.IO протоколи. Створіть новий запит типу WebSocket, вкажіть URL (ws:// або wss://) і надсилайте повідомлення через інтерфейс чату.
Inso CLI — нативна утиліта Insomnia для запуску колекцій з консолі. Newman — аналог для Postman. Inso легший, не потребує окремого встановлення (постачається з Insomnia) і підтримує всі типи запитів Insomnia, включно з GraphQL.
Так, Insomnia підтримує gRPC запити через вкладку gRPC. Потрібно завантажити .proto файл з визначенням сервісу. Після завантаження Insomnia відображає доступні RPC-методи та генерує бінарне Protobuf-повідомлення для надсилання.
Підсумки
Ми розробимо мобільний застосунок під ключ
IT Sectr створює застосунки для iOS та Android для стартапів і бізнесу з 2017 року. Ми проконсультуємо вас і запропонуємо найкраще рішення.
Читайте також