Jak wykorzystać API Sitaty do określenia ograniczeń w podróżowaniu dla podróżnych

Napisane przez Madeline Sharpe

2 października 2020 r.

Technologia

Wielu z was może tego nie wiedzieć, ale wczesne fundamenty Sitaty zostały zbudowane w celu wczesnego wykrywania chorób. W rzeczywistości, nasz założyciel ma wykład TedX z 2016 roku wszystko o dlaczego musimy ostrzegać podróżnych, aby zapobiec rozprzestrzenianiu się chorób. Nie powinno więc dziwić, że podnieśliśmy się na COVID-19, gdy został zgłoszony jako nietypowe skupisko przypadków zapalenia płuc na początku grudnia 2019 r. Do 2 stycznia 2020 r. nasz zespół ds. zdrowia ustalił, że powinniśmy wydać nasze pierwsze ostrzeżenie dla naszych podróżnych i partnerów biznesowych. To było na wiele dni przed nawet Światową Organizacją Zdrowia!

Podczas nieuchronnego opadania wirusa mieliśmy objawienie. Choroba rozprzestrzeniała się tak szybko, że było dla nas jasne, że globalna reakcja będzie w najlepszym wypadku chaotyczna. Każdy kraj wprowadziłby swój własny zestaw przepisów i zasad dotyczących kontroli rozprzestrzeniania się choroby. To nieuchronnie spowodowałoby spustoszenie w światowych podróżach i byłoby ogromnym źródłem zamieszania dla tych, którzy nadal chcieliby podróżować. Mieliśmy rację i postanowiliśmy coś z tym zrobić. Sitata była jedną z pierwszych firm na świecie, która stworzyła dedykowane API i usługę monitorowania zmian w ograniczeniach podróży i wymaganiach dotyczących wjazdu w wyniku COVID-19. Dzięki zaawansowanemu systemowi oprogramowania do wykrywania zdarzeń i dedykowanemu zespołowi analityków, mieliśmy już wszystkie odpowiednie narzędzia i procesy, aby to zrobić.

Od momentu uruchomienia tej nowej usługi wiele organizacji skorzystało z danych na rzecz swoich klientów, w tym Eddy Travels, Flight Centre i Etihad Airways; a kolejne zostaną ogłoszone wkrótce! Aby pomóc większej liczbie organizacji skupionych na podróżach skorzystać z tej oferty, poniżej opisaliśmy szczegółowo kilka przykładów, aby pomóc wyjaśnić, jak korzystać z API w różnych przypadkach użycia. Mam nadzieję, że te wyjaśnienia pomogą Ci uruchomić Twoje własne inicjatywy.

Wymagania wstępne

Bez wątpienia pierwsze pytania zadawane przez podróżnych to "czy mogę tam pojechać?" i "czy zostanę poddany kwarantannie", więc jest to dobre miejsce na rozpoczęcie. Stworzyliśmy zestaw danych Entry Requirements, aby odpowiedzieć na trudne pytania typu "tak/nie" dotyczące wjazdu do kraju lub regionu.

W momencie pisania tego tekstu, ten zestaw danych obejmował następujące 10 odrębnych kategorii:

  • Czy mieszkaniec może wjechać do kraju?
  • Czy cudzoziemiec może wjechać do kraju?
  • Czy dozwolony jest tranzyt przez kraj?
  • Czy wymagane jest badanie po przyjeździe (ognisko choroby)?
  • Czy dopuszcza się świadectwo badania (ognisko choroby)?
  • Czy po przyjeździe wymagana jest kwarantanna (ognisko choroby)? Czy wymagane jest szczepienie?
  • Wymagane ubezpieczenie?
  • Czy wymagane jest świadectwo badania?
  • Czy wymagany jest formularz zgłoszeniowy (zdrowotny lub inny)?

Każda kategoria może mieć jedną z następujących wartości:

  • Tak
  • Tak, z wyjątkami
  • Nie
  • Nie, z wyjątkami

Podczas gdy zdecydowana większość wartości to "tak" i "nie", sytuacja na ziemi nie zawsze jest tak prosta. Czasami istnieją naprawdę dziwne i szalone zasady, które różne rządy wprowadziły w życie, co powoduje konieczność stosowania typów wartości "z wyjątkami".

