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 | Екстензије |
За индивидуални развој и брзо тестирање endpoint-ова 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 нуди један од најбољих GraphQL уређивача међу API клијентима. GraphQL Query картица омогућава писање захтева са аутоматским допуњавањем поља на основу учитане шеме. Десно се приказује документација типова, поља и аргумената у реалном времену.
Шема се учитава кроз GraphQL Introspection захтев ка endpoint-у. Insomnia кешира шему локално и аутоматски је ажурира при променама. Након учитавања постају доступни аутоматско допуњавање (Ctrl+Space), валидација захтева и преглед могућих грешака пре слања.
# GraphQL захтев са променљивим у Insomnia
query GetUser($id: ID!) {
user(id: $id) {
name
email
posts {
title
createdAt
}
}
}Insomnia Plugin Hub садржи више од 100 додатака који проширују функционалност клијента. Додаци се инсталирају кроз мени Preferences → Plugins или ручно преко npm-а. Популарне категорије укључују генерисање тест података, извоз у различите формате и прилагођене валидаторе одговора. Сваки додатак пролази обавезну модерацију пре објављивања у заједничком hub-у програмера.
Додаци се пишу на JavaScript-у и комуницирају са Insomnia-ом преко API-ја за шаблоне (response.*, request.*, environment.*). Развој додатка захтева основно познавање Node.js-а и објављивање преко npm пакета са ознаком insomnia-plugin.
Inso CLI — конзолни алат уграђен у Insomnia за покретање захтева и тестова из терминала. Inso покреће појединачне захтеве или целе колекције, извози резултате у JSON и може се интегрисати у CI/CD pipeline-ове. Команда 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.xmlInsomnia подржава синхронизацију колекција преко Git-а. Фајлови колекција чувају се у JSON формату и могу се додати у репозиторијум пројекта. Insomnia нуди уграђени Git клијент за преглед промена, прављење commit-ова и решавање конфликата при спајању директно из интерфејса.
За повезивање 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 формату. Режим ради као визуелни уређивач: дефинишите endpoint-ове и шеме података без ручног писања YAML-а. Спецификација се може извести у JSON или YAML.
Insomnia увози OpenAPI спецификације и креира колекцију захтева за сваки endpoint. Путање и шеме претварају се у готове HTTP захтеве. Функција је корисна при интеграцији са микросервисима, где се спецификација чува у посебном репозиторијуму тима.
Сваком захтеву може се доделити обојена ознака: red, blue, green, orange, purple. Филтрирање по ознакама ради кроз претраживач независно од структуре фасцикли, што поједностављује навигацију у пројектима са стотинама endpoint-ова и много модула.
Design Mode у Insomnia омогућава креирање API спецификација у OpenAPI 3.0 формату директно унутар апликације. Режим ради као визуелни уређивач: дефинишите endpoint-ове, шеме података и параметре без ручног писања YAML-а. Спецификација се може извести у JSON или YAML за објављивање у репозиторијуму.
Insomnia увози постојеће OpenAPI спецификације и аутоматски креира колекцију захтева за сваки endpoint. Путање и шеме претварају се у готове HTTP захтеве са исправним типовима података. Ова функција је корисна при интеграцији са микросервисима, где спецификацију чува и одржава посебан тим backend програмера.
За организовање великог броја захтева Insomnia подржава означавање — сваком захтеву може се доделити обојена ознака: red, blue, green, orange, purple. Филтрирање по ознакама ради кроз претраживач независно од структуре фасцикли, што поједностављује навигацију у пројектима са стотинама endpoint-ова и много функционалних 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. године. Саветоваћемо вас и предложити најбоље решење.
Прочитајте такође