Deep links

A deep link is a normal HTTPS URL that opens directly in a mobile app instead of the browser. On iOS these are universal links, and on Android they are app links; this page refers to both as deep links. ioki Platform supports deep links that open the ioki Passenger App at a specific screen, and prefilled links that open a booking in ioki Web Booking.

For how the underlying links and association files are set up, see Universal links / app links.

Because a deep link is a standard HTTPS URL, another app or website can open it with the platform’s usual URL-opening mechanism. If the app is installed, it opens at the target screen; if it is not, the link falls back to the configured website.

If a value is missing or can’t be read, the app skips it and opens without that prefilled data.

Each provider has its own deep-link subdomain, <subdomain>.link.ioki.app, which is created and looked up on the Universal links / app links page. Replace <subdomain> in the examples below with that provider’s subdomain.

TargetURLParameters
Launch apphttps://<subdomain>.link.ioki.app—
Create ridehttps://<subdomain>.link.ioki.app/create_rideSee Create-ride parameters
Payment recoveryhttps://<subdomain>.link.ioki.app/payment_recovery—
Promo codeshttps://<subdomain>.link.ioki.app/promocodesOptional: ?code=ABC

Create-ride parameters

The create-ride link can be assembled in several ways from the following parameters:

  • Path. /create_ride.
  • Product. product_id (optional).
  • Origin. origin_lat and origin_lng.
  • Destination. destination_lat and destination_lng.
  • Time. departure_time or arrival_time, in ISO 8601 (with a time zone or in UTC).
    • Leaving out the time means the ride is ad hoc.
    • A time earlier than the product’s minimum pre-booking threshold from now is treated as ad hoc.
https://<subdomain>.link.ioki.app/create_ride?origin_lat=50.1217884&origin_lng=8.6752636&destination_lat=50.106529&destination_lng=8.6621618&departure_time=2022-08-01T13:00:00Z

A Web Booking link can open a specific product with the “book a ride” form prefilled. Use the product’s live address followed by its product slug:

https://<subdomain>.<domain>/products/<product_slug>
  • <subdomain>—the provider’s Web Booking subdomain.
  • <domain>—one of the shared Web Booking domains, ride-booking.com or fahrt-buchen.de, or a custom domain if one is configured for the provider.
  • <product_slug>—the unique slug of the product, as defined in Control Center.

Prefilling is only supported for a specific product, so always include the product slug. All parameters below are optional; you can, for example, set only the destination and leave out the origin and time.

ParameterDescriptionExample
origin_latLatitude of the ride’s origin.50.1217884
origin_lngLongitude of the ride’s origin.8.6752636
destination_latLatitude of the ride’s destination.50.106529
destination_lngLongitude of the ride’s destination.8.6621618
departure_timeISO 8601 timestamp for the departure time. Set only one of departure or arrival time.2022-08-01T13:00:00Z
arrival_timeISO 8601 timestamp for the arrival time. Set only one of departure or arrival time.2022-08-01T13:00:00Z

Only the parameters you include are prefilled; omitted parameters are left empty.

Properly URL-encode all values. For example, a + must be written as %2B.

Further reading