Reģistrējiet tikai vajadzīgos notikumus
Izveidojiet galapunktu arPOST /v3/webhooks. Abonējiet tikai dokumentētus notikumus, kas vada jūsu integrāciju. Šis piemērs izmanto transfer.state_changed.
data.id kā WEBHOOK_ID. Atveriet portālu, ko atgriež GET /v3/webhooks/portal, iegūstiet šī galapunkta parakstīšanas noslēpumu un glabājiet to atsevišķi no API atslēgas noslēpumu pārvaldniekā.
Pārbaudiet pirms parsēšanas
Swipelux piegādā jaunas webhook integrācijas caur Svix. Pārbaudiet neapstrādāto pieprasījuma pamattekstu ar sava galapunkta parakstīšanas noslēpumu un šīm galvenēm:svix-idsvix-timestampsvix-signature
Saglabājiet, apstipriniet, pēc tam apstrādājiet
Uzstādiet unikalitātes ierobežojumu aploksnesid. Saglabājiet pārbaudīto aploksni, ātri atgriezt 2xx, pēc tam apstrādājiet to asinhroni.
Ja notikuma ID jau pastāv, apstipriniet piegādi, neatkārtojot pabeigtos blakusefektus. Atsāciet neizpildītos vai neveiksmīgos lokālos darbus caur savu atkārtotu mēģinājumu rindu. Neizmantojiet aploksnes lauku attempt kā deduplikācijas atslēgu vai transporta atkārtojumu skaitītāju.
Atkārtoti ielādējiet pašreizējo stāvokli
Webhook secība nav autoritatīva resursu vēsture. Izmantojietresource.type un resource.id, lai atrastu objektu, pēc tam pirms sistēmas atjaunināšanas iegūstiet tā pašreizējo stāvokli.
Pārveduma notikumam izsauciet GET /v3/transfers/{transferId}:
Atjaunojiet piegādes
IzmantojietGET /v3/webhooks/portal, lai atvērtu piegāžu žurnālus, atkārtoti mēģinātu neveiksmīgas piegādes vai sāktu manuālu atkārtojumu.
Katram atkārtojumam jāizet cauri tai pašai parakstu pārbaudei un noturīgai iesūtnei. Lai atgūtu pēc dīkstāves, atkārtojiet ietekmēto logu un atkārtoti ielādējiet katru minēto resursu. Pabeigtie notikumu ID paliek bez darbībām; nepabeigtie ieraksti tiek atsākti asinhroni.
Tālāk pārbaudiet dublētās un nesakārtotās piegādes smilšu kastē, pēc tam pabeidziet Doties tiešraidē kontrolsarakstu.