Insomnia — was ist das, REST- und GraphQL-Client in der Entwicklung

Autor: IT Sectr Veröffentlicht: 2026-05-08 Lesezeit: 8 Min.

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 ein kostenloser REST- und GraphQL-Client mit Fokus auf Performance und lokales Arbeiten ohne Cloud-Synchronisation.
  • Umgebungen in Insomnia unterstützen Verschachtelung und Vererbung von Variablen über JSON-Dateien mit Syntaxhervorhebung.
  • Der GraphQL-Editor umfasst Schema-Autovervollständigung, Typdokumentation und visuellen Query-Aufbau über den GraphQL-Tab.
  • Code Generation konvertiert eine Anfrage in Code in cURL, Python, JavaScript, Kotlin, Swift, Rust und anderen Sprachen.
  • Das Plugin-System erweitert die Funktionalität durch Drittanbieter-Plugins für Tagging, Export und Datengenerierung.

Was ist Insomnia und die wichtigsten Funktionen

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.

Oberfläche und Navigation

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.

Codegenerierung

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 vs. Postman: Vergleich der API-Clients

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.

KriteriumInsomniaPostman
App-Größe~80 MB~300 MB
Offline-ModusVollständigEingeschränkt
GraphQLIntegrierter EditorBeta-Version
CLIInso CLINewman
PluginsPlugin HubErweiterungen

Auswahl des Werkzeugs für die Aufgabe

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.

Organisation des Arbeitsbereichs und der Umgebungen

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.

Umgebungsvariablen mit Vererbung

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.

json
// Beispiel für die Struktur einer Insomnia-Umgebung
{
    "base_url": "https://api.example.com",
    "timeout": 5000,
    "headers": {
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
}

Arbeiten mit GraphQL in Insomnia

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.

Laden des Schemas und Introspection

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
# GraphQL-Abfrage mit Variablen in Insomnia
query GetUser($id: ID!) {
    user(id: $id) {
        name
        email
        posts {
            title
            createdAt
        }
    }
}

Plugins und Erweiterung der Funktionen

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.

Beliebte Plugins

  • insomnia-plugin-faker — Generierung von Fake-Daten (Name, E-Mail, Telefon) für Testanfragen.
  • insomnia-plugin-aws4 — Signierung von Anfragen mit AWS Signature Version 4 für die Arbeit mit Amazon API Gateway und S3.
  • insomnia-plugin-utils — Dienstprogramme für die Arbeit mit Datumsangaben, Hashing und Base64-Kodierung direkt in Anfragen.

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.

CLI und Testautomatisierung

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.

Beispiel für die Integration in GitHub Actions

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.

yaml
# 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

Integration von Insomnia mit Git und Teamarbeit

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.

Einrichtung der Git-Synchronisation

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.

Teamarbeit über Insomnia Cloud

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.

SynchronisationsmethodeKostenlosOfflineVersionskontrolle
Git (lokal)JaJaVollständig (commit, diff, merge)
Insomnia CloudBis zu 3 BenutzerNeinBasis (Änderungsverlauf)
DateiexportJaJaManuell (über ein Versionskontrollsystem)

Design Mode und Generierung von Spezifikationen

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.

Generierung einer Sammlung aus OpenAPI

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.

Tagging von Anfragen

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 und Generierung von Spezifikationen

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.

Generierung einer Sammlung aus OpenAPI

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.

Tagging und Filterung von Anfragen

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

Ist für die Arbeit mit Insomnia eine Registrierung erforderlich?

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.

Wie importiere ich eine Sammlung von Postman in Insomnia?

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.

Unterstützt Insomnia WebSocket?

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.

Wie unterscheidet sich Inso CLI von Newman?

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.

Kann Insomnia für gRPC verwendet werden?

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

  • Insomnia ist ein leichter und schneller HTTP-Client für REST, GraphQL und WebSocket mit vollständigem Offline-Betrieb.
  • Der GraphQL-Editor mit Autovervollständigung und Schema-Laden über Introspection ist eine der besten Lösungen unter den API-Clients.
  • Umgebungen unterstützen Verschachtelung und Vererbung von Variablen für eine flexible Konfiguration in verschiedenen Umgebungen.
  • Die Codegenerierung in über 20 Sprachen beschleunigt die API-Integration in mobile und Web-Anwendungen.
  • Plugin Hub erweitert die Funktionalität über Plugins für Datengenerierung, Anfragesignierung und benutzerdefinierte Validierung.
  • Inso CLI führt Sammlungen in CI/CD ohne grafische Oberfläche aus und exportiert Ergebnisse in das JUnit-Format.
  • Die gRPC-Unterstützung mit Laden von .proto-Dateien macht Insomnia zu einem universellen Werkzeug für Microservice-Architekturen.

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.

Projekt besprechen

Lesen Sie auch