Webhooks
SicherheitWenn Sie Webhook-Endpunkte einrichten, können Sie Ihre Anwendung vor unerwünschten Anfragen schützen, indem Sie das Webhook-Geheimnis konfigurieren. Jede Anfragesignatur wird mit dem Hashing-Algorithmus HMAC_SHA256 erstellt. Der Algorithmus signiert die Webhook-Nutzlast mit dem von Ihnen angegebenen Geheimnis. Der resultierende Hash ist im Signaturheader der Anfrage im folgenden Format enthalten:
X-TopMessage-Signature: {TOPMESSAGE_HMAC_SIGNATURE}
Verwalten Sie Ihre Webhook-Endpunkte
hier
Zustellbericht empfangen
Der Zustellbericht ausgehender Nachrichten wird an Ihren Webhook-Endpunkt gesendet und gibt an, ob jede Nachricht erfolgreich zugestellt wurde oder nicht.
Name | Typ | Beschreibung |
---|---|---|
data | Objekt | Enthält die folgenden Details der gesendeten Nachricht. |
Datenobjekt
Name | Typ | Beschreibung |
---|---|---|
id | string | Eindeutige Kennung Ihrer Nachricht. |
status | string | Anfangsstatus Ihrer Nachricht. Möglichen Werte: PENDING , FAILED , DELIVERED , SEEN |
channel | string | Der Kommunikationskanal, über den Ihre Nachricht gesendet wurde. Möglichen Werte: SMS und WHATSAPP Standard: SMS |
Eingehende Nachrichten empfangen
Eingehende Nachrichten, die an Ihre SMS- oder WhatsApp-Telefonnummer gesendet werden, werden in Echtzeit an den angegebenen Webhook-Endpunkt weitergeleitet.
Name | Typ | Beschreibung |
---|---|---|
data | Objekt | Enthält die folgenden Details der gesendeten Nachricht. |
Datenobjekt
Name | Typ | Beschreibung |
---|---|---|
account_id | string | Eindeutige Kennung Ihres Kontos. |
from | string | Die Mobiltelefonnummer(n) des Absenders im internationalen Format. |
sender_code | string | Ihre TopMessage-SMS- oder WhatsApp-Telefonnummer. |
text | string | Ihr Nachrichtentext, der an den/die Empfänger gesendet werden soll. |
channel | string | Der Kommunikationskanal, über den Ihre Nachricht gesendet wurde. Möglichen Werte: SMS und WHATSAPP Standard: SMS |
to | string | Ihr TopMessage SMS- oder WhatsApp-Absendername. Sie können verfügbare Namen einsehen oder einen neuen auf der Absenderseite erstellen.Zur Absenderseite gehen. |
request_id | string | Eindeutige Kennung der von Ihnen generierten Anfrage zum Verfolgen von Anfragen. Standard: NULL |
POST
https://{yourDomain}/your/webhook/path
X-Topmessage-Signature: {TOPMESSAGE_HMAC_SIGNATURE}
Content-Type: application/json
Anfragebeispiel (Zustellbericht)
Payload
Java
Python
{
"data":
{
"id":"b04fc4d3-f232-46b7-b66b-538c0d4b3404",
"channel":"SMS",
"status":"DELIVERED"
}
}
public class TopMessageDeliveryReport {
private String id;
private String requestId;
private String channel;
private String status;
}
class TopMessageDeliveryReport:
id: str
request_id: str
channel: str
status: str
Anfragebeispiel (eingehende Nachricht)
Payload
Java
Python
{
"data": {
"id":"e3fc3b55-807f-41cf-93cf-cd365fef8515",
"channel":"WHATSAPP",
"account_id":"0d1f7f1c-27df-41bf-8bdc-5666608a4285",
"sender_details":
{
"sender_id":"476c7381-ca60-4e98-9657-a4af98ec032b",
"sender_name":"TopMessage",
"sender_code":"19134216816"},
"Number":"491511234567",
"text":"Received"
}
}
}
public class TopMessageIncomingMessage {
private String id;
private String channel;
private String accountId;
private SenderDetails senderDetails;
private String number;
private String referenceMessageId;
private String text;
private String mediaId;
private Location location;
public static class SenderDetails {
private String id;
private String name;
private String code;
}
public static class Location {
private String name;
private String address;
private String latitude;
private String longitude;
}
}
class SenderDetails:
id: str
name: str
code: str
class Location:
name: str
address: str
latitude: str
longitude: str
class TopMessageIncomingMessage:
id: str
channel: str
account_id: str
sender_details: SenderDetails
number: str
reference_message_id: str
text: str
media_id: str
location: Location