plan.item.updated each time a flight, hotel or car in the plan changes state.
Follow a booking’s states
Answer a booking that waits
Aneeds_input booking carries one of two reasons:
price_changed: the supplier asks a different price than your customer approved, inasked_cents. Agentcard never books at a price your customer did not see, up or down.approval_required: the payment asks your customer to approve it on their device.
POST /buy/plans/:id/items/:key/answer:
accept_price books the item at the new price when the new price fits inside what your customer approved for the whole trip, which leaves room when another booking came in under its quote. A new price above that answers 409, and difference_cents is the amount above what the approval still covers:
skip leaves the booking unbooked, along with the bookings that wait on it. Bookings already confirmed stay booked: Agentcard never cancels one for your customer.
Read a refused answer
Keep the newest version per booking
version is the plan’s version at the change. Keep the highest version you have seen for each item.key, so a retried delivery for the hotel still applies after a newer delivery for the car.