Appearance
Getting Started
Get your first booking into AvailEngine in under 5 minutes.
1. Register
Go to the developer dashboard and click Register. Create your free developer account — no credit card required.
You can also register programmatically:
bash
curl -X POST https://api.availengine.com/v1/auth/developer/register \
-H "Content-Type: application/json" \
-d '{
"email": "you@example.com",
"password": "your-secure-password",
"first_name": "Jane",
"last_name": "Doe"
}'2. Create a Business
Log into the dashboard and click New business. Give it a name and optional type (salon, restaurant, clinic, etc.). Toggle Sandbox for a free test business.
Or via the API:
bash
curl -X POST https://api.availengine.com/v1/developer/businesses \
-H "Authorization: Bearer YOUR_JWT" \
-H "Content-Type: application/json" \
-d '{
"name": "Demo Salon",
"business_type": "salon",
"is_dev": true
}'The response includes your API key — save it. It's scoped to this business and won't be shown again.
json
{
"business_id": "uuid",
"name": "Demo Salon",
"slug": "demo-salon",
"api_key": "avail_test_a1b2c3...",
"scopes": ["read", "write"]
}3. Add a Resource
Resources are what gets booked — a stylist, a room, a table.
bash
curl -X POST https://api.availengine.com/v1/manage/resources \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Maria",
"resource_type": "staff",
"capacity_max": 1
}'4. Set Operating Hours
bash
curl -X PUT https://api.availengine.com/v1/manage/hours \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"hours": [
{"day_of_week": 0, "is_open": false},
{"day_of_week": 1, "is_open": true, "open_time": "09:00", "close_time": "17:00"},
{"day_of_week": 2, "is_open": true, "open_time": "09:00", "close_time": "17:00"},
{"day_of_week": 3, "is_open": true, "open_time": "09:00", "close_time": "17:00"},
{"day_of_week": 4, "is_open": true, "open_time": "09:00", "close_time": "17:00"},
{"day_of_week": 5, "is_open": true, "open_time": "09:00", "close_time": "17:00"},
{"day_of_week": 6, "is_open": false}
]
}'5. Check Availability
bash
curl "https://api.availengine.com/v1/availability/YOUR_BUSINESS_ID?date=2026-06-15&capacity=1"Response:
json
{
"business_id": "uuid",
"booking_date": "2026-06-15",
"capacity": 1,
"slots": [
{"time": "09:00", "available": true, "remaining_resources": 1},
{"time": "09:30", "available": true, "remaining_resources": 1}
]
}6. Create a Booking
bash
curl -X POST https://api.availengine.com/v1/bookings/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"business_id": "YOUR_BUSINESS_ID",
"first_name": "Jane",
"last_name": "Doe",
"email": "jane@example.com",
"booking_date": "2026-06-15",
"start_time": "09:00",
"capacity": 1
}'Response (no deposit):
json
{
"booking": {
"id": "uuid",
"status": "confirmed",
"confirmation_code": "ABC12345",
"booking_date": "2026-06-15",
"start_time": "09:00:00",
"end_time": "10:00:00",
"capacity": 1
}
}If the business has deposits enabled, the response also includes stripe_client_secret and deposit_type — show the Stripe Payment Element to collect payment before the booking is confirmed:
Next Steps
You just built a booking flow. Now explore the full API reference → or set up webhooks → to keep your app in sync.