Wymóg wejścia jest zasadniczo zapisem dokumentującym zestaw zasad nałożonych przez podmiot na jeden lub wiele innych krajów lub regionów. W naszej architekturze danych podmiotem może być kraj, państwo, a nawet gmina. Obecnie Sitata obejmuje dane na poziomie kraju. Mamy jednak kilka rekordów stanowych/prowincjonalnych dla wybranych regionów, takich jak Stany Zjednoczone i inne.

Każdy rekord, który posiada wpis w polu origin_country_division_id lub origin_country_region_id to taki, który jest odpowiednio na poziomie państwa lub gminy. Jeśli chcieliby Państwo uzyskać bardziej szczegółowe dane, prosimy o kontakt i możemy porozmawiać o twoim przypadku użycia.

Proszę poświęcić trochę czasu na zapoznanie się ze strukturą danych Entry Requirement poprzez Zapoznaj się z naszymi dokumentami API tutaj.

Jednym z nieco mylących elementów struktury danych jest nasze użycie terminu "pochodzenie." Jest to mylące, ponieważ często programiści myślą o pochodzeniu jako o miejscu pochodzenia lub miejscu wyjścia. Jednak to, co mamy na myśli przez pochodzenie, jest w rzeczywistości pochodzeniem reguły nałożonej na innych. tj. kraj lub region, który stworzył ograniczenie.

Innym ważnym punktem, na który należy zwrócić uwagę jest to, jak działa nasza lista dotkniętych krajów. Jeśli affected_countries jest pusta, należy ją interpretować jako regułę globalną, tzn. wszystkie kraje są dotknięte.

Kilka przykładów

Jak można zauważyć w dokumentacji, istnieje wiele sposobów na pobieranie danych z API. Poniżej prześledzimy kilka najczęstszych przypadków użycia.

Jak pobrać wymagania między dwoma krajami?

Istnieje kilka sposobów na wykonanie tego typu żądania. Najprostszą wersją jest użycie miejsce przeznaczenia oraz wyjazd parametry. Parametry te przyjmują ISO 3166-1 alfa-2 kody jako dane wejściowe.

GET https://www.sitata.com/api/v2/entry_requirements?departure=DE&destination=IN

Odpowiedź będzie zawierać wszystkie wymagania (na poziomie kraju i państwa) niezbędne do zrozumienia dla podróżnego wyjeżdżającego z kraju wyjazdu i podróżującego do kraju docelowego.

Co zrobić, jeśli chcę uzyskać dane na poziomie państwa?

Sitata posiada dane na poziomie państwa dla niektórych regionów. Dowiesz się, że dany wpis jest dla danego stanu, jeśli origin_country_division pole ma wartość. Możesz również filtrować, aby pobrać tylko dane na poziomie stanu używając miejsce przeznaczenia_kraju_dział parametr. Oczekuje on ISO_3166-2 wartość. Na przykład US-TX dla Teksasu, Stanów Zjednoczonych.

GET https://www.sitata.com/api/v2/entry_requirements?departure=DE&destination_country_division=IN-AP

Zauważ, że prostsze może być zapytanie według kraju, a następnie filtrowanie według danych państwowych, aby sprawdzić, czy takie dane istnieją, i użyć ich, jeśli istnieją.

Jak pobrać wymagania pomiędzy dwoma lotniskami?

Podobnie jak w przypadku krajów, Sitata API może zwrócić wyniki pomiędzy dwoma lotniskami. Parametry odlot_lotnisko oraz port lotniczy przeznaczenia stosować albo ICAO lub IATA kody do filtrowania wyników. Odpowiedź będzie zawierała wszystkie ograniczenia (na poziomie kraju i państwa) niezbędne do zrozumienia dla podróżnego wyjeżdżającego z odpowiedniego kraju wyjazdu i podróżującego do kraju docelowego.

GET https://www.sitata.com/api/v2/entry_requirements?departure_airport=MUC&destination_airport=BOM

Odpowiedź będzie zawierać wszystkie ograniczenia (na poziomie kraju i państwa) niezbędne do zrozumienia dla podróżnego wyjeżdżającego z kraju wyjazdu i podróżującego do kraju docelowego.

