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 года. Мы проконсультируем вас и предложим наилучшее решение.
Читайте также