Das Gateway ist unter folgendem URL-Schema erreichbar:
https://metergate.dev/v1/<slug>/<pfad>
Dabei ist <slug> der Kurzname des Produkts, das du ansprechen willst. Das folgende Beispiel ruft einen fiktiven Endpunkt demo mit Pfad /get auf:
curl -H "Authorization: Bearer DEIN_API_SCHLUESSEL" https://metergate.dev/v1/demo/get
Der Authorization-Header trägt den API-Schlüssel als Bearer-Token. Gezählt wird jeder Aufruf, den der Anbieter beantwortet hat, auch mit einem Fehler 4xx. Die Kopfzeile X-Metered sagt es je Antwort. Abgerechnet wird gebündelt nach Ende des Kalendermonats.
Bis zum Start der Abrechnung trägt die Antwort zusätzlich X-Billing-Starts: unannounced: bis dahin kostet kein Aufruf etwas. Solange kein Start angekündigt ist, steht dort unannounced; sobald er angekündigt ist (mindestens 14 Tage vorher per E-Mail), der Zeitpunkt. Die Kopfzeile steht nur bis zum Start der Abrechnung und nur auf zugestellten Antworten, nie auf Fehlerantworten des Gateways. Fehlt sie auf einer zugestellten Antwort, ist die Abrechnung aktiv, und der Preis im Katalog gilt.
/v1/<slug>/<pfad> — der Pfad hinter dem Slug gehört dazu.| Status | Bedeutung |
|---|---|
| 200 | Erfolg — die Antwort des Anbieters wird durchgereicht. |
| 400 | invalid_request — die Parameter passen nicht zum Eingabe-Schema des Produkts. Das prüft das Gateway nur, wenn der Anbieter die Prüfung eingeschaltet hat. |
| 401 | Ungültiger oder fehlender Schlüssel. |
| 402 | Keine Karte hinterlegt, Kreditlimit des Abos erschöpft oder Ausgabengrenze des Schlüssels erreicht. In den letzten beiden Fällen nennt die Antwort mit retry_at, ab wann es wieder geht. |
| 402 | subscription_suspended — eine Kartenbelastung ist fehlgeschlagen, das Abo ist gesperrt. Unter /balance begleichen; die Freischaltung erfolgt danach automatisch. |
| 403 | subscription_required — Für diese API besteht kein aktives Abo. Im Katalog abonnieren. |
| 404 | API nicht gefunden. |
| 405 | method_not_allowed — die Methode ist für diese API nicht erlaubt. Die Kopfzeile Allow nennt die erlaubten. |
| 425 | objection_window_pending — ein automatisch geschlossenes Abo läuft noch im Widerspruchsfenster. Bis zum Ende des Fensters warten oder es unter /keys bestätigen. |
| 429 | rate_limit_exceeded — zu viele Aufrufe in kurzer Zeit. Mit wachsendem Abstand erneut versuchen. |
| 502 | Fehler beim Anbieter — der Aufruf wird nicht gezählt. |
| 503 | platform_frozen — der Betrieb ist vorübergehend angehalten. Es wird nichts gezählt und nichts abgerechnet; später erneut versuchen. |
Antworten des Anbieters mit einem Status unter 500, auch 4xx, werden durchgereicht und gezählt. Die Kopfzeile X-Metered sagt es je Antwort. Alle Fehlercodes mit ihrer Bedeutung stehen unter /api/v1/errors.