ParkFlow.io is a channel manager for airport car parks, connecting multiple booking sources (OTAs, brokers, websites, aggregators) with parking operators. ParkFlow primarily works in a pull-based model, periodically fetching bookings from integrated external systems.
ParkFlow.io is a centralized platform (channel manager) that connects airport parking operators with various sales channels such as online travel agencies (OTAs), aggregators, brokers, and B2C sites. It acts as a middleware system, simplifying booking management for car parks by synchronizing reservations, updates, and cancellations from multiple sources into a unified interface. ParkFlow primarily relies on a pull-based integration model, where it periodically fetches booking data from partner APIs.
This guide is for external service providers (e.g. OTAs, brokers, marketplaces) that want to integrate with ParkFlow and supply their bookings through an API.
ParkFlow runs scheduled jobs that pull new or updated bookings from each partner’s API. These jobs typically execute:
- Every 2–10 minutes in production
- Every 15–30 minutes in test mode
This helps ensure the parking operator has up-to-date information about upcoming arrivals and service requirements.
- Fetching new confirmed reservations
- Detecting updated flight or customer details
- Capturing cancellations
- Handling last-minute changes near check-in time
If a car park owner has multiple offers (e.g., different car parks or products) in the external system, ParkFlow will establish a separate integration for each offer to ensure accurate mapping, availability, and pricing synchronization.
To integrate smoothly, external partners must expose a public REST API that supports the following:
ParkFlow supports multiple schemes:
- Bearer Token: Authorization: Bearer <token>
- Basic Auth: base64-encoded user:password
- API Key: Passed in header (preferred) or query parameter
Note: Credentials are securely stored and managed within ParkFlow’s platform.
ParkFlow requires only a single mandatory endpoint:
GET /bookings – This endpoint must return a list of all bookings that have been created, updated, or cancelled since a specified point in time. ParkFlow uses this to synchronize data reliably from the external system.
Booking object should have the following informations:
- Arrival and Departure dates should be in local timezone
- Created, updated dates should be in UTC-0
- Price, pre-paid amount and currency
- Status of the reservation
- Number of vehicles and license plates
- Reference number
Optional endpoints:
- Availability Locking
Allows ParkFlow to inform the external system when a specific parking product is no longer available on certain dates.
Example:
POST /parkings/{id}/locks
Body: { "date": "2025-07-15", "reason": "full" }
- Booking Status Notification
Allows ParkFlow to notify the external system about booking cancellations or no-shows initiated by the car park.
Example:
POST /bookings/{id}/cancel
Body: { "reason": "no_show" }
- Pricing Updates
Enables ParkFlow to send seasonal or base pricing data for specific parking offers.
Example:
POST /parkings/{id}/pricing
Body: { "type": "seasonal", "valid_from": "...", "valid_until": "...", "prices": [6500, ... }
- Ensure accurate and timely responses
- Avoid caching outdated data
- Allow ParkFlow to configure polling frequency
- Support pagination for large booking volumes
- Provide a sandbox/testing environment with test data
- All endpoints must be HTTPS
- Use secure authentication methods (prefer token-based)
- Limit access based on IP whitelisting if possible
- Avoid storing sensitive customer data beyond what is necessary