Zum Hauptinhalt springen

Webhooks (Management API)

Registrieren Sie Webhook-Abonnements, um Echtzeit-Benachrichtigungen für Ereignisse in Ihrer Organisation zu erhalten. Für Webhook-Payload-Formate und Sicherheit siehe den Abschnitt Webhooks.

Webhook-Abonnements auflisten

Rufen Sie alle aktiven Webhook-Abonnements Ihrer Organisation ab.
GET /v1/management/notification-subscriptions

Beispielanfrage

curl -X GET "https://api.rxscale.com/v1/management/notification-subscriptions/" \
  -H "X-API-Key: your-api-key-here"

Antwort

[
  {
    "uid": "ns-abc123",
    "notification_type": "pharmacy_order_created",
    "target": "https://your-system.com/webhooks/rxscale",
    "options": "WEBHOOK",
    "payload_version": "1"
  }
]

Webhook-Abonnement registrieren

Erstellen Sie ein neues Webhook-Abonnement für Ihre Organisation.
POST /v1/management/notification-subscriptions

Anfragekörper

{
  "notification_type": "pharmacy_order_created",
  "target": "https://your-system.com/webhooks/rxscale",
  "payload_version": "1"
}
FeldTypErforderlichBeschreibung
notification_typestringJaEreignistyp, der abonniert werden soll
targetstringJaWebhook-URL für den Empfang von Benachrichtigungen (muss HTTPS sein)
meta_dataobjectNeinOptionale Metadaten für das Abonnement
payload_versionstringNeinPayload-Schema-Version (Standard: "1")

Verfügbare Ereignistypen

EreignistypBeschreibung
pharmacy_order_createdEine neue Apothekenbestellung wurde erstellt
pharmacy_order_updatedDer Status einer bestehenden Bestellung hat sich geändert
pharmacy_sku_stock_updatedDer Lagerbestand einer Apotheken-SKU hat sich geändert

Beispielanfrage

curl -X POST "https://api.rxscale.com/v1/management/notification-subscriptions/" \
  -H "X-API-Key: your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "notification_type": "pharmacy_order_created",
    "target": "https://your-system.com/webhooks/rxscale"
  }'

Antwort (201 Created)

{
  "uid": "ns-abc123",
  "notification_type": "pharmacy_order_created",
  "target": "https://your-system.com/webhooks/rxscale",
  "options": "WEBHOOK",
  "payload_version": "1"
}

Webhook-Abonnement entfernen

Löschen (deaktivieren) Sie ein Webhook-Abonnement durch Angabe der Ziel-URL und des Benachrichtigungstyps.
DELETE /v1/management/notification-subscriptions
target
string
erforderlich
Die Webhook-Ziel-URL
notification_type
string
erforderlich
Der Benachrichtigungstyp, von dem abgemeldet werden soll

Beispielanfrage

curl -X DELETE "https://api.rxscale.com/v1/management/notification-subscriptions/?target=https://your-system.com/webhooks/rxscale&notification_type=pharmacy_order_created" \
  -H "X-API-Key: your-api-key-here"
Gibt bei Erfolg 204 No Content zurück.

Webhook-Zustellung testen

Senden Sie einen Beispiel-Webhook-Payload an eine Ziel-URL, um zu überprüfen, ob Ihr Endpoint korrekt konfiguriert ist. Dies ist nützlich, um die Funktionsfähigkeit Ihres Webhook-Endpoints zu verifizieren, bevor Sie ein Abonnement erstellen.
POST /v1/management/notification-subscriptions/test

Anfragekörper

{
  "target_url": "https://your-system.com/webhooks/rxscale",
  "event_type": "pharmacy_order_created",
  "header_key": "X-Custom-Auth",
  "header_value": "my-secret-token"
}
FeldTypErforderlichBeschreibung
target_urlstringJaURL, an die der Test-Webhook gesendet werden soll (muss HTTPS sein)
event_typestringNeinZu simulierender Ereignistyp (Standard: pharmacy_order_created)
header_keystringNeinName eines benutzerdefinierten Headers, der in die Testanfrage aufgenommen werden soll
header_valuestringNeinWert des benutzerdefinierten Headers, der in die Testanfrage aufgenommen werden soll

Beispielanfrage

curl -X POST "https://api.rxscale.com/v1/management/notification-subscriptions/test" \
  -H "X-API-Key: your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "target_url": "https://your-system.com/webhooks/rxscale",
    "event_type": "pharmacy_order_created",
    "header_key": "X-Custom-Auth",
    "header_value": "my-secret-token"
  }'

Antwort

{
  "success": true,
  "status_code": 200,
  "payload_sent": {
    "event_type": "pharmacy_order_created",
    "timestamp": 1711700000,
    "payload_version": "1",
    "data": { ... }
  }
}
Test-Webhook-Payloads enthalten den Header X-Webhook-Test: true, damit Ihr Endpoint Testzustellungen von echten unterscheiden kann.