Skip to content

Waitlist

Let customers join a waitlist when no slots are available.

POST /v1/waitlist/{business_id}

Add a customer to the waitlist. Public endpoint.

bash
curl -X POST https://api.availengine.com/v1/waitlist/{business_id} \
  -H "Authorization: Bearer avail_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "customer": {
      "first_name": "Jane",
      "last_name": "Doe",
      "phone": "+301234567890",
      "email": "jane@example.com"
    },
    "preferred_date": "2026-05-15",
    "service_id": "uuid",
    "capacity": 1,
    "notes": "Available any time after 2pm"
  }'
FieldTypeRequiredDescription
customerobjectYesCustomer info
preferred_datedateYesPreferred date
service_idUUIDNoPreferred service
capacityintNoDefault: 1
notesstringNoCustomer notes

Response

json
{
  "waitlist_id": "uuid",
  "position": 3
}

GET /v1/manage/waitlist

List all waitlist entries for the current business.

bash
curl https://api.availengine.com/v1/manage/waitlist \
  -H "Authorization: Bearer avail_live_YOUR_KEY"

DELETE /v1/manage/waitlist/{entry_id}

Remove a waitlist entry (customer found a slot elsewhere or was contacted).

bash
curl -X DELETE https://api.availengine.com/v1/manage/waitlist/{entry_id} \
  -H "Authorization: Bearer avail_live_YOUR_KEY"

How to Use the Waitlist

  1. Customer can't find a slot → POST /waitlist
  2. Your app stores the waitlist_id
  3. When a slot opens (cancellation), check the waitlist for that date
  4. Contact the customer (email, SMS, push)
  5. If they book → DELETE /waitlist/{id}
  6. If they pass → leave them or send a follow-up

AvailEngine doesn't auto-book from the waitlist — you control the conversion flow.

Released under the MIT License.