githubEdit

Pickups

Adds pickup and dropoff functionality to the API

To use this capability, add octo/pickups to your Octo-Capabilities header.

This capability adds pickup/dropoff configuration to options, timed pickup/dropoff choices to availability responses, and pickup/dropoff selection fields on booking write/booking response objects.

Routes

Product option fields are returned on:

  • GET /products

  • GET /products/{productId}

Availability fields are returned on:

  • POST /availability

  • POST /availability/batch

Booking write fields are accepted on:

  • POST /bookings

  • PATCH /bookings/{uuid}

Behaviour

  • If both pickupPointId and pickupHotel are sent, pickupPointId takes precedence.

  • If both dropoffPointId and dropoffHotel are sent, dropoffPointId takes precedence.

  • When pickupHotel is provided and no pickup point matches by name, the API geocodes/creates a hotel record and links it to the booking.

  • When dropoffHotel is provided and no dropoff point matches by name, the API geocodes/creates a hotel record and links it to the booking.

  • pickupAddress and dropoffAddress can be sent to improve hotel geocoding accuracy.

  • Send null to clear existing values for pickup/dropoff booking fields.

  • For custom dropoff products, availability-level dropoffPoints require an end time; for stop-based dropoff products, dropoffs are resolved by stop/date.

Schema Additions (JSON)

These are additive fragments showing only fields introduced by this capability.

Option

Availability

AvailabilityBatchRow

PackageAvailability

AvailabilityResourcesRequest

BookingWriteRequest

Booking

Last updated