KDE PIM/KItinerary/Supported Providers: Difference between revisions
(99 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
Project details: https://phabricator.kde.org/project/profile/280/ | Project details: https://phabricator.kde.org/project/profile/280/ | ||
Note that the below list is inherently incomplete, a provider not being listed does not automatically imply it doesn't work, as it might still be covered by generic extractors, or by an existing custom extractor for the same backend system. | |||
== Data Formats == | == Data Formats == | ||
Line 13: | Line 15: | ||
* iCal: ical calendar files | * iCal: ical calendar files | ||
* PkPass: Apple Wallet pass files | * PkPass: Apple Wallet pass files | ||
* Barcode: barcodes containing encoded trip information - see also [[KDE _PIM/KItinerary/Barcode_Formats|Barcode Formats]] | |||
== Extractor Types == | == Extractor Types == | ||
Line 23: | Line 26: | ||
== Airlines == | == Airlines == | ||
{| class="wikitable" | {| class="wikitable" | ||
! Airline !! Booking Confirmation Format !! Booking Confirmation Extractor !! Boarding Pass Format !! Boarding Pass Extractor !! Notes | ! Airline (IATA)!! Booking Confirmation Format !! Booking Confirmation Extractor !! Boarding Pass Format !! Boarding Pass Extractor !! Notes | ||
|- | |||
| Aegean (A3) || ? || ? || HTML, PDF || Generic || | |||
|- | |- | ||
| Aer Lingus (EI) || HTML || Custom || PDF || | | Aer Lingus (EI) || HTML || Custom || PDF || Generic || | ||
|- | |- | ||
| Air Baltic (BT) || ? || ? || PkPass, PDF || Generic | | Air Baltic (BT) || ? || ? || PkPass, PDF || Generic || | ||
|- | |- | ||
| Air Berlin (AB) || ? || ? || PkPass, PDF, JSON-LD || Generic || JSON-LD contains wrong timezone data, airline bankrupt | | Air Berlin (AB) || ? || ? || PkPass, PDF, JSON-LD || Generic || JSON-LD contains wrong timezone data, airline bankrupt | ||
|- | |||
| Air Canada (AC) || ? || ? || PDF || Generic || | |||
|- | |- | ||
| Air France (AF) || ? || ? || Mircrodata, PDF || Generic || | | Air France (AF) || ? || ? || Mircrodata, PDF || Generic || | ||
|- | |- | ||
| American Airlines (AA) || ? || ? || PDF || | | American Airlines (AA) || ? || ? || PDF || Generic || | ||
|- | |- | ||
| Austrian Airlines (OS) || Microdata || Generic || JSON-LD, PkPass || Generic || | | Austrian Airlines (OS) || Microdata || Generic || JSON-LD, PkPass || Generic || | ||
Line 39: | Line 46: | ||
| Asiana Airlines (OZ) || PDF || TODO || ? || ? || | | Asiana Airlines (OZ) || PDF || TODO || ? || ? || | ||
|- | |- | ||
| BRA (TF) || HTML || TODO || HTML, PDF || Generic | | BRA (TF) || HTML || TODO || HTML, PDF || Generic || | ||
|- | |- | ||
| British Airways (BA) || HTML, Text || TODO || PDF || Generic || | | British Airways (BA) || HTML, Text || TODO || PDF || Generic || | ||
Line 45: | Line 52: | ||
| Brussels Airlines (SN) || HTML, PDF || Custom || PDF, PkPass || Generic || | | Brussels Airlines (SN) || HTML, PDF || Custom || PDF, PkPass || Generic || | ||
|- | |- | ||
| Czech Airlines (OK) || HTML || TODO || ? || ? || | | Croatia Airlines (OU) || ? || ? || PDF || Generic || | ||
|- | |||
| Czech Airlines (OK) || HTML || TODO || PDF || Generic || | |||
|- | |||
| Delta || HTML || TODO || ? || ? || | |||
|- | |||
| EasyJet || HTML || Custom || PDF || Custom || | |||
|- | |- | ||
| | | Emirates (EK) || HTML, PDF || TODO || ? || ? || needs more samples | ||
|- | |- | ||
| Eurowings (EW) || HTML, Text || Custom || PDF, PkPass, JSON-LD, Micordata || Generic (JSON-LD, PDF), Custom (PkPass) || JSON-LD and Microdata are sometimes both present and provide different data | | Eurowings (EW) || HTML, Text || Custom || PDF, PkPass, JSON-LD, Micordata || Generic (JSON-LD, PDF), Custom (PkPass) || JSON-LD and Microdata are sometimes both present and provide different data | ||
|- | |- | ||
| Finnair (AY) || HTML || TODO || PDF || Generic || | | Finnair (AY) || HTML || TODO || PDF || Generic || | ||
|- | |||
| Flybe (BE) || HTML || TODO || ? || ? || | |||
|- | |- | ||
| Iberia (IB) || HTML, PDF || Custom (some variants) || Microdata, PDF || Generic || | | Iberia (IB) || HTML, PDF || Custom (some variants) || Microdata, PDF || Generic || | ||
|- | |- | ||
| | | IndiGo (6E) || HTML || Custom || PDF || Custom || | ||
|- | |- | ||
| | | KLM (KL) || HTML, PDF || Custom (some formats) || Microdata, PDF || Generic || | ||
|- | |- | ||
| | | Lufthansa (LH) || Microdata || Generic || Microdata, PkPass, PDF, iCal || Generic (Microdata, PDF), Custom (PkPass), NP4 (iCal) || Microdata boarding passes contain download link rather than IATA BCBP token | ||
|- | |- | ||
| Quatar Airways (QR) || Text, HTML, PDF || TODO || | | Norwegian Air Shuttle (DY) || HTML, PDF || Custom (PDF) || ? || ? || | ||
|- | |||
| Quatar Airways (QR) || Text, HTML, PDF || TODO || PDF || Generic || needs more samples | |||
|- | |||
| Ryanair (FR) || HTML, Microdata || Generic || PDF || Generic || | |||
|- | |- | ||
| SAS (SK) || PDF, HTML, Text || Custom (some variants) || PDF || Generic/Custom (depending on variant) || | | SAS (SK) || PDF, HTML, Text || Custom (some variants) || PDF || Generic/Custom (depending on variant) || | ||
|- | |- | ||
| Swiss (LX) || HTML, iCal || Custom || PDF, PkPass || Generic | | Swiss (LX) || HTML, iCal, JSON-LD || Custom, Generic || PDF, PkPass || Generic || | ||
|- | |||
| TAP || HTML || TODO || PDF || Generic || | |||
|- | |||
| United (UA) || HTML || TODO || PDF || Generic || | |||
|- | |- | ||
| | | Volotea (V7) || JSON-LD || Generic || ? || ? || | ||
|- | |- | ||
| | | Vueling (VY) || HTML || Custom || PDF || Generic || JSON-LD has been observed in some emails too | ||
|- | |- | ||
| | | Wizz Air (W6) || HTML || TODO || ? || ? || | ||
|- | |- | ||
| WOW air (WW) || HTML, PDF || TODO || PkPass || Generic || | | WOW air (WW) || HTML, PDF || TODO || PkPass || Generic || | ||
|} | |} | ||
Useful references: | |||
* https://en.wikipedia.org/wiki/List_of_airline_codes | |||
== Train and Long-distance Bus Operators == | == Train and Long-distance Bus Operators == | ||
Line 83: | Line 109: | ||
Ticket token types: | Ticket token types: | ||
* UIC 918.3 with | * UIC 918.3 with RCT2 payload: the EU standard for international tickets | ||
* UIC 918.3 with vendor payload | * UIC 918.3 with vendor payload | ||
* Vendor-specific proprietary formats encoding (some) trip data | * Vendor-specific proprietary formats encoding (some) trip data | ||
Line 92: | Line 118: | ||
{| class="wikitable" | {| class="wikitable" | ||
! Operator !! Type !! Area !! Ticket Format !! Ticket Extractor !! Ticket Token Format !! Ticket Token Supported !! Notes | ! Operator !! Type !! Area !! Ticket Format !! Ticket Extractor !! Ticket Token Format !! Ticket Token Supported !! Notes | ||
|- | |||
| Aircoach.ie || Bus || IE/UK || HTML || Custom || N/A || N/A || | |||
|- | |- | ||
| ALSA || Bus || ES? || PDF || TODO || N/A || N/A || | | ALSA || Bus || ES? || PDF || TODO || N/A || N/A || | ||
Line 97: | Line 125: | ||
| Czech Railways || Train || EU || ? || Custom || ? || ? || | | Czech Railways || Train || EU || ? || Custom || ? || ? || | ||
|- | |- | ||
| Deutsche Bahn || Train || EU || PDF || Custom || Domestic: UIC 918.3 with vendor-specific payload<br/>International: UIC918.3 with | | Deutsche Bahn || Train || EU || PDF || Custom || Domestic: UIC 918.3 with vendor-specific payload<br/>International: UIC918.3 with RCT2 payload || Yes || | ||
|- | |- | ||
| Flixbus || Bus || EU? || HTML, PDF || | | DSB || Train || DK/EU || PDF || Generic || UIC 918.3 with RCT2 payload || untested || | ||
|- | |||
| Flibco || Bus || EU || HTML || TODO || QR with number || unknown || | |||
|- | |||
| Flixbus || Bus || EU? || JSON-LD, HTML, PDF || Custom || unknown || unknown || | |||
|- | |||
| Italo || Train || IT || JSON-LD || Generic || ? || N/A || | |||
|- | |||
| Koleje Małopolskie || Train || PL || PDF || Custom || QR with proprietary JSON payload || untested || | |||
|- | |||
| Koleje Mazowiekie || Train || PL || PDF || Custom || QR [[KDE_PIM/KItinerary/Koleje_Mazowiekie]] || untested || | |||
|- | |- | ||
| Korail || Train || KR || HTML || Custom || N/A || no || validation requires print-out or vendor app | | Korail || Train || KR || HTML || Custom || N/A || no || validation requires print-out or vendor app | ||
|- | |||
| MÁV || Train || HU/EU || PDF || Custom/Generic || PDF417/proprietary (domestic, [[KDE_PIM/KItinerary/MAV_Barcode]]), UIC 918.3/RCT2 (international) || ? || | |||
|- | |- | ||
| megabus.com || Bus || UK? || HTML, Text, PDF || TODO || ? || ? || | | megabus.com || Bus || UK? || HTML, Text, PDF || TODO || ? || ? || | ||
|- | |- | ||
| NS || Train || EU || PDF || | | National Express || Bus || UK? || HTML || Custom || ? || ? || | ||
|- | |||
| NS || Train || EU || PDF || Generic || UIC 918.3 with RCT2 payload (international) || ? || | |||
|- | |||
| ÖBB || Train || EU || PDF || Generic || UIC 918.3 with RCT2 payload || Yes || | |||
|- | |||
| Ouigo France || Train || FR/EU? || HTML (confirmation, reminder), PDF (ticket) || custom (confirmation) || high entropy base64 blob || unknown || workflow consists of 3 emails | |||
|- | |- | ||
| | | Ouigo Spain || Train || ES || PDF || Custom || see Renfe ([[KDE_PIM/KItinerary/Renfe_Barcodes]]) || untested || | ||
|- | |- | ||
| Pasažieru vilciens || Train || LV? || HTML, PDF || TODO || Proprietary without trip data || unknown || | | Pasažieru vilciens || Train || LV? || HTML, PDF || TODO || Proprietary without trip data || unknown || | ||
|- | |||
| PKP || Train || PL, EU || PDF || TODO || UIC 918.3-like, [[KDE_PIM/KItinerary/PKP_Barcode]] || ? || | |||
|- | |- | ||
| RegioJet || Train, Bus || EU? || ? || Custom || ? || ? || | | RegioJet || Train, Bus || EU? || ? || Custom || ? || ? || | ||
|- | |- | ||
| SBB || Train || EU? || PDF || TODO || UIC 918.3 with | | Renfe || Train || EU || PDF || Custom || Limited trip data (see [[KDE_PIM/KItinerary/Renfe_Barcodes]]) || untested || | ||
|- | |||
| SBB || Train || EU? || Html/Text, PDF || TODO (Html), Generic (PDF) || UIC 918.3 with RCT2 payload (PDF), QR with proprietary format (Html) (see [[KDE_PIM/KItinerary/SBB_Barcode]]) || untested || | |||
|- | |||
| SNCB || Train || BE/EU? || PDF || Custom || Code128 || unknown || | |||
|- | |||
| SNCF || Train || EU || PDF, HTML, Barcode || Custom || Proprietary with trip data (see [[KDE_PIM/KItinerary/SNCF_Barcodes]]) || Yes || | |||
|- | |||
| Stansted Express || Train || UK || PDF, PkPass || Custom (PkPass), TODO (PDF) || QR/proprietary || untested || | |||
|- | |||
| Thalys || Train || BE/DE/FR/NL || Html || Custom || ERA SSB v3 (see [[KDE_PIM/KItinerary/Thalys_Barcode]]) || Yes || | |||
|- | |||
| Trenitalia || Train || IT || PDF || Custom || ERA SSB v2 (see [[KDE_PIM/KItinerary/Trenitalia_Barcode]]) || Yes || | |||
|- | |- | ||
| | | VGN || Train/Bus || DE::BY || PDF, image || Custom || UIC 918.3 with non-RCT2 U_TLAY payload || untested || | ||
|- | |- | ||
| VIA Rail || Train || CA || HTML, PDF || | | VIA Rail || Train || CA || HTML, PDF || Custom || Proprietary with trip data || unknown || | ||
|- | |- | ||
| vr.fi || Train || FI? || HTML, PDF || | | vr.fi || Train || FI? || HTML, PDF || Custom || ERA SSB v1 (see [[KDE_PIM/KItinerary/vr.fi_Barcode]]) || unknown || | ||
|- | |- | ||
| Westbahn || Train || AT? || PDF || TODO || unknown || unknown || | | Westbahn || Train || AT? || PDF || TODO || unknown || unknown || | ||
|- | |||
| ZSSK || Train || SK, EU || PDF, image || RCT2 (international), custom (domestic) || see [[KDE_PIM/KItinerary/ZSSK_Barcode]] || unknown || | |||
|} | |} | ||
Useful reference: https://en.wikipedia.org/wiki/Rail_transport_by_country | |||
== Lodging == | == Lodging == | ||
Line 128: | Line 192: | ||
{| class="wikitable" | {| class="wikitable" | ||
! Provider !! Booking Confirmation Format !! Extractor !! Notes | ! Provider !! Booking Confirmation Format !! Extractor !! Notes | ||
|- | |||
| Accor Hotels || HTML || Custom || | |||
|- | |||
| Agoda || HTML || Custom || | |||
|- | |||
| Airbnb || JSON-LD || Generic || | |||
|- | |- | ||
| A&O Hostels || Text, HTML || Custom || | | A&O Hostels || Text, HTML || Custom || | ||
|- | |- | ||
| Booking.com || JSON-LD, HTML || Generic, Custom || varies between JSON-LD and HTML with so far unknown pattern | | availpro.com || HTML || Custom || Online booking software used by non-chain hotels | ||
|- | |||
| Booking.com || JSON-LD, HTML, Text || Generic, Custom || varies between JSON-LD and HTML with so far unknown pattern | |||
|- | |||
| Hotels.com || JSON-LD || Custom || custom extractor to augment generic result with correct checkin/out times | |||
|- | |- | ||
| Millenium Copthorne || JSON-LD || Generic || | | Millenium Copthorne || JSON-LD || Generic || | ||
|- | |||
| NH Group || HTML || Custom || | |||
|- | |||
| simplebooking.it || HTML || Custom || Online booking software used by non-chain hotels | |||
|- | |||
| Vrbo || HTML || TODO || | |||
|} | |} | ||
== Travel Agencies == | == Travel Agencies / Backend Systems == | ||
{| class="wikitable" | {| class="wikitable" | ||
! Agency !! Supported Types !! Itinerary Format !! Extractor !! Notes | ! Agency !! Supported Types !! Itinerary Format !! Extractor !! Notes | ||
|- | |- | ||
| Amadeus || Flight || Text, HTML || Custom (some variants) || | | ACP Rail || Train || HTML || Custom || | ||
|- | |||
| Amadeus || Flight || Text, HTML, PDF, iCal || Custom (some variants) || used by several airlines and agencies too | |||
|- | |- | ||
| American Express || Flight, Hotel || PDF || TODO || | | American Express || Flight, Hotel || PDF || TODO || | ||
|- | |||
| BCD Travel || Flight, Train, Rental Car || PDF, iCal || via NP4 || uses NP4 extractor for iCal | |||
|- | |||
| Bravofly || Flight, Hotel || HTML || TODO || | |||
|- | |||
| Cheapoair || Flight || JSON-LD || Generic || | |||
|- | |||
| Cleartrip || Flight || JSON-LD || Generic || Also sends non-standard PkPass files | |||
|- | |- | ||
| Expedia || Flight || HTML || TODO || | | Expedia || Flight || HTML || TODO || | ||
|- | |- | ||
| FCM/Travellink || Flight || Text, HTML || Custom || | | FCM/Travellink || Flight || Text, HTML || Custom || | ||
|- | |||
| NP4 GmbH || Flight, Rental Car || iCal || Custom || backend system used by e.g. BCD Travel and Lufthansa | |||
|- | |- | ||
| Trainline.eu || Train || JSON-LD || Generic || | | Trainline.eu || Train || JSON-LD || Generic || | ||
|- | |||
| Travelport Galileo || Flight || Text || Custom || backend system | |||
|- | |- | ||
| TUI || Flight, Hotel || PDF || TODO || | | TUI || Flight, Hotel || PDF || TODO || | ||
|- | |||
| via.com || Flight || JSON-LD, PDF (booking); HTML (cancellation) || Generic || | |||
|- | |||
|} | |} | ||
Useful references: | |||
* https://en.wikipedia.org/wiki/Computer_reservation_system | |||
== Restaurants == | == Restaurants == | ||
Line 159: | Line 259: | ||
! Restaurant/Reservation Service !! Format !! Extractor !! Notes | ! Restaurant/Reservation Service !! Format !! Extractor !! Notes | ||
|- | |- | ||
| dinnerbooking. | | dinnerbooking.com || HTML, iCal || Custom || | ||
|- | |- | ||
| easytablebooking.com || ? || ? || | | easytablebooking.com || ? || ? || | ||
|- | |||
| lafourchette.com || Microdata || Generic || | |||
|- | |- | ||
| opentable.de || JSON-LD || Generic || | | opentable.de || JSON-LD || Generic || | ||
Line 186: | Line 288: | ||
{| class="wikitable" | {| class="wikitable" | ||
! Booking Service !! Ticket Format !! Ticket Extractor !! Ticket Token Format !! Ticket Token Supported !! Notes | ! Booking Service !! Ticket Format !! Ticket Extractor !! Ticket Token Format !! Ticket Token Supported !! Notes | ||
|- | |||
| Chaos Communication Congress || PDF || Custom || QR with alpha-numeric id || yes || includes a secondary UIC 918.3 ticket token for local public transport (supported too) | |||
|- | |||
| Cineplex || HTML || TODO || QR with numeric id || unknown || PkPass file available via download link | |||
|- | |||
| Clorian || HTML, PkPass || Generic (PkPass) || QR with numeric id || unknown || HTML email with PkPass download link; covers some prominent sites like Sagrada Familia | |||
|- | |- | ||
| Deutsche Message AG || PDF, PkPass || Generic (PkPass) || unknown || unknown || | | Deutsche Message AG || PDF, PkPass || Generic (PkPass) || unknown || unknown || | ||
|- | |||
| Easy Airport Parking || HTML, PkPass || Custom (PkPass) || numeric token as QR code || untested || parking reservation, currently modeled as Event | |||
|- | |- | ||
| Eventbrite || JSON-LD, PDF || Generic || numeric token in QR or 1d barcode || unknown || ticket token only in PDF and not yet extracted | | Eventbrite || JSON-LD, PDF || Generic || numeric token in QR or 1d barcode || unknown || ticket token only in PDF and not yet extracted | ||
|- | |||
| Indico || HTML || Custom || N/A || N/A || | |||
|- | |||
| Kinoheld || JSON-LD || Generic || reservation number as Code128 barcode || unknown || ticket token not set in JSON-LD | |||
|- | |- | ||
| Meetup || JSON-LD || Generic || N/A || N/A || | | Meetup || JSON-LD || Generic || N/A || N/A || | ||
Line 198: | Line 312: | ||
|- | |- | ||
| Messe Nürnberg || PkPass || Generic || weird || unknown || | | Messe Nürnberg || PkPass || Generic || weird || unknown || | ||
|- | |||
| Ticketino || PkPass || Generic || numeric token || unknown || | |||
|- | |||
| Tierpark Berlin || PDF || Custom || numeric token || unknown || | |||
|} | |} |
Latest revision as of 09:44, 23 September 2023
KItinerary: Supported Providers
More test data is always welcome and helpful, also for providers already listed as supported below. There's always some corner case we can improve :)
Project details: https://phabricator.kde.org/project/profile/280/
Note that the below list is inherently incomplete, a provider not being listed does not automatically imply it doesn't work, as it might still be covered by generic extractors, or by an existing custom extractor for the same backend system.
Data Formats
- JSON-LD: HTML content containing structured data in JSON-LD format
- Microdata: HTML content containing structured data in XML format
- PDF: PDF files
- HTML: HTML content without structured data
- Text: plain text content
- iCal: ical calendar files
- PkPass: Apple Wallet pass files
- Barcode: barcodes containing encoded trip information - see also Barcode Formats
Extractor Types
- Generic - structured data: built-in extraction of JSON-LD and Microdata content
- Generic - IATA BCBP: built-in extraction of IATA BarCoded Boarding Passes (BCBP)
- Generic - PkPass: built-in extraction of Apple Wallet boarding passes and event tickets
- Custom: custom extractor script
Airlines
Airline (IATA) | Booking Confirmation Format | Booking Confirmation Extractor | Boarding Pass Format | Boarding Pass Extractor | Notes |
---|---|---|---|---|---|
Aegean (A3) | ? | ? | HTML, PDF | Generic | |
Aer Lingus (EI) | HTML | Custom | Generic | ||
Air Baltic (BT) | ? | ? | PkPass, PDF | Generic | |
Air Berlin (AB) | ? | ? | PkPass, PDF, JSON-LD | Generic | JSON-LD contains wrong timezone data, airline bankrupt |
Air Canada (AC) | ? | ? | Generic | ||
Air France (AF) | ? | ? | Mircrodata, PDF | Generic | |
American Airlines (AA) | ? | ? | Generic | ||
Austrian Airlines (OS) | Microdata | Generic | JSON-LD, PkPass | Generic | |
Asiana Airlines (OZ) | TODO | ? | ? | ||
BRA (TF) | HTML | TODO | HTML, PDF | Generic | |
British Airways (BA) | HTML, Text | TODO | Generic | ||
Brussels Airlines (SN) | HTML, PDF | Custom | PDF, PkPass | Generic | |
Croatia Airlines (OU) | ? | ? | Generic | ||
Czech Airlines (OK) | HTML | TODO | Generic | ||
Delta | HTML | TODO | ? | ? | |
EasyJet | HTML | Custom | Custom | ||
Emirates (EK) | HTML, PDF | TODO | ? | ? | needs more samples |
Eurowings (EW) | HTML, Text | Custom | PDF, PkPass, JSON-LD, Micordata | Generic (JSON-LD, PDF), Custom (PkPass) | JSON-LD and Microdata are sometimes both present and provide different data |
Finnair (AY) | HTML | TODO | Generic | ||
Flybe (BE) | HTML | TODO | ? | ? | |
Iberia (IB) | HTML, PDF | Custom (some variants) | Microdata, PDF | Generic | |
IndiGo (6E) | HTML | Custom | Custom | ||
KLM (KL) | HTML, PDF | Custom (some formats) | Microdata, PDF | Generic | |
Lufthansa (LH) | Microdata | Generic | Microdata, PkPass, PDF, iCal | Generic (Microdata, PDF), Custom (PkPass), NP4 (iCal) | Microdata boarding passes contain download link rather than IATA BCBP token |
Norwegian Air Shuttle (DY) | HTML, PDF | Custom (PDF) | ? | ? | |
Quatar Airways (QR) | Text, HTML, PDF | TODO | Generic | needs more samples | |
Ryanair (FR) | HTML, Microdata | Generic | Generic | ||
SAS (SK) | PDF, HTML, Text | Custom (some variants) | Generic/Custom (depending on variant) | ||
Swiss (LX) | HTML, iCal, JSON-LD | Custom, Generic | PDF, PkPass | Generic | |
TAP | HTML | TODO | Generic | ||
United (UA) | HTML | TODO | Generic | ||
Volotea (V7) | JSON-LD | Generic | ? | ? | |
Vueling (VY) | HTML | Custom | Generic | JSON-LD has been observed in some emails too | |
Wizz Air (W6) | HTML | TODO | ? | ? | |
WOW air (WW) | HTML, PDF | TODO | PkPass | Generic |
Useful references:
Train and Long-distance Bus Operators
Mixing train and bus operators here as some of them operate both types.
Operating area: If an operator is only active in a single country, that allows to make assumptions e.g. about the timezone of the destinations.
Ticket token types:
- UIC 918.3 with RCT2 payload: the EU standard for international tickets
- UIC 918.3 with vendor payload
- Vendor-specific proprietary formats encoding (some) trip data
- Vendor-specific proprietary formats not encoding trip data
Ticket token supported: means you can use KDE Itinerary to validate your ticket on automatic scanners or during manual ticket inspections.
Operator | Type | Area | Ticket Format | Ticket Extractor | Ticket Token Format | Ticket Token Supported | Notes |
---|---|---|---|---|---|---|---|
Aircoach.ie | Bus | IE/UK | HTML | Custom | N/A | N/A | |
ALSA | Bus | ES? | TODO | N/A | N/A | ||
Czech Railways | Train | EU | ? | Custom | ? | ? | |
Deutsche Bahn | Train | EU | Custom | Domestic: UIC 918.3 with vendor-specific payload International: UIC918.3 with RCT2 payload |
Yes | ||
DSB | Train | DK/EU | Generic | UIC 918.3 with RCT2 payload | untested | ||
Flibco | Bus | EU | HTML | TODO | QR with number | unknown | |
Flixbus | Bus | EU? | JSON-LD, HTML, PDF | Custom | unknown | unknown | |
Italo | Train | IT | JSON-LD | Generic | ? | N/A | |
Koleje Małopolskie | Train | PL | Custom | QR with proprietary JSON payload | untested | ||
Koleje Mazowiekie | Train | PL | Custom | QR KDE_PIM/KItinerary/Koleje_Mazowiekie | untested | ||
Korail | Train | KR | HTML | Custom | N/A | no | validation requires print-out or vendor app |
MÁV | Train | HU/EU | Custom/Generic | PDF417/proprietary (domestic, KDE_PIM/KItinerary/MAV_Barcode), UIC 918.3/RCT2 (international) | ? | ||
megabus.com | Bus | UK? | HTML, Text, PDF | TODO | ? | ? | |
National Express | Bus | UK? | HTML | Custom | ? | ? | |
NS | Train | EU | Generic | UIC 918.3 with RCT2 payload (international) | ? | ||
ÖBB | Train | EU | Generic | UIC 918.3 with RCT2 payload | Yes | ||
Ouigo France | Train | FR/EU? | HTML (confirmation, reminder), PDF (ticket) | custom (confirmation) | high entropy base64 blob | unknown | workflow consists of 3 emails |
Ouigo Spain | Train | ES | Custom | see Renfe (KDE_PIM/KItinerary/Renfe_Barcodes) | untested | ||
Pasažieru vilciens | Train | LV? | HTML, PDF | TODO | Proprietary without trip data | unknown | |
PKP | Train | PL, EU | TODO | UIC 918.3-like, KDE_PIM/KItinerary/PKP_Barcode | ? | ||
RegioJet | Train, Bus | EU? | ? | Custom | ? | ? | |
Renfe | Train | EU | Custom | Limited trip data (see KDE_PIM/KItinerary/Renfe_Barcodes) | untested | ||
SBB | Train | EU? | Html/Text, PDF | TODO (Html), Generic (PDF) | UIC 918.3 with RCT2 payload (PDF), QR with proprietary format (Html) (see KDE_PIM/KItinerary/SBB_Barcode) | untested | |
SNCB | Train | BE/EU? | Custom | Code128 | unknown | ||
SNCF | Train | EU | PDF, HTML, Barcode | Custom | Proprietary with trip data (see KDE_PIM/KItinerary/SNCF_Barcodes) | Yes | |
Stansted Express | Train | UK | PDF, PkPass | Custom (PkPass), TODO (PDF) | QR/proprietary | untested | |
Thalys | Train | BE/DE/FR/NL | Html | Custom | ERA SSB v3 (see KDE_PIM/KItinerary/Thalys_Barcode) | Yes | |
Trenitalia | Train | IT | Custom | ERA SSB v2 (see KDE_PIM/KItinerary/Trenitalia_Barcode) | Yes | ||
VGN | Train/Bus | DE::BY | PDF, image | Custom | UIC 918.3 with non-RCT2 U_TLAY payload | untested | |
VIA Rail | Train | CA | HTML, PDF | Custom | Proprietary with trip data | unknown | |
vr.fi | Train | FI? | HTML, PDF | Custom | ERA SSB v1 (see KDE_PIM/KItinerary/vr.fi_Barcode) | unknown | |
Westbahn | Train | AT? | TODO | unknown | unknown | ||
ZSSK | Train | SK, EU | PDF, image | RCT2 (international), custom (domestic) | see KDE_PIM/KItinerary/ZSSK_Barcode | unknown |
Useful reference: https://en.wikipedia.org/wiki/Rail_transport_by_country
Lodging
Provider | Booking Confirmation Format | Extractor | Notes |
---|---|---|---|
Accor Hotels | HTML | Custom | |
Agoda | HTML | Custom | |
Airbnb | JSON-LD | Generic | |
A&O Hostels | Text, HTML | Custom | |
availpro.com | HTML | Custom | Online booking software used by non-chain hotels |
Booking.com | JSON-LD, HTML, Text | Generic, Custom | varies between JSON-LD and HTML with so far unknown pattern |
Hotels.com | JSON-LD | Custom | custom extractor to augment generic result with correct checkin/out times |
Millenium Copthorne | JSON-LD | Generic | |
NH Group | HTML | Custom | |
simplebooking.it | HTML | Custom | Online booking software used by non-chain hotels |
Vrbo | HTML | TODO |
Travel Agencies / Backend Systems
Agency | Supported Types | Itinerary Format | Extractor | Notes |
---|---|---|---|---|
ACP Rail | Train | HTML | Custom | |
Amadeus | Flight | Text, HTML, PDF, iCal | Custom (some variants) | used by several airlines and agencies too |
American Express | Flight, Hotel | TODO | ||
BCD Travel | Flight, Train, Rental Car | PDF, iCal | via NP4 | uses NP4 extractor for iCal |
Bravofly | Flight, Hotel | HTML | TODO | |
Cheapoair | Flight | JSON-LD | Generic | |
Cleartrip | Flight | JSON-LD | Generic | Also sends non-standard PkPass files |
Expedia | Flight | HTML | TODO | |
FCM/Travellink | Flight | Text, HTML | Custom | |
NP4 GmbH | Flight, Rental Car | iCal | Custom | backend system used by e.g. BCD Travel and Lufthansa |
Trainline.eu | Train | JSON-LD | Generic | |
Travelport Galileo | Flight | Text | Custom | backend system |
TUI | Flight, Hotel | TODO | ||
via.com | Flight | JSON-LD, PDF (booking); HTML (cancellation) | Generic |
Useful references:
Restaurants
Restaurant/Reservation Service | Format | Extractor | Notes |
---|---|---|---|
dinnerbooking.com | HTML, iCal | Custom | |
easytablebooking.com | ? | ? | |
lafourchette.com | Microdata | Generic | |
opentable.de | JSON-LD | Generic | |
Quandoo | HTML, Text | TODO | |
zenchef.fr | Microdata | Generic |
Rental Car Reservations
Rental Car Provider | Format | Extractor | Notes |
---|---|---|---|
Avis | HTML | TODO | |
Europcar | JSON-LD | Generic | |
Hertz | Text, HTML | Custom |
Event Booking
Booking Service | Ticket Format | Ticket Extractor | Ticket Token Format | Ticket Token Supported | Notes |
---|---|---|---|---|---|
Chaos Communication Congress | Custom | QR with alpha-numeric id | yes | includes a secondary UIC 918.3 ticket token for local public transport (supported too) | |
Cineplex | HTML | TODO | QR with numeric id | unknown | PkPass file available via download link |
Clorian | HTML, PkPass | Generic (PkPass) | QR with numeric id | unknown | HTML email with PkPass download link; covers some prominent sites like Sagrada Familia |
Deutsche Message AG | PDF, PkPass | Generic (PkPass) | unknown | unknown | |
Easy Airport Parking | HTML, PkPass | Custom (PkPass) | numeric token as QR code | untested | parking reservation, currently modeled as Event |
Eventbrite | JSON-LD, PDF | Generic | numeric token in QR or 1d barcode | unknown | ticket token only in PDF and not yet extracted |
Indico | HTML | Custom | N/A | N/A | |
Kinoheld | JSON-LD | Generic | reservation number as Code128 barcode | unknown | ticket token not set in JSON-LD |
Meetup | JSON-LD | Generic | N/A | N/A | |
ntry.at | PkPass, HTML, PDF | Generic | alphanumeric token in Aztec code | untested | |
messe.at | HTML, PDF | TODO | unknown | unknown | |
Messe Nürnberg | PkPass | Generic | weird | unknown | |
Ticketino | PkPass | Generic | numeric token | unknown | |
Tierpark Berlin | Custom | numeric token | unknown |