So nutzen Sie die APIs von Sitata, um Reisebeschränkungen für Reisende zu ermitteln
Viele von Ihnen wissen das vielleicht nicht, aber die frühen Grundlagen von Sitata wurden für die Früherkennung von Krankheiten geschaffen. Unser Gründer hat sogar einen TedX-Vortrag aus dem Jahr 2016 darüber gehalten, warum wir Reisende warnen müssen, um die Ausbreitung von Krankheiten zu verhindern. Es sollte daher keine Überraschung sein, dass wir COVID-19 auf dem Schirm hatten, als es Anfang Dezember 2019 als ungewöhnliche Häufung von Lungenentzündungsfällen gemeldet wurde. Bis zum 2. Januar 2020 hatte unser Gesundheitsteam entschieden, dass wir unsere erste Warnung an unsere Reisenden und Geschäftspartner herausgeben sollten. Das war Tage vor der Weltgesundheitsorganisation!
Während der unvermeidlichen Folgen hatten wir eine Erkenntnis. Die Krankheit verbreitete sich so schnell, dass uns klar war, dass die globale Reaktion bestenfalls chaotisch sein würde. Jedes Land würde seinen eigenen Satz an Vorschriften und Regeln zur Eindämmung der Ausbreitung erlassen. Dies würde unweigerlich das globale Reisen durcheinanderbringen und eine enorme Quelle der Verwirrung für diejenigen sein, die dennoch reisen möchten. Wir behielten recht und machten uns daran, etwas dagegen zu tun. Sitata war eines der ersten Unternehmen weltweit, das einen dedizierten API- und Monitoring-Service für die sich ändernden Reisebeschränkungen und Einreisebestimmungen infolge von COVID-19 schuf. Mit einem fortschrittlichen Softwaresystem zur Ereigniserkennung und einem engagierten Team von Analysten hatten wir bereits alle richtigen Werkzeuge und Prozesse dafür parat.
Seit dem Start dieses neuen Dienstes haben verschiedene Organisationen die Daten zum Vorteil ihrer eigenen Kunden genutzt, darunter Eddy Travels, Flight Centre und Etihad Airways; und es werden bald weitere bekannt gegeben! Um mehr reiseorientierten Organisationen zu helfen, von diesem Angebot zu profitieren, haben wir unten detailliert eine Reihe von Beispielen aufgeschrieben, die erklären, wie die API für verschiedene Anwendungsfälle genutzt werden kann. Ich hoffe, diese Erklärungen helfen Ihnen, Ihre eigenen Initiativen auf den Weg zu bringen.
Einreisebestimmungen
Zweifellos sind die ersten Fragen eines Reisenden: “Darf ich dorthin?” und “Muss ich in Quarantäne?” – daher ist dies ein guter Ausgangspunkt. Wir haben den Datensatz “Einreisebestimmungen” erstellt, um die harten “Ja/Nein”-Fragen bezüglich der Einreise in ein Land oder eine Region zu beantworten.
Zum Zeitpunkt des Verfassens umfasste dieser Datensatz die folgenden 10 verschiedenen Kategorien:
- Darf ein Einwohner des Landes einreisen?
- Darf ein Ausländer in das Land einreisen?
- Ist Transit durch das Land erlaubt?
- Ist bei Ankunft ein Test erforderlich (Krankheitsausbruch)?
- Ist ein Testzertifikat erlaubt (Krankheitsausbruch)?
- Ist bei Ankunft eine Quarantäne erforderlich (Krankheitsausbruch)? Ist eine Impfung erforderlich?
- Ist eine Versicherung erforderlich?
- Ist ein Testzertifikat erforderlich?
- Ist ein Einreiseformular erforderlich? (Gesundheit oder anderes)
Jede Kategorie kann einen der folgenden Werte haben:
- Ja
- Ja, mit Ausnahmen
- Nein
- Nein, mit Ausnahmen
Während die überwiegende Mehrheit der Werte “ja” und “nein” ist, ist die Lage vor Ort nicht immer so eindeutig. Manchmal gibt es wirklich seltsame und verrückte Regeln, die verschiedene Regierungen erlassen haben, was die Werttypen “mit Ausnahmen” notwendig macht.
Eine Einreisebestimmung ist im Wesentlichen ein Datensatz, der einen Satz von Regeln dokumentiert, die von einem Akteur gegenüber einem oder mehreren anderen Ländern oder Regionen auferlegt werden. Der Akteur könnte in unserer Datenarchitektur ein Land, ein Bundesstaat oder sogar eine Gemeinde sein. Im Großen und Ganzen deckt Sitata derzeit Daten auf Länderebene ab. Wir haben jedoch auch einige Datensätze auf Bundesstaats-/Provinzebene für ausgewählte Regionen wie die Vereinigten Staaten und andere.
Jeder Datensatz, der einen Eintrag im Feld **origin_country_division_id** oder **origin_country_region_id** hat, ist entweder auf Bundesstaats- oder Gemeindeebene angesiedelt. Wenn Sie detailliertere Daten wünschen, kontaktieren Sie uns bitte und wir können über Ihren Anwendungsfall sprechen.
Bitte nehmen Sie sich etwas Zeit, um sich mit der Datenstruktur der Einreisebestimmungen vertraut zu machen, indem Sie hier einen Blick in unsere API-Dokumentation werfen.
Ein etwas verwirrender Teil der Datenstruktur ist unsere Verwendung des Begriffs “origin” (Ursprung). Das ist verwirrend, weil Entwickler oft an den Ursprungs- oder Abflugsort denken. Was wir jedoch mit Ursprung meinen, ist tatsächlich der Ursprung der Regel, die anderen auferlegt wird, d.h. das Land oder die Region, die die Beschränkung erlassen hat.
Ein weiterer wichtiger Punkt ist, wie unsere Liste der betroffenen Länder funktioniert. Wenn
affected_countriesleer ist, sollte dies als globale Regel interpretiert werden, d.h. alle Länder sind betroffen.
Einige Beispiele
Wie Sie der Dokumentation vielleicht entnommen haben, gibt es mehrere Möglichkeiten, Daten von der API abzurufen. Im Folgenden gehen wir einige der häufigeren Anwendungsfälle durch.
Wie rufe ich die Anforderungen zwischen zwei Ländern ab?
Es gibt ein paar Möglichkeiten, eine solche Anfrage zu stellen. Die einfachste Version ist die Verwendung der Parameter **destination** und **departure**. Diese Parameter akzeptieren ISO 3166-1 alpha-2-Codes als Eingabe.
GET https://www.sitata.com/api/v2/entry_requirements?departure=DE&destination=IN
Die Antwort enthält alle Anforderungen (auf Landes- und Bundesstaatenebene), die für den Reisenden, der aus dem Abflugsland abreist und in das Zielland reist, zu verstehen sind.
Was, wenn ich Daten auf Bundesstaatenebene möchte?
Sitata hat für bestimmte Regionen Daten auf Bundesstaatenebene. Sie erkennen, dass ein bestimmter Eintrag für einen Bundesstaat gilt, wenn das Feld origin_country_division einen Wert hat. Sie können auch filtern, um nur Daten auf Bundesstaatenebene abzurufen, indem Sie den Parameter **destination_country_division** verwenden. Er erwartet einen ISO_3166-2-Wert. Zum Beispiel US-TX für Texas, USA.
GET https://www.sitata.com/api/v2/entry_requirements?departure=DE&destination_country_division=IN-AP
Beachten Sie, dass es einfacher sein könnte, nach Land abzufragen und dann nach Bundesstaatsdaten zu filtern, um zu sehen, ob solche Daten existieren, und sie zu verwenden, falls sie existieren.
Wie rufe ich die Anforderungen zwischen zwei Flughäfen ab?
Genau wie bei Ländern kann die Sitata API Ergebnisse zwischen zwei Flughäfen zurückgeben. Die Parameter departure_airport und destination_airport verwenden entweder ICAO- oder IATA-Codes, um die Ergebnisse zu filtern. Die Antwort enthält alle Beschränkungen (auf Landes- und Bundesstaatenebene), die für den Reisenden, der aus dem entsprechenden Abflugsland abreist und in das Zielland reist, zu verstehen sind.
GET https://www.sitata.com/api/v2/entry_requirements?departure_airport=MUC&destination_airport=BOM
Die Antwort enthält alle Beschränkungen (auf Landes- und Bundesstaatenebene), die für den Reisenden, der aus dem Abflugsland abreist und in das Zielland reist, zu verstehen sind.
Was, wenn ich nur Stadtinformationen habe?
Sitata hat sich entschieden, Abfragen nach einem bestimmten Stadtnamen nicht zu unterstützen, da dies zu Konflikten und Verwirrung führen könnte. Stattdessen haben wir uns dafür entschieden, unsere API über Breiten- und Längengradkoordinaten abfragen zu lassen, was keine Mehrdeutigkeit in unserem Ergebnissatz erzeugt. Die Parameter sind departure_lat, departure_lng, destination_lat und destination_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
Wenn Sie Ihre Städte in Standorte auflösen und basierend auf Koordinaten abfragen, antwortet unsere API mit allen Beschränkungen (auf Landes- und Bundesstaatenebene), die für den Reisenden, der aus dem Abflugsland abreist und in das Zielland reist, zu verstehen sind.
Zusätzliche Daten
Für einige Arten von Einreisebestimmungen können zusätzliche zugehörige Daten in einem Metadatenfeld namens extras vorhanden sein. Dieses Feld ist eine Schlüssel/Wert-Zuordnung verschiedener zusätzlicher Informationsbits für eine bestimmte Anforderung.
Wie viele Tage Quarantäne sind vorgeschrieben?
Dieser Dateneintrag fällt unter die Einreisebestimmung Typ 5. In diesem Eintrag enthält die **extras**-Zuordnung ein Feld namens quarantine_days, das eine ganze Zahl für die Anzahl der auferlegten Quarantänetage enthält.
Wie viele Stunden vor der Einreise muss ein negativer Covid-Test vorliegen?
Dieser Dateneintrag fällt unter die Einreisebestimmung Typ 8. In diesem Eintrag enthält die **extras**-Zuordnung ein Feld namens entry_hours, das eine ganze Zahl für die Anzahl der Stunden enthält, die ein negativer Covid-Test vor der Einreise gültig sein darf.
Lassen Sie es uns wissen
Wir glauben, dass wir eine sehr robuste Lösung haben, die wahrscheinlich alle Ihre Bedürfnisse abdeckt, um Ihren Reisenden zu helfen zu verstehen, was ihnen unterwegs wahrscheinlich begegnet. Wenn Sie einen bestimmten Anwendungsfall haben, den wir nicht abdecken, teilen Sie es uns bitte mit!
Warten Sie… es gibt noch mehr!
Dieser Eintrag ist Teil einer zweiteiligen Serie, die erklärt, wie man mit der Sitata API für Einreisebestimmungen und Reisebeschränkungsinformationen interagiert. Bisher haben wir über Einreisebestimmungen gesprochen, die die harten Ja/Nein-Anforderungen für die Einreise in ein Land oder eine Region umreißen, aber wir haben noch nicht darüber gesprochen, was innerhalb des Landes passiert. Es ist eine Sache, über die Einreise in ein Land Bescheid zu wissen, eine andere zu verstehen, ob man sich im Land bewegen, die Strände besuchen kann oder ob eine Ausgangssperre verhängt ist.
Bleiben Sie dran für den zweiten Beitrag, der tief in unseren Datensatz zu Reisebeschränkungen eintauchen wird. Hinweis – er ist nahezu identisch, sodass Sie in der Zwischenzeit immer einen Blick in unsere API-Dokumentation werfen können.