Skip to content

Migrate from v3.1 to Demand API v3.2

Use this guide to migrate your existing Demand API v3.1 car rental integration to v3.2. Review the endpoint, schema, field, and integration-flow changes that can affect your implementation.


Migration overview

Demand API v3.2 standardises car rental schemas and naming conventions and aligns the Cars API collection more closely with patterns used across other Demand API travel services.

The main migration changes include:

  • Significant request and response changes to /cars/search.
  • Naming and field changes in /cars/depots.
  • Updated payment timing identifiers.
  • Minor consistency improvements across existing Cars endpoints.
  • Additional car rental booking and post-booking capabilities available in Beta.

Direct car rental booking and selected post-booking capabilities are currently available in Beta only. You do not need to implement these capabilities to migrate an existing Search, look and redirect integration from v3.1 to v3.2.


Endpoint migration overview

Use the following table to identify which existing endpoints require changes.

EndpointChangeMigration action
/cars/searchSignificant request and response schema changes.Review and update your integration. See the /cars/search migration guide.
/cars/depotsField naming and consistency updates.Update renamed fields and remove dependencies on fields no longer returned.
/cars/depots/reviews/scoresNo significant integration changes.No migration action required.
/cars/suppliersNo significant integration changes.No migration action required.
/cars/constantsUpdated payment timing identifiers.Review mappings or logic that depend on payment_timings.id.
/cars/detailsNo significant integration changes.No migration action required.

This table covers endpoints available to an existing v3.1 integration. New Beta endpoints and booking capabilities are described separately below.


Breaking changes

v3.2 Changed Breaking change

/cars/search

/cars/search introduces the most significant schema changes between v3.1 and v3.2.

Depending on your integration, you may need to update:

  • Request fields and structures.
  • Response parsing.
  • Pricing and policy structures.
  • Route and location information.
  • Offer and search-context handling.
  • Other fields consumed by your application.

See the /cars/search migration guide for detailed v3.1-to-v3.2 mappings and examples.

/cars/depots

/cars/depots remains functionally similar in v3.2, but some field names and structures have been standardised.

Review the following changes:

v3.1v3.2Migration action
pick_uppickupUpdate references to use pickup.
drop_offdropoffUpdate references to use dropoff.
deskAtRemovedRemove dependencies on deskAt and use the relevant depot location information instead.

Update any data models, response parsers, mappings, or downstream logic that depend on the v3.1 field names.

Payment timing identifiers

Demand API v3.2 standardises the Cars payment timing identifiers.

v3.1v3.2Meaning
part_paypay_partial_online_nowTraveller pays part of the amount online and the remaining amount later.
pay_nowpay_online_nowTraveller pays the full amount online at the time of booking.
pay_localpay_at_pickupTraveller pays at the pickup location.

If your integration maps, stores, filters, or displays payment_timings.id values, update your logic to use the v3.2 identifiers.


Endpoints with no significant migration changes

Some Cars endpoints do not require significant integration changes when migrating from v3.1 to v3.2.

/cars/depots/reviews/scores

Use this endpoint to retrieve review scores and breakdowns for car rental depots.

No significant request or response changes require migration updates.

/cars/suppliers

Use this endpoint to retrieve car rental supplier information.

No significant request or response changes require migration updates.

/cars/details

Use this endpoint to retrieve static vehicle information such as capacity, make, model, features, and specifications.

No significant request or response changes require migration updates.

Even where no migration action is required, validate the endpoints used by your integration against the v3.2 API reference before completing your migration.


/cars/constants changes

/cars/constants has been expanded in v3.2 with additional constant groups and updated values.

Key changes include:

  • New constant groups for car categories, customer services, depot types, extras, special offers, protection levels, and review scores.
  • Updated payment timing identifiers.
  • Additional fuel policy, fuel type, and general constant values.

If your integration stores or maps constants locally, refresh your mappings and ensure new values are handled without assuming a fixed closed set.


Extend your integration with Beta capabilities

After migrating your existing v3.1 integration to stable v3.2, you can optionally extend it with car rental booking and selected post-booking capabilities available in Beta.

The capabilities in this section are Beta and are not required to migrate an existing v3.1 Search, look and redirect integration to stable v3.2.

Search, look and book

Beta supports the Search, look and book flow.

A typical direct-booking flow uses:

  1. /cars/search to retrieve car rental offers.
  2. /cars/availability to validate the selected offer and retrieve its latest pricing, policies, optional products, and insurance.
  3. /orders/preview to validate the selected order configuration and calculate its final pricing and payment schedule.
  4. /orders/create to create the order.

Car rental Search, look and book flow

New pre-booking endpoints

EndpointPurposeRelated guide
/cars/availabilityValidate the selected offer and retrieve its latest pricing, policies, optional products, and insurance.Check car availability guide
/cars/terms-and-conditionsRetrieve the terms and conditions that apply to the selected car offer before booking.Pre-booking terms and conditions guide

Orders integration

Cars can be booked through the Orders API collection in Beta.

Use:

  • /orders/preview to validate the selected order configuration and retrieve final pricing, policies, and payment information.
  • /orders/create to create the car rental order.

The booking flow uses the offer and search_token obtained from the preceding Cars flow.

See the Car rentals tutorial for an end-to-end implementation walkthrough.

Post-booking capabilities

Selected post-booking functionality is also available in Beta.

EndpointPurpose
/orders/details/cars/liveRetrieve the latest details for a car rental reservation.
/orders/cancelCancel a supported car rental order.
/orders/details/cars/terms-and-conditionsRetrieve post-booking terms and conditions.
/orders/details/cars/faqRetrieve booking-related FAQs.

Test your migration

A dedicated sandbox environment is not currently available for car rental integrations.

When validating your migration, follow the approved testing process for your integration and coordinate with your Account Manager where required.

Make sure you validate:

  • Updated /cars/search request and response parsing.
  • Renamed /cars/depots fields.
  • Payment timing mappings.
  • Static-data handling.
  • Redirect behaviour.
  • Error handling.
  • Downstream systems that consume Cars data.
  • Beta booking and post-booking flows, if you implement them.

Migration checklist

Use this checklist before completing your v3.1-to-v3.2 migration.

ChecklistAction
☑Review and implement the changes described in the /cars/search migration guide.
☑Replace pick_up and drop_off with pickup and dropoff where applicable in /cars/depots.
☑Remove dependencies on deskAt.
☑Review and update mappings that depend on payment_timings.id.
☑Validate the Cars endpoints used by your integration against the v3.2 schemas.
☑Test your migrated integration end to end.
☑Implement Beta booking and post-booking capabilities if required.

Next steps