Insomnia — desktopový HTTP klient s otevřeným zdrojovým kódem pro testování REST, GraphQL a WebSocket API. Nástroj se vyznačuje minimalistickým rozhraním, vestavěným editorem požadavků a podporou proměnných prostředí bez nutnosti registrace. Podle Insomnia Documentation (2026) klient podporuje automatické generování kódu ve více než 20 programovacích jazycích.
Hlavní body
Insomnia — multiplatformní aplikace (Electron) pro odesílání HTTP požadavků a ladění API. Od roku 2016 ji vyvíjí společnost Kong jako alternativu k Postmanu s důrazem na rychlost práce a soukromí: data se ukládají lokálně, cloudová synchronizace je volitelná a vyžaduje registraci.
Hlavní okno je rozděleno na tři sloupce: vlevo — strom požadavků (Workspace), uprostřed — editor požadavků s kartami Params, Headers, Body, vpravo — panel odpovědi s režimy Pretty, Raw a Preview. Temné téma je ve výchozím nastavení zapnuto, vlastní témata jsou podporována přes CSS proměnné.
Insomnia podporuje export požadavku do kódu ve více než 20 jazycích a frameworky: cURL, HTTPie, Python Requests, JavaScript Fetch/Axios, Kotlin OkHttp, Swift URLSession, Java Unirest, Ruby Net::HTTP a další. Generátor zohledňuje hlavičky, tělo požadavku a typ autentizace, což urychluje integraci API do kódu aplikace.
Insomnia a Postman řeší stejný úkol, ale s různými prioritami. Insomnia je lehčí (~80 MB oproti ~300 MB), rychleji se spouští a funguje zcela offline, aniž by vnucoval registraci. Postman nabízí vyspělejší ekosystém s monitorováním, mock servery a týmovými workspace.
| Kritérium | Insomnia | Postman |
|---|---|---|
| Velikost aplikace | ~80 MB | ~300 MB |
| Offline režim | Plný | Omezený |
| GraphQL | Vestavěný editor | Beta verze |
| CLI | Inso CLI | Newman |
| Pluginy | Plugin Hub | Rozšíření |
Pro individuální vývoj a rychlé testování endpointů je Insomnia pohodlnější díky své lehkosti a absenci registrace. Pro týmovou práci se společnou kolekcí, integrací CI/CD a monitorováním produkčního API zůstává Postman průmyslovým standardem.
Workspace v Insomnia obsahuje strom požadavků rozdělený do složek. Každý požadavek může být typu HTTP, GraphQL, WebSocket nebo gRPC. Je podporováno přetahování, duplikování a seskupování požadavků podle barevných štítků. Konfigurační soubor workspace se ukládá ve formátu JSON.
Insomnia podporuje vnořená prostředí (Sub Environments), která dědí proměnné rodiče. To umožňuje definovat základní URL v globálním prostředí a přepisovat pouze rozdílné parametry pro různá prostředí. Proměnné se dosazují syntaxí {`{`}_variable${`}`}.
// Příklad struktury prostředí Insomnia
{
"base_url": "https://api.example.com",
"timeout": 5000,
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
}Insomnia nabízí jeden z nejlepších editorů GraphQL mezi API klienty. Karta GraphQL Query umožňuje psát požadavky s automatickým doplňováním polí na základě načteného schématu. Vpravo se v reálném čase zobrazuje dokumentace typů, polí a argumentů.
Schéma se načítá pomocí požadavku GraphQL Introspection na endpoint. Insomnia ukládá schéma do lokální mezipaměti a automaticky ho aktualizuje při změnách. Po načtení jsou dostupné automatické doplňování (Ctrl+Space), validace požadavku a náhled možných chyb před odesláním.
# GraphQL požadavek s proměnnými v Insomnia
query GetUser($id: ID!) {
user(id: $id) {
name
email
posts {
title
createdAt
}
}
}Insomnia Plugin Hub obsahuje více než 100 pluginů rozšiřujících funkčnost klienta. Pluginy se instalují přes nabídku Preferences → Plugins nebo ručně přes npm. Populární kategorie zahrnují generování testovacích dat, export do různých formátů a vlastní validátory odpovědí. Každý plugin prochází povinnou moderací před publikováním ve společném hubu vývojářů.
Pluginy se píší v JavaScriptu a komunikují s Insomnia přes API pro šablony (response.*, request.*, environment.*). Vývoj pluginu vyžaduje základní znalost Node.js a publikování prostřednictvím balíčku npm s tagem insomnia-plugin.
Inso CLI — konzolový nástroj zabudovaný v Insomnia pro spouštění požadavků a testů z terminálu. Inso spouští jednotlivé požadavky nebo celé kolekce, exportuje výsledky do JSON a lze ho integrovat do pipeline CI/CD. Příkaz inso run collection postupně provede všechny požadavky v kolekci.
Inso CLI funguje v kontejnerech Docker a v headless režimu, což umožňuje jeho použití v GitHub Actions a GitLab CI. Konfigurace spuštění je popsána v souboru YAML s uvedením cesty k exportované kolekci a prostředí. Jsou podporovány aserce na stavový kód a tělo odpovědi prostřednictvím JavaScript skriptů.
# Workflow GitHub Actions s Inso CLI
- name: Run API tests
run: npx insomnia-inso run collection
--collection "Auth API"
--env "Staging"
--reporter junit
--output reports/api-results.xmlInsomnia podporuje synchronizaci kolekcí přes Git. Soubory kolekcí se ukládají ve formátu JSON a lze je přidat do repozitáře projektu. Insomnia poskytuje vestavěného Git klienta pro prohlížení změn, vytváření commitů a řešení konfliktů při sloučení přímo z rozhraní.
Pro připojení Gitu vytvořte lokální složku s repozitářem a označte ji jako kořenový adresář v nastavení Insomnia. Aplikace automaticky sleduje změny v souborech kolekce a zobrazuje je v panelu Version Control. Jsou podporovány standardní operace: commit, push, pull a prohlížení diff mezi verzemi.
Pro projekty bez Gitu nabízí Insomnia cloudovou synchronizaci prostřednictvím Insomnia Cloud. Bezplatný tarif zahrnuje až 3 členy týmu a automatické zálohování kolekcí. Placené tarify přidávají správu přístupu, audit změn a prioritní podporu.
| Způsob synchronizace | Zdarma | Offline | Kontrola verzí |
|---|---|---|---|
| Git (lokální) | Ano | Ano | Plná (commit, diff, merge) |
| Insomnia Cloud | Až 3 uživatelé | Ne | Základní (historie změn) |
| Export souborů | Ano | Ano | Ruční (přes systém kontroly verzí) |
Design Mode v Insomnia umožňuje vytvářet API specifikace ve formátu OpenAPI 3.0. Režim funguje jako vizuální editor: definujte endpointy a schémata dat bez ručního psaní YAML. Specifikaci lze exportovat do JSON nebo YAML.
Insomnia importuje specifikace OpenAPI a vytváří kolekci požadavků pro každý endpoint. Cesty a schémata se převádějí na hotové HTTP požadavky. Funkce je užitečná při integraci s mikroslužbami, kde je specifikace uložena v samostatném repozitáři týmu.
Každému požadavku lze přiřadit barevný štítek: red, blue, green, orange, purple. Filtrování podle tagů funguje přes vyhledávací pole nezávisle na struktuře složek, což zjednodušuje navigaci v projektech se stovkami endpointů a mnoha moduly.
Design Mode v Insomnia umožňuje vytvářet API specifikace ve formátu OpenAPI 3.0 přímo uvnitř aplikace. Režim funguje jako vizuální editor: definujte endpointy, schémata dat a parametry bez ručního psaní YAML. Specifikaci lze exportovat do JSON nebo YAML pro publikování v repozitáři.
Insomnia importuje existující specifikace OpenAPI a automaticky vytváří kolekci požadavků pro každý endpoint. Cesty a schémata se převádějí na hotové HTTP požadavky se správnými datovými typy. Tato funkce je užitečná při integraci s mikroslužbami, kde specifikaci ukládá a udržuje samostatný tým backend vývojářů.
Pro organizaci velkého počtu požadavků podporuje Insomnia tagování — každému požadavku lze přiřadit barevný štítek: red, blue, green, orange, purple. Filtrování podle tagů funguje přes vyhledávací pole nezávisle na struktuře složek, což zjednodušuje navigaci v projektech se stovkami endpointů a mnoha funkčními API moduly.
Často kladené dotazy
Ne, registrace není povinná. Insomnia funguje zcela offline. Cloudová synchronizace je k dispozici jako volba pro týmovou práci, ale všechna data jsou uložena lokálně v souborech JSON ve složce ~/.config/Insomnia/.
Exportujte kolekci z Postmanu ve formátu JSON (Collection v2.1). V Insomnia zvolte Import/Export → Import Data → From File. Insomnia automaticky převede kolekci se zachováním požadavků, hlaviček a proměnných prostředí.
Ano, od verze 2022. Insomnia podporuje protokoly WebSocket a Socket.IO. Vytvořte nový požadavek typu WebSocket, zadejte URL (ws:// nebo wss://) a odesílejte zprávy přes rozhraní chatu.
Inso CLI — nativní nástroj Insomnia pro spouštění kolekcí z konzole. Newman je obdoba pro Postman. Inso je lehčí, nevyžaduje samostatnou instalaci (dodává se s Insomnia) a podporuje všechny typy požadavků Insomnia, včetně GraphQL.
Ano, Insomnia podporuje požadavky gRPC přes kartu gRPC. Je nutné načíst soubor .proto s definicí služby. Po načtení Insomnia zobrazí dostupné metody RPC a vygeneruje binární zprávu Protobuf pro odeslání.
Závěry
Vyvineme mobilní aplikaci na klíč
IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.
Přečtěte si také