Insomnia ist ein Open-Source-Desktop-HTTP-Client zum Testen von REST-, GraphQL- und WebSocket-APIs. Das Tool zeichnet sich durch eine minimalistische Oberfläche, einen integrierten Anfrage-Editor und die Unterstützung von Umgebungsvariablen ohne Registrierung aus. Laut Insomnia Documentation (2026) unterstützt der Client die automatische Codegenerierung in über 20 Programmiersprachen.
Das Wichtigste
Insomnia ist eine plattformübergreifende Anwendung (Electron) zum Senden von HTTP-Anfragen und zum Debuggen von APIs. Sie wird seit 2016 von der Firma Kong als Alternative zu Postman entwickelt, mit Fokus auf Geschwindigkeit und Datenschutz: Die Daten werden lokal gespeichert, die Cloud-Synchronisation ist optional und erfordert eine Registrierung.
Das Hauptfenster ist in drei Spalten unterteilt: links der Anfragebaum (Workspace), in der Mitte der Anfrage-Editor mit den Tabs Params, Headers, Body, rechts das Antwortpanel mit den Modi Pretty, Raw und Preview. Das dunkle Thema ist standardmäßig aktiviert, benutzerdefinierte Themen werden über CSS-Variablen unterstützt.
Insomnia unterstützt den Export einer Anfrage in Code in über 20 Sprachen und Frameworks: cURL, HTTPie, Python Requests, JavaScript Fetch/Axios, Kotlin OkHttp, Swift URLSession, Java Unirest, Ruby Net::HTTP und andere. Der Generator berücksichtigt Header, den Anfragebody und den Authentifizierungstyp, was die API-Integration in den Anwendungscode beschleunigt.
Insomnia und Postman lösen dieselbe Aufgabe, aber mit unterschiedlichen Prioritäten. Insomnia ist leichter (~80 MB gegenüber ~300 MB), startet schneller und arbeitet vollständig offline, ohne eine Registrierung aufzuzwingen. Postman bietet ein ausgereifteres Ökosystem mit Monitoring, Mock-Servern und Team-Workspaces.
| Kriterium | Insomnia | Postman |
|---|---|---|
| App-Größe | ~80 MB | ~300 MB |
| Offline-Modus | Vollständig | Eingeschränkt |
| GraphQL | Integrierter Editor | Beta-Version |
| CLI | Inso CLI | Newman |
| Plugins | Plugin Hub | Erweiterungen |
Für die individuelle Entwicklung und das schnelle Testen von Endpunkten ist Insomnia dank seiner Leichtigkeit und der fehlenden Registrierung bequemer. Für Teamarbeit mit einer gemeinsamen Sammlung, CI/CD-Integration und Monitoring von Produktions-APIs bleibt Postman der Industriestandard.
Der Workspace in Insomnia enthält einen Anfragebaum, der in Ordner unterteilt ist. Jede Anfrage kann vom Typ HTTP, GraphQL, WebSocket oder gRPC sein. Drag-and-Drop, Duplizieren und Gruppieren von Anfragen nach Farblabels werden unterstützt. Die Konfigurationsdatei des Workspace wird im JSON-Format gespeichert.
Insomnia unterstützt verschachtelte Umgebungen (Sub Environments), die die Variablen des übergeordneten Elements erben. Dadurch kann eine Basis-URL in der globalen Umgebung definiert und für verschiedene Umgebungen nur die abweichenden Parameter überschrieben werden. Variablen werden über die Syntax {`{`}_variable${`}`} eingesetzt.
// Beispiel für die Struktur einer Insomnia-Umgebung
{
"base_url": "https://api.example.com",
"timeout": 5000,
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
}
Insomnia bietet einen der besten GraphQL-Editoren unter den API-Clients. Über den Tab GraphQL Query lassen sich Anfragen mit Feld-Autovervollständigung auf Basis des geladenen Schemas schreiben. Rechts wird die Dokumentation zu Typen, Feldern und Argumenten in Echtzeit angezeigt.
Das Schema wird über eine GraphQL-Introspection-Anfrage an den Endpunkt geladen. Insomnia speichert das Schema lokal im Cache und aktualisiert es bei Änderungen automatisch. Nach dem Laden stehen die Autovervollständigung (Ctrl+Space), die Validierung der Anfrage und die Vorschau möglicher Fehler vor dem Senden zur Verfügung.
# GraphQL-Abfrage mit Variablen in Insomnia
query GetUser($id: ID!) {
user(id: $id) {
name
email
posts {
title
createdAt
}
}
}
Insomnia Plugin Hub enthält mehr als 100 Plugins, die die Funktionalität des Clients erweitern. Plugins werden über das Menü Preferences → Plugins oder manuell über npm installiert. Zu den beliebten Kategorien gehören die Generierung von Testdaten, der Export in verschiedene Formate und benutzerdefinierte Antwortvalidatoren. Jedes Plugin durchläuft vor der Veröffentlichung im öffentlichen Entwickler-Hub eine obligatorische Moderation.
Plugins werden in JavaScript geschrieben und interagieren über die Template-API (response.*, request.*, environment.*) mit Insomnia. Die Entwicklung eines Plugins erfordert Grundkenntnisse in Node.js und die Veröffentlichung über ein npm-Paket mit dem Tag insomnia-plugin.
Inso CLI ist ein in Insomnia integriertes Konsolendienstprogramm zum Ausführen von Anfragen und Tests aus dem Terminal. Inso führt einzelne Anfragen oder ganze Sammlungen aus, exportiert Ergebnisse nach JSON und kann in CI/CD-Pipelines integriert werden. Der Befehl inso run collection führt alle Anfragen einer Sammlung nacheinander aus.
Inso CLI arbeitet in Docker-Containern und im Headless-Modus, sodass es in GitHub Actions und GitLab CI eingesetzt werden kann. Die Startkonfiguration wird in einer YAML-Datei mit dem Pfad zur exportierten Sammlung und zur Umgebung beschrieben. Assertions auf Statuscode und Antwortbody werden über JavaScript-Skripte unterstützt.
# GitHub Actions Workflow mit 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 unterstützt die Synchronisation von Sammlungen über Git. Sammlungsdateien werden im JSON-Format gespeichert und können zum Projektrepository hinzugefügt werden. Insomnia bietet einen integrierten Git-Client zum Anzeigen von Änderungen, Erstellen von Commits und Lösen von Merge-Konflikten direkt aus der Oberfläche.
Um Git zu verbinden, erstellen Sie einen lokalen Ordner mit einem Repository und legen ihn in den Insomnia-Einstellungen als Stammverzeichnis fest. Die Anwendung verfolgt Änderungen in Sammlungsdateien automatisch und zeigt sie im Panel Version Control an. Standardoperationen werden unterstützt: commit, push, pull und Diff-Anzeige zwischen Versionen.
Für Projekte ohne Git bietet Insomnia Cloud-Synchronisation über Insomnia Cloud an. Der kostenlose Tarif umfasst bis zu 3 Teammitglieder und automatische Sicherung von Sammlungen. Bezahlte Tarife fügen Zugriffsverwaltung, Änderungsprüfung und Prioritäts-Support hinzu.
| Synchronisationsmethode | Kostenlos | Offline | Versionskontrolle |
|---|---|---|---|
| Git (lokal) | Ja | Ja | Vollständig (commit, diff, merge) |
| Insomnia Cloud | Bis zu 3 Benutzer | Nein | Basis (Änderungsverlauf) |
| Dateiexport | Ja | Ja | Manuell (über ein Versionskontrollsystem) |
Design Mode in Insomnia ermöglicht es, API-Spezifikationen im OpenAPI-3.0-Format zu erstellen. Der Modus funktioniert wie ein visueller Editor: Definieren Sie Endpunkte und Datenschemata, ohne YAML von Hand zu schreiben. Die Spezifikation kann nach JSON oder YAML exportiert werden.
Insomnia importiert OpenAPI-Spezifikationen und erstellt für jeden Endpunkt eine Sammlung von Anfragen. Pfade und Schemata werden in fertige HTTP-Anfragen umgewandelt. Die Funktion ist bei der Integration mit Microservices nützlich, bei der die Spezifikation in einem separaten Team-Repository gespeichert wird.
Jeder Anfrage kann ein farbiges Label zugewiesen werden: red, blue, green, orange, purple. Die Filterung nach Tags funktioniert über die Suchleiste unabhängig von der Ordnerstruktur, was die Navigation in Projekten mit Hunderten von Endpunkten und vielen Modulen vereinfacht.
Design Mode in Insomnia ermöglicht es, API-Spezifikationen im OpenAPI-3.0-Format direkt in der Anwendung zu erstellen. Der Modus funktioniert wie ein visueller Editor: Definieren Sie Endpunkte, Datenschemata und Parameter, ohne YAML von Hand zu schreiben. Die Spezifikation kann zur Veröffentlichung in Repositories nach JSON oder YAML exportiert werden.
Insomnia importiert vorhandene OpenAPI-Spezifikationen und erstellt automatisch für jeden Endpunkt eine Sammlung von Anfragen. Pfade und Schemata werden in fertige HTTP-Anfragen mit korrekten Datentypen umgewandelt. Diese Funktion ist bei der Integration mit Microservices nützlich, bei der die Spezifikation von einem separaten Backend-Entwicklungsteam gespeichert und gepflegt wird.
Zur Organisation einer großen Anzahl von Anfragen unterstützt Insomnia Tagging — jeder Anfrage kann ein farbiges Label zugewiesen werden: red, blue, green, orange, purple. Die Filterung nach Tags funktioniert über die Suchleiste unabhängig von der Ordnerstruktur, was die Navigation in Projekten mit Hunderten von Endpunkten und vielen funktionalen API-Modulen vereinfacht.
Häufig gestellte Fragen
Nein, eine Registrierung ist nicht erforderlich. Insomnia arbeitet vollständig offline. Cloud-Synchronisation ist als Option für Teamarbeit verfügbar, aber alle Daten werden lokal in JSON-Dateien im Ordner ~/.config/Insomnia/ gespeichert.
Exportieren Sie die Sammlung aus Postman im JSON-Format (Collection v2.1). Wählen Sie in Insomnia Import/Export → Import Data → From File. Insomnia konvertiert die Sammlung automatisch und bewahrt Anfragen, Header und Umgebungsvariablen.
Ja, seit Version 2022. Insomnia unterstützt die WebSocket- und Socket.IO-Protokolle. Erstellen Sie eine neue Anfrage vom Typ WebSocket, geben Sie die URL (ws:// oder wss://) an und senden Sie Nachrichten über die Chat-Oberfläche.
Inso CLI ist ein natives Dienstprogramm von Insomnia zum Ausführen von Sammlungen aus der Konsole. Newman ist das Äquivalent für Postman. Inso ist leichter, benötigt keine separate Installation (wird mit Insomnia geliefert) und unterstützt alle Insomnia-Anfragetypen, einschließlich GraphQL.
Ja, Insomnia unterstützt gRPC-Anfragen über den Tab gRPC. Es muss eine .proto-Datei mit der Dienstdefinition geladen werden. Nach dem Laden zeigt Insomnia die verfügbaren RPC-Methoden an und generiert eine binäre Protobuf-Nachricht zum Senden.
Zusammenfassung
Wir entwickeln eine mobile Applikation schlüsselfertig
IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.
Lesen Sie auch