Skip to navigation

Quote a trip

View as Markdown

Prices a trip with the same math checkout uses and says whether the vehicle is free. Nothing is saved, so call it as often as you like (120 per minute).

Body

  • l_id (string, required)
  • start, end (string, required) — local times in the listing’s timezone
  • extras (array, optional) — [{"id": "<extra uuid>", "option": "<option uuid>"}]. Omit option for the first one. Use with=listings on GET /extras to see what each listing offers. Required extras are always charged; listing one here picks its option.
  • coupon (string, optional)
  • email (string, optional) — needed only for coupons limited per customer

Response

  • available — false if the vehicle is booked or blocked for those dates (buffer time included)
  • totals — all in cents: subtotal, discounts, taxes, total, security_deposit, and due_at_checkout (what the renter pays now, per your payment settings)
  • checkout_url — your storefront’s checkout for this listing with the dates filled in. Send the renter there to book and pay; you’ll get reservation.created when they do.

Delivery isn’t priced here yet. Trips that break your booking rules (hours, lead time, trip length) return 422 with the reason under errors.dates.

Authentication

AuthorizationBearer

An API token from Settings → API tokens in Fleetwire, sent as Authorization: Bearer …. Each token carries scopes: read for every GET, plus write scopes such as bookings:write.

Request

This endpoint expects an object.
l_idstringRequired<=40 characters
startstringRequired

A date and time, e.g. 2026-11-06 10:00:00 or ISO 8601.

endstringRequired

After start.

extraslist of objects or nullOptional
couponstring or nullOptional<=200 characters
emailstring or nullOptionalformat: "email"<=255 characters

Response

OK
quoteobjectOptional

Errors

401
Unauthorized Error
403
Forbidden Error
422
Unprocessable Entity Error
429
Too Many Requests Error