Apiboo-Dokumentation

DokuAPIs

Requests

Request bauen, senden und die Antwort lesen: Methoden, Parameter, Header, Body, Auth und Verlauf.

Requests

Ein Request ist ein Aufruf an eine API: eine Methode, eine URL und alles, was dazugehört (Parameter, Header, Cookies, ein Body und die Autorisierung). Diese Seite zeigt, wie du einen Request baust, sendest, die Antwort liest und ihn in einer Collection ablegst. Die Beispiele nutzen die Bookshop-Demo-API unter http://localhost:4180/v1.

Request anlegen

Klick auf + am Ende der Tab-Leiste. Ein Menü fragt, welche Art von Request du willst:

ArtWas du bekommst
HTTPEinen normalen HTTP-Request.
GraphQLEinen HTTP-Request, schon auf POST gestellt, mit GraphQL-Body und dem Header Content-Type: application/json.
WebSocketEine WebSocket-Verbindung. Siehe WebSocket.
Server-Sent EventsEinen SSE-Stream. Siehe Server-Sent Events.
gRPCEinen gRPC-Aufruf. Siehe gRPC.
Das Menü Neue Anfrage unter dem +-Button mit HTTP, GraphQL, WebSocket, Server-Sent Events und gRPC

Es gibt Abkürzungen an dieselbe Stelle:

  • Strg+T (⌘+T auf dem Mac) öffnet direkt einen neuen HTTP-Tab.
  • Rechtsklick auf einen Tab und New Tab.
  • In der Seitenleiste Rechtsklick auf eine Collection oder einen Ordner, dann Hinzufügen und Anfrage oder eine andere Art. Der Request entsteht in diesem Ordner.

Auf dem Tab zeigt ein HTTP-Request seine Methode farbig, die anderen Arten zeigen das Symbol ihres Protokolls.

Methode und URL

Wähl die Methode in der Liste neben der URL: GET, POST, PUT, PATCH, DELETE, HEAD oder OPTIONS.

