To enable Skyscanner to ingest your daily booking data for package products, please adhere to the following data specification and transfer methods. This will help us ensure smooth data processing and accurate performance tracking.
Content:
- Delivery Methods (full details below)
- sFTP (Hosted by you)
- API Endpoint (Hosted by you)
- Automated Email Delivery
- Third-party File Hosting
2. Security Requirement
3. Required Data Schema
Delivery Methods
To ensure robust and automated ingestion of package booking data, Skyscanner supports 4 delivery mechanisms. Below is a breakdown of each method, including responsibilities, access expectations, and operational flow.
-
sFTP (Hosted by you)
Overview:
If you can host the booking files on your own sFTP server, Skyscanner will proactively connect and retrieve the files daily. This method is preferred for its reliability and centralized control on your side.
Requirements from Partner:
• Host an sFTP server on your domain.
• Booking records include all mandatory schema fields (see schema table above).
• Provide Skyscanner with:
o Host address & Port number (e.g., sftp.partnerdomain.com)
o Authentication details (e.g., username/password or SSH key)
o Directory path where the file will be dropped (e.g., /daily_exports/)
o File naming convention, mandatory including the date of the boking (e.g.,
booking_YYYYMMDD.csv)
• Ensure the file is available on the server daily by an agreed cut-off time (e.g., 00:00
UTC).
• Maintain 7–14 days of retention in case of re-pulls.Skyscanner Responsibilities:
• Automate the daily pull from your sFTP endpoint.
• Handle retries and failure alerts.
• Monitor file presence and validate schema on ingestion.
-
API Endpoint (Hosted by you)
Overview:
If you have an existing API to expose package booking data, Skyscanner can proactively
fetch the data based on either:
• A fixed daily window (e.g., fetch “bookings created on YYYYMMDD”); or
• A custom time range, passed via parameters (e.g., from_date / to_date).
Requirements from Partner:
• Provide:
o Base URL of your API
o Authentication method (API key, OAuth token, etc.)
o Supported query parameters (e.g., start_date, end_date)
o API rate limits, if any
o Expected response format: JSON or CSV
o Example request & response payloads
• Guarantee that:
o Booking records include all mandatory schema fields (see schema table above).
o Data for each day is complete and available by an agreed time.Skyscanner Responsibilities:
• Automate the API calls at scheduled intervals (typically once per day).
• Handle pagination, retries, and validation.
• Monitor ingestion success and notify on errors.
-
Automated Email Delivery
Overview:
You may choose to email your daily booking file as an attachment (CSV or JSON) to our
dedicated inbox:
DA_Feeds@skyscanner.net
Requirements from Partner:
• Schedule an automated email delivery with the file attached.
• Use the following subject format:
[PartnerName] Daily Package Booking File - [YYYY-MM-DD]
• Ensure attachment:
o Is correctly encoded (UTF-8)
o Matches the required schema and format
o Is delivered daily by an agreed cut-off time
Skyscanner Responsibilities:
• Monitor the inbox and automatically extract attachments.
• Validate data format and schema.
• Confirm file receipt and ingestion status (if required).
-
Third-party File Hosting
Overview:
If you store booking files in a cloud-based object storage system (e.g., Amazon S3, Google
Cloud Storage, or Azure Blob Storage), Skyscanner can access the data through a secure, read-
access endpoint.
Requirements from Partner:
• Provide a public or secure pre-signed URL, or
bucket access credentials (e.g., IAM role, access keys, or service accounts)
• File must follow naming conventions and be available by the daily cut-off
• Optional: Signed URL with controlled expiry if security is a concern
Supported Services:
• Amazon S3
• Google Cloud Storage
• Azure Blob Storage
Skyscanner Responsibilities:
• Schedule automated access and downloads
• Handle file verification and ingestion
• Monitor and alert for missing or malformed files
🔐 Security Requirement – IP Whitelisting
For all delivery methods where Skyscanner initiates access (e.g., sFTP Pull, API Pull, or access
to third-party file hosting), Skyscanner’s outbound IP address(es) must be whitelisted by the
partner to allow secure and successful connectivity.• Skyscanner will provide the fixed public IP address(es) range upon request.
• Partners are responsible for updating firewall or access rules to allow inbound traffic
from these IPs.
• This applies to:
o sFTP servers hosted by the partner
o APIs requiring IP-based access control
o Object storage platforms like Amazon S3, Google Cloud Storage, or Azure Blob
(if bucket-level access policies are enforced)
For delivery via automated email, this requirement does not apply.
Field | Required? | Example Value | Note |
Booking Id | Yes | 10625596 | The PNR code or booking IDthat uniquely identifies each booking. |
Redirect Id | Yes | 2KrtIocTStOxePSv5spTne | The raw redirect_id value provided by Skyscanner at the time of redirection. |
Booking Status | Yes |
Confirmed Cancelled |
The status of the booking |
Total Price Local |
Yes | 647.90 | The monetary value associated with the booking. |
Total Price Currency Code |
Yes | GBP | The ISO currency code in which the ‘Total Price Local’ is denominated. |
Board Basis | Optional |
One of the following: 1.Bed and Breakfast 2.Room Only 3.Half Board 4. Full Board 5. All Inclusive 6. Other |
meals and drinks included in the price of your hotel |
Dep Country Code |
Optional | GB | The country from which the flight firstly departs (if a flight is included). Must follow ISO 3166-2 (2 digits country code) |
Arr Country Code |
Optional | IT | The country where the flight firstly arrives (if a flight is included). Must follow ISO 3166-2 (2 digits country code) |
Adults | Optional | 2 | The number of adult travelers associated with the booking. |
Non Adults | Optional | 0 | The number of non-adult travelers associated with the booking. |
Flight Carrier Outbound | Optional | FR | The outbound flight carrier, if a flight is included. |
Flight Carrier Inbound | Optional | BA | The inbound flight carrier, if a flight is included. |
Hotel Name | Optional | Hotel Villa Edera | The name of the hotel associated with the booking |
Check In Date | Yes | 2025-05-01 | Specifies the check-in date in YYYY-MM-DD format. |
Check Out Date | Yes | 2025-05-03 | Specifies the check-out date in YYYY-MM-DD format. |
Hotel Star Rating | Optional | 3 | The rating of the hotel |
Partner Hotel Id | Yes | 115414599 | A unique identifier for the hotel within your system or platform. |
Market | Required | GB | The country where the order being sold on your end. Must follow ISO 3166-2 (2 digits country code) |
Device | Required |
One the following: 1.Web 2.Mobile |
The device of this order being placed or lands on your side. The “Mobile” include mobile web and the App platform. |