GTM API
Lese-API für Kunden. Zugriff auf aktive Events, Event-Details und Länder mit Event-Statistiken.
/v1/gtm/...
Event API
CRUD-API für API-Clients. Erstellen, lesen, aktualisieren und löschen Sie eigene Events.
/v1/events/...
Authentifizierung
Alle API-Anfragen erfordern einen Bearer Token im Authorization-Header.
Tokens werden über Laravel Sanctum bereitgestellt.
Authorization: Bearer YOUR_API_TOKEN
Hinweis: Bewahren Sie Ihren API-Token sicher auf und geben Sie ihn nicht an Dritte weiter. Bei Verdacht auf Missbrauch kann der Token jederzeit widerrufen werden.
Token-Berechtigungen
Jeder API-Token wird mit spezifischen Berechtigungen (Abilities) ausgestellt. Für die Event API wird die Berechtigung
events:write benötigt.
| Berechtigung | Beschreibung | Erforderlich für |
|---|---|---|
events:write |
Lese- und Schreibzugriff auf Events | Event API (alle Endpunkte) |
Base URL
https://api.global-travel-monitor.de/v1
Alle Endpunkte sind relativ zu dieser Base URL angegeben. Antworten werden im JSON-Format zurückgegeben.
GTM API - Endpunkte
Lese-API für Kunden zum Abrufen von Events und Länderdaten.
/gtm/events
Aktive Events abrufen
Gibt eine paginierte Liste aller aktiven Events zurück. Unterstützt Filter nach Priorität, Kontinent, Eventtyp und Volltextsuche.
Query-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
page |
integer | Seitennummer (Standard: 1) |
per_page |
integer | Ergebnisse pro Seite (Standard: 15) |
priority |
string | Filter nach Priorität (high, medium, low, info) |
continent |
string | Filter nach Kontinent (EU, AS, AF, NA, SA, OC) |
event_type |
integer | Filter nach Eventtyp-ID |
search |
string | Volltextsuche in Event-Titeln und Beschreibungen |
Beispiel-Anfrage
curl -X GET "https://api.global-travel-monitor.de/v1/gtm/events?priority=high&per_page=10" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
Beispiel-Antwort
{
"data": [
{
"id": 1234,
"title": "Erdbeben in der Türkei",
"description": "Ein Erdbeben der Stärke 5.2 ...",
"priority": "high",
"event_type": "Umweltereignisse",
"countries": ["TR"],
"starts_at": "2025-01-15T08:00:00Z",
"ends_at": "2025-01-20T23:59:00Z",
"created_at": "2025-01-15T08:30:00Z"
}
],
"meta": {
"current_page": 1,
"last_page": 5,
"per_page": 10,
"total": 48
}
}
/gtm/events/{id}
Event-Details abrufen
Gibt die vollständigen Details eines einzelnen Events zurück, inklusive betroffener Länder und Eventtypen.
Beispiel-Anfrage
curl -X GET "https://api.global-travel-monitor.de/v1/gtm/events/1234" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
/gtm/countries
Länder mit Event-Anzahl
Gibt eine Liste aller Länder zurück, für die aktive Events vorliegen, inklusive der jeweiligen Event-Anzahl.
Beispiel-Anfrage
curl -X GET "https://api.global-travel-monitor.de/v1/gtm/countries" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
Event API - Endpunkte
CRUD-API für API-Clients zum Verwalten eigener Events.
Berechtigungen für Event-Erstellung
Das Erstellen, Aktualisieren und Löschen von Events erfordert eine explizite Freischaltung.
Neben einem gültigen Token mit events:write-Berechtigung
muss Ihr API-Client zusätzlich für Schreiboperationen freigeschaltet sein.
active haben
events:write
Review-Prozess
Neu erstellte Events durchlaufen standardmäßig einen Review-Prozess und werden erst nach Freigabe veröffentlicht
(pending_review).
Für ausgewählte API-Clients kann eine automatische Freigabe aktiviert werden,
sodass Events sofort sichtbar sind.
/events
Eigene Events auflisten
Gibt eine paginierte Liste Ihrer eigenen Events zurück.
/events
Neues Event erstellen
Erstellt ein neues Event. Erforderliche Felder werden im Request-Body als JSON übergeben.
Beispiel-Anfrage
curl -X POST "https://api.global-travel-monitor.de/v1/events" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"title": "Streik am Flughafen Frankfurt",
"description": "Warnstreik des Bodenpersonals ...",
"priority": "medium",
"event_type_id": 9,
"country_codes": ["DE"],
"starts_at": "2025-03-01T06:00:00Z",
"ends_at": "2025-03-01T18:00:00Z"
}'
/events/{uuid}
Event abrufen
Gibt die Details eines einzelnen Events anhand seiner UUID zurück.
/events/{uuid}
Event aktualisieren
Aktualisiert ein bestehendes Event. Es können einzelne oder alle Felder aktualisiert werden. Erfordert Schreibfreischaltung. Sie können nur Ihre eigenen Events aktualisieren.
/events/{uuid}
Event löschen
Löscht ein Event anhand seiner UUID. Diese Aktion kann nicht rückgängig gemacht werden. Erfordert Schreibfreischaltung. Sie können nur Ihre eigenen Events löschen.
Referenzdaten
Endpunkte für Stammdaten, die für die Event-Erstellung und -Filterung benötigt werden. Erfordern API-Client-Authentifizierung.
/event-types
Verfügbare Eventtypen
Gibt alle verfügbaren Eventtypen zurück (z.B. Reiseverkehr, Sicherheit, Umweltereignisse).
Beispiel-Anfrage
curl -X GET "https://api.global-travel-monitor.de/v1/event-types" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
/countries
Verfügbare Länder
Gibt alle verfügbaren Länder mit ISO-Code und Name zurück.
Beispiel-Anfrage
curl -X GET "https://api.global-travel-monitor.de/v1/countries" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
HTTP-Statuscodes
| Code | Bedeutung |
|---|---|
200 |
Erfolgreiche Anfrage |
201 |
Ressource erfolgreich erstellt |
401 |
Nicht authentifiziert - Token fehlt oder ungültig |
403 |
Keine Berechtigung für diese Ressource |
404 |
Ressource nicht gefunden |
422 |
Validierungsfehler - ungültige Eingabedaten |
429 |
Rate-Limit überschritten - zu viele Anfragen |
Rate Limiting
Alle API-Endpunkte unterliegen einem Rate-Limit, um die Stabilität des Dienstes zu gewährleisten.
Bei Überschreitung erhalten Sie einen 429-Statuscode.
GTM API
Standard: 60 Anfragen / Minute
Das Limit wird pro Kunde angewendet und kann je nach Tarif individuell angepasst werden.
Event API
Standard: 60 Anfragen / Minute
Das Limit wird pro API-Client angewendet und kann individuell konfiguriert werden.
Bei Bedarf an höheren Rate-Limits wenden Sie sich bitte an support@passolution.de.