Appearance
Developer Portal
The developer dashboard is available at availengine.com — manage businesses, API keys, billing, and download agent skills for any booking vertical. No code required.
All endpoints below are also available for programmatic use. They require JWT authentication. Register as a developer via POST /v1/auth/developer/register or through the dashboard's register page.
Profile
GET /v1/developer/me
Returns your profile, role, subscription status, and all owned businesses.
json
{
"user_id": "uuid",
"email": "dev@example.com",
"role": "developer",
"subscription": {
"status": "active",
"ends_at": null,
"has_payment_method": true
},
"businesses": [
{
"id": "uuid",
"name": "Demo Salon",
"slug": "demo-salon",
"business_type": "service",
"subscription_status": "trial",
"is_active": true,
"is_dev": true,
"created_at": "2026-05-01T10:00:00Z"
}
]
}For developers, businesses lists every business you own. For business owners, it returns just their single business. subscription is null for business owners (they have per-business billing, not developer billing).
Businesses
GET /v1/developer/businesses
List all businesses you own. Cursor-paginated, newest first.
bash
curl https://api.availengine.com/v1/developer/businesses \
-H "Authorization: Bearer YOUR_JWT_TOKEN"POST /v1/developer/businesses
Create a new business. Returns a scoped API key — store it, it won't be shown again.
bash
curl -X POST https://api.availengine.com/v1/developer/businesses \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "My New Business",
"business_type": "salon",
"is_dev": false
}'| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | 2–100 chars |
business_type | string | No | Default "service". Any string up to 50 chars |
is_dev | bool | No | Default false. Sandbox business (free, 1 per developer) |
Response:
json
{
"business_id": "uuid",
"name": "My New Business",
"slug": "my-new-business",
"api_key": "avail_live_abc123def456...",
"api_key_prefix": "avail_live_",
"scopes": ["read", "write"]
}Sandbox limit: Each developer gets 1 free is_dev: true business. Creating a second returns 402 Payment Required.
This endpoint also:
- Creates default
business_settings(60-min slots, €0.20 deposit) - Creates default
operating_hours(all 7 days closed) - For business_owner roles, sets
app_metadata.business_id
GET /v1/developer/businesses/{business_id}
Get full details for a specific business. You must own it (ownership check enforced).
DELETE /v1/developer/businesses/{business_id}
Deactivate a business (sets is_active: false). Also revokes all API keys for that business. The business and its data are preserved — it just stops being billable and accessible.
Billing
Developers subscribe to AvailEngine to use the API. See the pricing page for the 4-tier model — from Free to €129/mo (Scale) based on businesses and booking volume.
POST /v1/developer/billing/checkout
Start a Stripe Checkout session to subscribe.
bash
curl -X POST https://api.availengine.com/v1/developer/billing/checkout \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"plan": "starter"}'Response:
json
{
"checkout_url": "https://checkout.stripe.com/..."
}Redirect the user to checkout_url. On success they're sent to /developer?subscription=success. On cancel, /developer?subscription=cancelled.
POST /v1/developer/billing/portal
Open the Stripe Customer Portal to manage payment method, view invoices, or cancel.
bash
curl -X POST https://api.availengine.com/v1/developer/billing/portal \
-H "Authorization: Bearer YOUR_JWT_TOKEN"Response:
json
{
"portal_url": "https://billing.stripe.com/..."
}Quickstart
GET /v1/developer/quickstart/{business_id}
Returns ready-to-use curl commands and cURL snippets for integrating with a specific business.
bash
curl https://api.availengine.com/v1/developer/quickstart/{business_id} \
-H "Authorization: Bearer YOUR_JWT_TOKEN"Response includes:
business— name, id, slugcurl— ready-to-paste availability check and booking creation commands
Stripe Connect (Per-Business Deposits)
If a business wants to accept deposit payments (for no-show protection), they need a Stripe Connect account. The developer dashboard handles this — go to Business Settings → Stripe Connect. The business owner completes Stripe onboarding once, and deposits flow directly to their bank account.