Workflow and terminology
Below there's a status workflow of the lead entity.
There are 3 types of leads in the Hostfully PMP.
- BLOCK, which is a simple CRUD resource in the PMP blocking calednar
- INQUIRY, which is a potential reservation, but has not been confirmed
- BOOKING_REQUEST, which is a request from guest which can be accepted or declined by the property manager
- BOOKING, which is a confirmed reservation
Lead manipulation
Because lead is a domain object here's a simple instruction of interacting with it.
- Creation
- You can create lead that is either a BLOCK, INQUIRY, BOOKING_REQUEST or BOOKING.
- After creation, BLOCK can only be updated or deleted, and other types of lead are subject to the leads workflow shown on the diagram above.
- Updating
- You can update CRUD-type of lead data, which is notes and guest information with exclusion of the number of adults/children/infants/pets, by calling PATCH /leads/:uid
- You can update lead data like dates, number of guests (and kids and pets) or property by executing an action on the resource, by calling POST /leads/:uid/alteration
- You can process lead through the workflow by executing other actions defined and describe din the docs by calling POST /leads/:uid/{action}. Actions correspond to their names in the PMP Pipeline.
- Deleting
- You can always delete BLOCKs
- You can only delete non-BLOCKs if they're in one of these statuses: 'CLOSED', 'CANCELLED', 'DECLINED'
Calendar blocking
Leads block calendar in the following statuses:
- BOOKED
- BLOCKED
- PENDING
- ON_HOLD