For at modtage beskeder om dine forsendelser, ordrer og kladder ved hjælp af webhooks, er det vigtigt, at det slutpunkt, der angives i opsætningen, håndterer beskederne til det korrekt.
Der er en række krav til det slutpunkt, der opsættes. Hvis disse ikke er opfyldt, vil det enten ikke være muligt at oprette et webhook eller læse de beskeder, der bliver sendt til det. Kravene er beskrevet i de følgende punkter:
1. Slutpunktet anvender HTTPS
Det er påkrævet, at det slutpunkt der opsættes, anvender et gyldigt SSL/TLS certifikat for at sikre integriteten af den data, der sendes til endpointet.
2. Slutpunktet kan dekryptere og behandle JWT data
Dataen, der sendes til slutpunktet, vil bestå af et JSON objekt med en nøgle "data". Værdien for denne nøgle vil være en enkrypteret version af dataen for enten en forsendelse, ordre eller kladde på din Shipmondo-konto, som den står efter den handling, der udløste beskeden, er foretaget.
Når man opretter et webhook i Shipmondo, skal man angive en nøgle. Denne nøgle anvendes i Shipmondo til at kryptere den data, der skal sendes, mens den på slutpunktet anvendes til at dekryptere dataen.
Vi anvender JWT til at kryptere dataen med HS256 algoritmen. Det er derfor vigtigt at slutpunktet, der defineres, anvender den samme algoritme og nøgle til at dekryptere værdien for "data" nøglen.
3. Slutpunktet returnerer svar med status 200 indenfor 3 sekunder
Når vi sender en besked til slutpunktet, er det påkrævet, at der bliver returneret et svar med status kode 200 indenfor 3 sekunder. Hvis dette ikke er tilfældet, vil forbindelsen udløbe, og beskeden vil ikke blive leveret.
Det er derfor anbefalet, at databehandling begrænses så vidt muligt på det slutpunkt, som beskeden sendes til for at holde responstiden lav.