Handbuch · 7

Custom Endpoints

Bindet ein Skript an eine eigene HTTP-Route unter /api/v1/scripts/*.

Konfiguration:

  • HTTP-Methode (beliebig).
  • Pfad-Muster – feste Segmente, benannte Parameter (:id) und ein abschließendes Wildcard (*) sind erlaubt, z. B. /bestellungen/:id/status. Überschneiden sich mehrere registrierte Muster für eine Anfrage, gewinnt das spezifischste (fest vor benanntem Parameter vor Wildcard).
  • Auth-Modus: öffentlich (ohne Anmeldung erreichbar) oder angemeldet (Sitzung oder API-Token nötig).

Das Request-Objekt

Dem Skript steht ein globales request-Objekt zur Verfügung:

request.method   // "GET", "POST", ...
request.path     // der aufgerufene Pfad
request.params   // benannte Pfad-Parameter, z.B. { id: "42" }
request.query    // Query-String-Parameter
request.headers  // HTTP-Header
request.body     // geparstes JSON, sonst der rohe Text

Die Antwort

Entweder über das response-Objekt (verkettbar):

response.status(201).json({ ok: true });
// oder: response.send("reiner Text");
// oder: response.setHeader("X-Custom", "wert");

Oder einfach der letzte Ausdruck/return-Wert des Skripts – wird dann automatisch als JSON zurückgegeben, ganz ohne response.*-Aufruf.