POST Double-Opt-in-Abonnement anfordern
/api/v1/public/status-pages/{slug}/subscribe
Es werden nur ausdrücklich freigegebene Felder ausgegeben; Entwürfe, Monitoradressen, IPs, Zugangsdaten, Konfigurationen, Logs und interne Alarmtexte bleiben ausgeschlossen. revision, generated_at und fallback kennzeichnen Veröffentlichung und Datenfrische. Ressourcen verwenden dieselben Metadaten. public_api steuert den JSON-Zugriff. Abonnements benötigen eine Anfrage vom selben Ursprung und einen E-Mail-Nachweis; Webhooks zusätzlich eine Empfängerprüfung.
Auf dieser Seite
Zugriff und Rechte
Es werden nur ausdrücklich freigegebene Felder ausgegeben; Entwürfe, Monitoradressen, IPs, Zugangsdaten, Konfigurationen, Logs und interne Alarmtexte bleiben ausgeschlossen. revision, generated_at und fallback kennzeichnen Veröffentlichung und Datenfrische. Ressourcen verwenden dieselben Metadaten. public_api steuert den JSON-Zugriff. Abonnements benötigen eine Anfrage vom selben Ursprung und einen E-Mail-Nachweis; Webhooks zusätzlich eine Empfängerprüfung.
Eine Kontoanmeldung ist nicht erforderlich. Die angegebenen Prüfungen der Browserherkunft und Nutzungslimits gelten weiterhin.
Parameter und Header
| Feld | Position | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|---|
| slug | Pfad | string | Ja | Seitenadresse |
| lang | URL-Parameter | string; {"enum":["en","de"]} | Nein | Eine freigeschaltete Statusseitensprache wählen. Fehlende Inhaltsübersetzungen verwenden die Standardsprache. |
Anfragekörper
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | object; {"additionalProperties":false} | Ja | — |
| $.channel | string | Nein | — |
| $.components | array<string> | Nein | — |
| $.components[] | string | Ja | — |
| string | Ja | — | |
| $.endpoint | string | Nein | — |
Antworten
application/json
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | object | Ja | — |
| $.message | string | Ja | — |
| Stabile Fehlercodes |
|---|
| status_page_operation |
| invalid_origin |
application/problem+json
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | Problem | Ja | — |
| $.code | string | Ja | Stabiler maschinenlesbarer Fehlercode |
| $.detail | string | Ja | Kurze lokalisierte Erklärung ohne interne Fehlerdaten |
| $.instance | string | Ja | Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource |
| $.message | string | Ja | Vorübergehend für bestehende Clients gleich detail |
| $.message_key | string | Ja | Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage |
| $.message_params | object; {"additionalProperties":true} | Ja | Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML |
| $.request_id | string; {"pattern":"^[0-9a-f]{32}$"} | Ja | Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. |
| $.status | integer; {"maximum":599,"minimum":400} | Ja | — |
| $.title | string | Ja | Lokalisierte HTTP-Statusbezeichnung |
| $.type | string; {"const":"about:blank"} | Ja | — |
| Stabile Fehlercodes |
|---|
| status_page_operation |
application/problem+json
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | Problem | Ja | — |
| $.code | string | Ja | Stabiler maschinenlesbarer Fehlercode |
| $.detail | string | Ja | Kurze lokalisierte Erklärung ohne interne Fehlerdaten |
| $.instance | string | Ja | Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource |
| $.message | string | Ja | Vorübergehend für bestehende Clients gleich detail |
| $.message_key | string | Ja | Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage |
| $.message_params | object; {"additionalProperties":true} | Ja | Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML |
| $.request_id | string; {"pattern":"^[0-9a-f]{32}$"} | Ja | Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. |
| $.status | integer; {"maximum":599,"minimum":400} | Ja | — |
| $.title | string | Ja | Lokalisierte HTTP-Statusbezeichnung |
| $.type | string; {"const":"about:blank"} | Ja | — |
| Stabile Fehlercodes |
|---|
| status_page_operation |
application/problem+json
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | Problem | Ja | — |
| $.code | string | Ja | Stabiler maschinenlesbarer Fehlercode |
| $.detail | string | Ja | Kurze lokalisierte Erklärung ohne interne Fehlerdaten |
| $.instance | string | Ja | Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource |
| $.message | string | Ja | Vorübergehend für bestehende Clients gleich detail |
| $.message_key | string | Ja | Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage |
| $.message_params | object; {"additionalProperties":true} | Ja | Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML |
| $.request_id | string; {"pattern":"^[0-9a-f]{32}$"} | Ja | Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. |
| $.status | integer; {"maximum":599,"minimum":400} | Ja | — |
| $.title | string | Ja | Lokalisierte HTTP-Statusbezeichnung |
| $.type | string; {"const":"about:blank"} | Ja | — |
| Stabile Fehlercodes |
|---|
| status_page_operation |
| status_pages_disabled |
application/problem+json
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | Problem | Ja | — |
| $.code | string | Ja | Stabiler maschinenlesbarer Fehlercode |
| $.detail | string | Ja | Kurze lokalisierte Erklärung ohne interne Fehlerdaten |
| $.instance | string | Ja | Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource |
| $.message | string | Ja | Vorübergehend für bestehende Clients gleich detail |
| $.message_key | string | Ja | Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage |
| $.message_params | object; {"additionalProperties":true} | Ja | Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML |
| $.request_id | string; {"pattern":"^[0-9a-f]{32}$"} | Ja | Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. |
| $.status | integer; {"maximum":599,"minimum":400} | Ja | — |
| $.title | string | Ja | Lokalisierte HTTP-Statusbezeichnung |
| $.type | string; {"const":"about:blank"} | Ja | — |
Wiederholungen und asynchrone Aufträge
Für diese Änderung gibt es keine allgemeine Wiederholungsgarantie. Prüfen Sie bei unklarer Antwort den betroffenen Eintrag, bevor Sie es erneut versuchen. Beachten Sie Wartezeiten aus Retry-After und fordern Sie abgelaufene Anmelde- oder Aktionscodes neu an.
HTTP 202 bedeutet, dass der Hintergrundauftrag angenommen wurde. Prüfen Sie seinen Status mit der zurückgegebenen Auftragskennung. Laden Sie Ergebnisse nach dem Abschluss herunter oder lesen Sie den Fehler- beziehungsweise Abbruchstatus.
Anfragebeispiele
Ersetzen Sie Demokennungen, Zeitstempel und Platzhalter durch eigene Werte. Behalten Sie bei Wiederholungen Kennungen, Zeit und Inhalt bei. Diese Beispiele führen auf der Seite keine Anfragen aus.
Halten Sie Anmeldelinks, Codes, Cookies und Schlüssel privat. Schreiben Sie sie nicht in Logs und teilen Sie sie nicht in Hilfeanfragen.
curl --request POST --header 'Origin: https://metribeacon.com' --header 'Content-Type: application/json' --data '{"channel":"email","email":"subscriber@customer.example","endpoint":"","components":["22222222-2222-4222-8222-222222222222"]}' 'https://metribeacon.com/api/v1/public/status-pages/customer-services/subscribe'import requests
payload = {'channel': 'email', 'email': 'subscriber@customer.example', 'endpoint': '', 'components': ['22222222-2222-4222-8222-222222222222']}
response = requests.request("POST","https://metribeacon.com/api/v1/public/status-pages/customer-services/subscribe",headers={"Origin":"https://metribeacon.com"},json=payload)
response.raise_for_status()const payload = {"channel":"email","email":"subscriber@customer.example","endpoint":"","components":["22222222-2222-4222-8222-222222222222"]};
const response = await fetch("https://metribeacon.com/api/v1/public/status-pages/customer-services/subscribe", {signal:AbortSignal.timeout(10000),method:"POST",credentials:"same-origin",headers:{"Content-Type":"application/json"},body:JSON.stringify(payload)});
if (!response.ok) throw new Error(String(response.status));package main
import (
"fmt"
"net/http"
"time"
"strings"
)
func main() {
if err := requestStatus(); err != nil { panic("request failed; credentials and response omitted") }
}
func requestStatus() error {
req, err := http.NewRequest("POST", "https://metribeacon.com/api/v1/public/status-pages/customer-services/subscribe", strings.NewReader(`{"channel":"email","email":"subscriber@customer.example","endpoint":"","components":["22222222-2222-4222-8222-222222222222"]}`))
if err != nil { return err }
req.Header.Set("Origin","https://metribeacon.com")
req.Header.Set("Content-Type","application/json")
client := &http.Client{Timeout: 10*time.Second}
response, err := client.Do(req)
if err != nil { return err }
defer response.Body.Close()
fmt.Println(response.StatusCode)
return nil
}
Verwandte Anleitungen
- HTTP-API, OAuth und MCP
Finden Sie die Nutzer-API-Endpunkte mit Rechten, Feldern, Beispielen und Antwortformaten.
- GET Ausschließlich freigegebene öffentliche Daten lesen
Es werden nur ausdrücklich freigegebene Felder ausgegeben; Entwürfe, Monitoradressen, IPs, Zugangsdaten, Konfigurationen, Logs und interne Alarmtexte bleiben ausgeschlossen. revision, generated_at und fallback kennzeichnen Veröffentlichung und Datenfrische. Ressourcen verwenden dieselben Metadaten. public_api steuert den JSON-Zugriff. Abonnements benötigen eine Anfrage vom selben Ursprung und einen E-Mail-Nachweis; Webhooks zusätzlich eine Empfängerprüfung.
- GET Ausschließlich freigegebene öffentliche Daten lesen
Es werden nur ausdrücklich freigegebene Felder ausgegeben; Entwürfe, Monitoradressen, IPs, Zugangsdaten, Konfigurationen, Logs und interne Alarmtexte bleiben ausgeschlossen. revision, generated_at und fallback kennzeichnen Veröffentlichung und Datenfrische. Ressourcen verwenden dieselben Metadaten. public_api steuert den JSON-Zugriff. Abonnements benötigen eine Anfrage vom selben Ursprung und einen E-Mail-Nachweis; Webhooks zusätzlich eine Empfängerprüfung.
- GET Statusseiten und Einladungen auflisten
Authentifizierte Seitenverwaltung mit aktiver Sitzung, Eigentums-, Seitenrollen- und CSRF-Prüfung. Quellen, Mitglieder, Domains, Versandregeln und die Rücknahme der ganzen Seite benötigen den Besitzer. Redakteure speichern Entwürfe; Herausgeber veröffentlichen freigegebene Inhalte. version erkennt parallele Änderungen. Veröffentlichung und Rücknahme sind erst nach Bestätigung der passenden Veröffentlichungsfassung durch die öffentliche Auslieferung abgeschlossen.