Webhooks
SäkerhetNär du ställer in webhook-slutpunkter kan du säkra din applikation mot oönskade förfrågningar genom att konfigurera webhook secret. Varje begäransignatur skapas med hjälp av hashalgoritmen HMAC_SHA256. Algoritmen signerar webhook-nyttolasten med hemligheten du har tillhandahållit. Den resulterande hashen ingår i begärans signaturhuvud i följande format:
X-TopMessage-Signature: {TOPMESSAGE_HMAC_SIGNATURE}
Hantera dina webhook-slutpunkter
här
Ta emot leveransrapport
Leveransrapporten för utgående meddelanden skickas till din webhook-slutpunkt och indikerar om varje meddelande levererades framgångsrikt eller misslyckades.
Namn | Slag | Beskrivning |
---|---|---|
data | object | Innehåller nedanstående information om meddelandet som skickas. |
DataObject
Namn | Slag | Beskrivning |
---|---|---|
id | string | Unik identifierare för ditt meddelande. |
status | string | Initial status för ditt meddelande. Möjliga värden: PENDING , FAILED , DELIVERED , SEEN |
channel | string | Kommunikationskanalen skickar ditt budskap igenom. Möjliga värden: SMS och WHATSAPP Standard: SMS |
Ta emot inkommande meddelande
Inkommande meddelanden som tas emot på ditt SMS- eller WhatsApp-telefonnummer vidarebefordras i realtid till den angivna webhook-slutpunkten.
Namn | Slag | Beskrivning |
---|---|---|
data | object | Innehåller nedanstående information om meddelandet som skickas. |
DataObject
Namn | Slag | Beskrivning |
---|---|---|
account_id | string | Unik identifierare för ditt konto. |
from | string | Avsändarens mobilnummer i internationellt format. |
sender_code | string | Ditt TopMessage-sms eller WhatsApp-telefonnummer. |
text | string | Ditt textmeddelande ska skickas till mottagaren/mottagarna. |
channel | string | Kommunikationskanalen skickar ditt budskap igenom. Möjliga värden: SMS och WHATSAPP Standard: SMS |
to | string | Ditt TopMessage-avsändarnamn för SMS eller WhatsApp. Du kan se tillgängliga namn eller skapa ett nytt på avsändarsidan.Gå till avsändarsidan. |
request_id | string | Unik identifierare för begäran som genererats av dig för att spåra förfrågningar. Standard: NULL |
POST
https://{yourDomain}/your/webhook/path
X-Topmessage-Signature: {TOPMESSAGE_HMAC_SIGNATURE}
Content-Type: application/json
Begär prov (leveransrapport)
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
Begär prov (inkommande meddelande)
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