A co jeśli mam tylko informacje o mieście?

Sitata nie zdecydowała się na zapytanie o nazwę miasta, ponieważ mogłoby to spowodować konflikty i zamieszanie. Zamiast tego, zdecydowaliśmy się na zapytanie do naszego API o współrzędne szerokości i długości geograficznej, co nie powoduje żadnych niejasności w naszym zestawie wyników. Parametry są następujące odlot_lat, odlot_lng, miejsce przeznaczenia_latoraz cel_lng.

GET https://www.sitata.com/api/v2/entry_requirements?departure_lat=48.13743&departure_lng=11.57549&destination_lat=19.0760&destination_lng=72.8777

Jeśli rozwiążesz swoje miasta na lokalizacje i zapytanie oparte na współrzędnych, nasz interfejs API odpowie ze wszystkimi ograniczeniami (poziom kraju i stanu) niezbędnymi do zrozumienia dla podróżnego wyruszającego z kraju wyjazdu i podróżującego do kraju docelowego.

Dane dodatkowe

Dla niektórych typów wymagań wstępnych mogą istnieć dodatkowe powiązane dane w polu typu metadanych o nazwie dodatki. To pole jest kluczem/wartością mapującą różne dodatkowe bity informacji dla danego wymagania.

Jaka jest liczba dni kwarantanny?

To wprowadzanie danych wchodzi w zakres wymogu dotyczącego wprowadzania danych typ 5. W tym wpisie. dodatki mapowanie będzie zawierało pole o nazwie dni kwarantanny który będzie zawierał liczbę całkowitą oznaczającą ilość dni nałożonej kwarantanny.

Jaka jest liczba godzin przed wejściem dla ujemnego testu kowadłowego?

To wprowadzanie danych wchodzi w zakres wymogu dotyczącego wprowadzania danych typ 8. W tym wpisie. dodatki mapowanie będzie zawierało pole o nazwie wejście_godzin który będzie zawierał liczbę całkowitą oznaczającą liczbę godzin, w których negatywny test kowida jest dozwolony przed wejściem.

Daj nam znać

Uważamy, że mamy bardzo solidny, który prawdopodobnie zajmie się wszystkimi Twoimi potrzebami, aby pomóc podróżnym zrozumieć, co prawdopodobnie napotkają po drodze. Jeśli masz konkretny przypadek użycia, którego nie adresujemy, proszę dać nam znać!

Czekaj... jest tego więcej!

Ten wpis jest częścią dwuczęściowej serii, która wyjaśnia jak współdziałać z Sitata API w celu uzyskania informacji o wymaganiach wjazdowych i ograniczeniach w podróżowaniu. Do tej pory mówiliśmy o wymogach wjazdowych, które określają twarde tak/nie, niezbędne do wjazdu do danego kraju lub regionu, ale nie mówiliśmy też o tym, co dzieje się wewnątrz kraju. Jedną rzeczą jest wiedzieć o wjeździe do kraju, inną jest zrozumienie, czy można się po nim poruszać, odwiedzać plaże lub czy obowiązuje tam obowiązkowa godzina policyjna.

Bądźcie na bieżąco z drugim postem, w którym zgłębimy nasz zestaw danych o ograniczeniach w podróżowaniu. Podpowiedź - jest prawie identyczna, więc zawsze możesz zajrzeć do naszego Dokumentacja API w międzyczasie.

Prosimy o śledzenie i polubienie nas:

Artykuły powiązane

Venezuela’s Political Crisis: A Nation in Turmoil

Venezuela’s Political Crisis: A Nation in Turmoil

Disclaimer: The views, thoughts, and opinions expressed in this article are solely those of the author and do not necessarily reflect the views, opinions, or positions of any other individual, organization, or entity. The Situation The political crisis in Venezuela...

The Hezbollah Pager Explosions

The Hezbollah Pager Explosions

The Incident  On 17 September, during the afternoon hours, hundreds of pagers used by Hezbollah militants exploded in Lebanon and Syria. At least nine people were killed and over 3,000 others were injured in Lebanon. According to Saberin News, seven people were...