Dokumentacja API zewnętrznego kodu kuponu

Ten artykuł został przetłumaczony maszynowo.

Ten interfejs API służy do przekazywania Slevomat.cz kodu bonu po opłaceniu zamówienia przez klienta. Zazwyczaj Slevomat.cz generuje swój własny kod kuponu, ale dzięki temu API, nasz partner biznesowy może zostać poinformowany o zamówieniu i wygenerować swój własny kod kuponu dla klienta.

Wszystkie żądania są wykonywane przez protokół HTTPS (co wymaga, aby serwer partnera biznesowego obsługiwał protokół HTTPS i miał ważny certyfikat), a wszystkie dane muszą być sformatowane jako JSON.

Changelog

01. 03. 2017 – dodano sekcję obsługi nieprawidłowego żądania

10. 02. 2017 – wersja wstępna

Włączenie API

Wszystkie żądania są wykonywane przez aplikację Slevomat.cz wysyłającą żądanie do serwera partnera. Żądanie będzie zawierało nagłówek X-RequestToken HTTP z tajnym ciągiem znaków. Ten ciąg musi być sprawdzony przez serwer partnera w celu zagwarantowania bezpieczeństwa. Ten tajny ciąg jest znany tylko przez Slevomat.cz i partnera.

Aby włączyć API partner musi poprosić Slevomat.cz i podać adres URL, gdzie będzie API, na przykład:

https://example.com/slevomat-external-voucher-code/generate

Kiedy Slevomat.cz włącza API dla partnera i daje mu wartość X-RequestToken, jest to tylko w trybie testowym, co oznacza, że żadne prawdziwe zamówienia nie będą wykonywać żądania, aby uzyskać niestandardowy kod kuponu. Ale umożliwia partnerowi opracowanie i przetestowanie API na swoim serwerze z dostarczoną wartością X-RequestToken.

Po opracowaniu i przetestowaniu API na serwerze partnera, Slevomat.cz przełączy tryb na prawdziwe zamówienia. Zamówienia dla ofert, które rozpoczęły sprzedaż po przełączeniu, będą żąd ać API partnera dla niestandardowych kodów kuponów.

Generowanie kodu vouchera

Kiedy zamówienie na ofertę zostanie opłacone, Slevomat.cz wyśle żądanie POST do serwera partnera w celu wygenerowania kodu bonu i przekaże partnerowi kilka informacji o zamówieniu. Żądanie to zostanie wysłane indywidualnie dla każdej sprzedanej jednostki.

Żądanie zawiera wymagany prefiks kodu vouchera. Wygenerowany kod vouchera musi zaczynać się od tego prefiksu.

Ciało żądania będzie wyglądać tak:

{ "uuid": "91987a73-095c-4b94-bd38-f6ffd4ab86a7", "deal": { "product_id": 123, "product_name": "Aktivní dovolená: 4 až 6 dní s all inclusive v Rakousku. 2 děti do 8,9 let zdarma!", "variant_id": 456, "variant_name": "1 osoba | 4 dny (3 noci) | Období So 13. 5. – So 24. 6. 2017, Ne 27. 8. – Ne 5. 11. 2017" }, "customer": { "email": "cu******@ex*****.com" }, "voucherCodePrefix": "LIN", "repeatReason": 1 }

Serwer powinien odpowiedzieć kodem statusu HTTP 200, a ciało odpowiedzi z wygenerowanym kodem kuponu musi wyglądać tak:

{ "voucherCode": "LIN1234567890" }

Serwer musi odpowiedzieć w ciągu 10 sekund, w przeciwnym razie żądanie zostanie oznaczone jako nieudane. Wygenerowany kod bonu musi zaczynać się od podanego prefiksu i musi być unikalny. Istnieją inne powody, dla których możemy nie zaakceptować wygenerowanego kodu kuponu.

Kiedy żądanie nie powiedzie się, jest powtarzane z powodem w polu repeatReason aż do sukcesu. Pole to będzie zawierało jedną z następujących wartości:

Repeat reason (Powtarzaj powód) Opis
Pierwsza próba.
Połączenie z serwerem nie powiodło się. Może to oznaczać nieważny certyfikat HTTPS lub awarię sieci.
Serwer nie odpowiedział na czas.
Serwer odpowiedział kodem statusu HTTP innym niż-200. 
Serwer odpowiedział HTTP 200, ale ciało odpowiedzi nie zawierało JSON lub JSON nie zawierał klucza voucherCode.
Wygenerowany kod kuponu nie zawierał wymaganego prefiksu.
Wygenerowany kod kuponu zawierał nieprawidłowe znaki. Jedynymi poprawnymi znakami są: [a-zA-Z0-9-]+.
Wygenerowany kod vouchera nie był unikalny.

Ciało żądania będzie zawsze zawierało ten sam identyfikator uuid co żądanie previous wygenerowania kodu bonu dla tego samego zamówienia klienta.

Obsługa nieprawidłowego żądania

Gdy pojawi się żądanie, które nie spełnia wymogów bezpieczeństwa, czyli zawiera nieprawidłowy adres X-RequestToken, serwer musi odpowiedzieć kodem HTTP 403 Forbidden.

Testowanie implementacji API

Zaloguj się jako nasz partner, aby zobaczyć swój status API oraz przetestować i zweryfikować wdrożenie API. 

Powrót do listy artykułów

Súvisiace články


Nahoru