Dann tippst du die URL, zum Beispiel http://localhost:4180/v1/books. Beim Tippen gilt:

  • {{ schlägt deine Variablen vor, etwa {{baseUrl}}/books. Siehe Variablen & Umgebungen.
  • Ein Query-String wie ?author=Marchetti&limit=10 füllt den Tab Parameter, und Änderungen im Tab Parameter schreiben die URL um.
  • Fügst du einen kompletten cURL-Befehl ins URL-Feld ein, füllt Apiboo Methode, URL, Header, Parameter, Cookies und Body für dich aus.

Parameter, Header und Cookies

Parameter, Header und Cookies sind Tabellen aus Schlüssel und Wert:

  • Mit dem Häkchen einer Zeile nimmst du sie mit oder lässt sie weg, ohne sie zu löschen.
  • Unten steht immer eine leere Zeile. Tippst du dort einen Schlüssel, entsteht die nächste.
  • Fahr über eine Zeile und klick auf das Papierkorb-Symbol (Remove), um sie zu löschen.
  • Tab springt zwischen Schlüssel und Wert, Zeile für Zeile.

Apiboo sendet mit jedem Request den Header User-Agent: Apiboo/1.0. Er steht als gesperrte erste Zeile im Tab Header. Leg einen eigenen User-Agent-Header an, um einen anderen zu senden.

Cookies aus dem Tab Cookies werden zusammen als ein Cookie-Header gesendet. Apiboo führt keinen Cookie-Speicher zwischen Requests: Ein Cookie, das ein Server setzt, geht beim nächsten Request nicht automatisch zurück; trag es stattdessen im Tab Cookies ein. (Der Collection-Runner ist die Ausnahme, siehe Eine Collection ausführen.)

Body

Der Tab Body hat eine Typ-Auswahl:

TypWofür
Kein BodyRequests ohne Body.
RawText, JSON oder XML, das du tippst. Wähl in der zweiten Auswahl Text, JSON oder XML, dann setzt Apiboo den passenden Content-Type.
Form-dataEin multipart/form-data-Formular. Jede Zeile ist Text oder Datei; eine Datei-Zeile hat einen Button Datei auswählen.
URL EncodedEin application/x-www-form-urlencoded-Formular aus Textfeldern.
GraphQLEine Query und ihre Variables, mit optionalem Schema-Explorer. Siehe GraphQL.

Schalte Einstellungen → Editor → JSON beim Senden automatisch formatieren ein, damit Raw-JSON vor dem Senden eingerückt wird.

Autorisierung

Der Tab Autorisierung legt fest, wie sich der Request ausweist. Wähl einen Type:

TypFelder
Inherit from parentKeine. Der Request nutzt die Auth seiner Collection. Das ist die Vorgabe.
No AuthKeine.
Bearer TokenToken. Gesendet als Authorization: Bearer ….
API KeyKey und Value, dazu Add to: Header oder Query params.
Basic AuthUsername und Password.
OAuth 2.0Ein Grant-Typ und seine Felder (siehe unten).
AWS Signature v4Access Key ID, Secret Access Key, optional ein Session Token, AWS Region (Vorgabe us-east-1) und Service (Vorgabe execute-api).
Der Tab Autorisierung mit OAuth 2.0 und ausgefüllten Feldern für Authorization Code + PKCE

Die Felder für Token, Key, Value, Username und Password akzeptieren Variablen, ein Token kann also in {{accessToken}} liegen.

OAuth 2.0

OAuth 2.0 kennt drei Grant-Typen:

  • Paste access token: Füg ein Token, das du schon hast, in Access Token ein.
  • Authorization Code + PKCE: Füll Authorization-URL, Token-URL, Client-ID, Client-Secret und Scope aus und klick auf Neues Access Token holen. Dein Browser öffnet sich zur Anmeldung. Dieser Grant-Typ braucht die Desktop-App.
  • Client credentials: Füll Token-URL, Client-ID, Client-Secret und Scope aus und klick auf Neues Access Token holen.

Hat Apiboo ein Token, zeigt es dieses maskiert mit Ablaufzeit an. Token löschen verwirft es. Sendest du mit einem abgelaufenen Token, erneuert Apiboo es vorher: mit dem Refresh-Token, falls der Server eins geliefert hat, oder bei Client credentials durch ein neues Token. Klappt das nicht, erscheint der Hinweis Token not renewed, und der Request geht mit dem alten Token raus.

Von der Collection erben

Bei Inherit from parent zeigt der Tab, von welcher Collection die Auth kommt. Stell die Auth einmal an der Collection ein (siehe Collection-Einstellungen), dann nutzt jeder erbende Request darin sie. Wählst du an einem Request einen anderen Typ, überschreibst du sie nur für diesen Request.

Request senden

Klick auf Senden oder drück Strg+Enter (⌘+Enter). Das Kürzel funktioniert überall im Request, auch in den Editoren für Body und Skripte. Enter im URL-Feld sendet ebenfalls.

Während Apiboo wartet, zeigt der Antwortbereich Awaiting response mit der verstrichenen Zeit und einem Button Cancel.

Der Pfeil neben Senden öffnet die Sendeoptionen mit Download: Das sendet den Request erneut und speichert diese Antwort in einer Datei.

Die Antwort lesen

Eine 200-OK-Antwort von GET /v1/books: Status, Zeit und Größe sowie der JSON-Body mit Format-Auswahl

Über der Antwort siehst du den Status (zum Beispiel 200 OK), die Zeit in Millisekunden und die Größe. Fahr über die Größe, um zu sehen, wie sie sich auf Header und Body verteilt, für Antwort und Request.

Schlägt ein Request mit Status 400 oder höher fehl, fragt der Button Explain den KI-Assistenten, was schiefging (siehe KI-Assistent).

Die Antwort hat vier Tabs:

TabZeigt
BodyDen Antwort-Body.
HeaderAlle Antwort-Header mit Anzahl und Gesamtgröße.
CookiesDie Cookies, die der Server gesetzt hat: Name, Value, Path, Expires und Flags wie HttpOnly, Secure und SameSite.
TestergebnisseDie Ergebnisse deiner Post-Response-Tests, zum Beispiel „3 / 3 bestanden“. Siehe Testergebnisse lesen.

Der Tab Body hat eine kleine Werkzeugleiste:

  • Format: Auto, JSON, XML, HTML, JavaScript, CSS, YAML oder Text. Auto wählt anhand der Antwort.
  • Preview: stellt HTML in einem sicheren Rahmen dar, zeigt JSON als Tabelle und Bilder und PDFs so, wie sie sind.
  • Hex: eine Hex-Ansicht, angeboten bei binären Antworten.
  • Das Kopier-Symbol kopiert den Body.

Welche Ansicht zuerst erscheint, legst du unter Einstellungen → Editor → Standard-Antwortansicht fest: Formatiert, Roh oder Vorschau.

Konnte der Request den Server gar nicht erreichen, siehst du Request failed und einen Button Retry.

Request speichern

Klick auf Speichern oder drück Strg+S (⌘+S). Ein Request, der schon in einer Collection liegt, wird an Ort und Stelle gespeichert. Ein neuer öffnet den Dialog Anfrage speichern:

  1. Gib einen Anfragename ein. Ein unbenannter Request übernimmt seinen Namen aus der URL.
  2. Wähl unter Ziel eine Collection oder einen Ordner. Sammlungen und Ordner durchsuchen… grenzt die Liste ein, Neuer Ordner und Neue Sammlung legen direkt etwas an.
  3. Klick auf Hier speichern.
Der Dialog Anfrage speichern mit der Bookshop-Collection und ihrem Ordner Books als Ziel

Umbenennen, duplizieren und löschen

AktionSo geht's
UmbenennenKlick auf den Namen über der URL, tipp und drück Enter (Esc bricht ab). Oder drück F2 bzw. Strg+E, oder Rechtsklick in der Seitenleiste und Umbenennen.
DuplizierenStrg+D für den gespeicherten Request im aktiven Tab, oder Rechtsklick in der Seitenleiste und Duplizieren.
LöschenRechtsklick in der Seitenleiste, Löschen, dann bestätigen. Das lässt sich nicht rückgängig machen.

Mit Tabs arbeiten

Jeder offene Request ist ein Tab. Ein Punkt statt des × heißt, dass der Tab ungespeicherte Änderungen hat.

Ein Rechtsklick auf einen Tab bietet New Tab, Duplicate Tab, Close Others, Close Tab und Close All Tabs. Duplicate Tab öffnet eine ungespeicherte Kopie direkt neben dem Original.

Der Pfeil am Ende der Leiste (Alle Tabs) listet alle offenen Tabs mit Suchfeld, und Alle schließen schließt sie alle und öffnet einen frischen Request. Tabs lassen sich per Drag-and-drop umsortieren.

Verlauf

Jeder gesendete Request wird festgehalten, auch fehlgeschlagene. Apiboo behält die letzten 100.

Verlauf in der Leiste listet sie nach Tagen (Heute, Gestern, dann das Datum). Jede Zeile zeigt Methode, URL und Uhrzeit.

  • Verlauf durchsuchen… filtert nach URL und Methode.
  • Klick eine Zeile an, um sie wieder zu öffnen. Sie füllt den aktuellen Tab, wenn der leer ist, sonst öffnet sie einen neuen.
  • Verlauf löschen entfernt alles, nachdem du bestätigt hast.
Die Seitenleiste Verlauf mit den heutigen Bookshop-Requests unter Heute

Jeder Request hat außerdem einen eigenen Verlauf. Klick auf das Uhr-Symbol neben der URL, um die früheren Läufe dieses Requests mit Status, Dauer und Zeitpunkt zu sehen. Klickst du einen älteren Lauf an, siehst du seine Antwort; ein Chip neben dem Request-Namen bringt dich zurück zum aktuellen.

Wird der Arbeitsbereich mit einem Git-Repository synchronisiert, hat der Kopf des Requests zusätzlich einen Knopf History: Er listet die synchronisierten Versionen des Requests selbst (URL, Header, Body und so weiter) und kann eine davon wiederherstellen. Siehe Verlauf und Wiederherstellen.

Code erzeugen

Um einen gespeicherten Request in Code zu verwandeln, klick ihn in der Seitenleiste mit rechts an und wähl Generate Code. Wähl eine Sprache:

SpracheBibliothek
cURLShell
PythonRequests
TypeScriptFetch
Gonet/http
JavaHttpClient
C#HttpClient
PHPcURL
RubyNet::HTTP
SwiftURLSession

Copy kopiert den Code. Options enthält Einstellungen je Sprache (bei cURL etwa mehrzeilig, kurze Flags, Weiterleitungen folgen, Silent-Modus, Anführungszeichen und ein Timeout) und den Schalter Include auth.

Proxy und Zertifikate

Um Requests über einen Proxy zu senden, öffne Einstellungen → Proxy:

  1. Schalte Enable Proxy ein.
  2. Wähl den Proxy Type: HTTP, HTTPS, SOCKS5 oder System Proxy.
  3. Gib Host und Port ein, dazu Username und Password, falls der Proxy sie verlangt. Das Passwort gilt nur für die aktuelle Sitzung.
  4. Trag unter Bypass kommagetrennt die Hosts ein, die den Proxy umgehen sollen. Vorgabe ist localhost,127.0.0.1.
  5. Prüf alles mit Test Connection.

Client-Zertifikate, eigene CA-Zertifikate und Disable SSL Verification globally (für lokale Server mit selbstsignierten Zertifikaten) findest du unter Einstellungen → Zertifikate.

Tastenkürzel

KürzelAktion
Strg+TNeuer HTTP-Tab
Strg+EnterSenden
Enter in der URLSenden
Strg+SSpeichern
F2 oder Strg+EUmbenennen
Strg+DGespeicherten Request duplizieren

Auf dem Mac nimmst du ⌘ statt Strg. Ändern kannst du sie unter Einstellungen → Tastatur; Senden und Speichern lassen sich nicht neu belegen.