WordPress Plugins
Bookly Credentials REST API Operations
Complete documentation for the Bookly Credentials REST API Operations plugin, including installation, authentication, and API endpoint reference.
Bookly Credentials REST API Operations
Overview
The Bookly Credentials REST API Operations plugin extends the Bookly booking system with comprehensive REST API endpoints for creating, reading, updating, and deleting customers, appointments, staff members, services, and more.
Installation
- Purchase the plugin from CodeCanyon
- Download the plugin ZIP file
- In WordPress admin, go to Plugins > Add New > Upload Plugin
- Upload the ZIP file and activate the plugin
- Navigate to Bookly > REST API Settings to configure
Authentication
The plugin uses API key authentication. Generate your API key in the plugin settings:
- Go to Bookly > REST API Settings
- Click Generate New API Key
- Copy the API key for use in your requests
Include the API key in all requests using the X-API-Key header:
X-API-Key: your-api-key-here
API Endpoints
Customers
Get All Customers
GET /wp-json/bookly/v1/customers
Get Customer by ID
GET /wp-json/bookly/v1/customers/{id}
Create Customer
POST /wp-json/bookly/v1/customers
Content-Type: application/json
{
"full_name": "John Doe",
"email": "john@example.com",
"phone": "+1234567890"
}
Update Customer
PUT /wp-json/bookly/v1/customers/{id}
Content-Type: application/json
{
"full_name": "John Smith",
"email": "john.smith@example.com"
}
Delete Customer
DELETE /wp-json/bookly/v1/customers/{id}
Appointments
Get All Appointments
GET /wp-json/bookly/v1/appointments
Query parameters:
start_date: Filter by start date (YYYY-MM-DD)end_date: Filter by end date (YYYY-MM-DD)staff_id: Filter by staff member IDservice_id: Filter by service ID
Get Appointment by ID
GET /wp-json/bookly/v1/appointments/{id}
Create Appointment
POST /wp-json/bookly/v1/appointments
Content-Type: application/json
{
"customer_id": 123,
"staff_id": 456,
"service_id": 789,
"start_date": "2025-10-20 10:00:00",
"end_date": "2025-10-20 11:00:00"
}
Update Appointment
PUT /wp-json/bookly/v1/appointments/{id}
Content-Type: application/json
{
"start_date": "2025-10-20 14:00:00",
"end_date": "2025-10-20 15:00:00"
}
Delete Appointment
DELETE /wp-json/bookly/v1/appointments/{id}
Staff
Get All Staff
GET /wp-json/bookly/v1/staff
Get Staff by ID
GET /wp-json/bookly/v1/staff/{id}
Create Staff
POST /wp-json/bookly/v1/staff
Content-Type: application/json
{
"full_name": "Jane Doe",
"email": "jane@example.com",
"phone": "+1234567890"
}
Services
Get All Services
GET /wp-json/bookly/v1/services
Get Service by ID
GET /wp-json/bookly/v1/services/{id}
Custom Fields
Access custom fields through the appointments endpoint:
GET /wp-json/bookly/v1/appointments/{id}?include_custom_fields=true
Webhooks
Configure webhooks in Bookly > REST API Settings > Webhooks to receive real-time notifications:
- New appointment created
- Appointment updated
- Appointment cancelled
- Customer created
- Customer updated
Error Handling
The API returns standard HTTP status codes:
200: Success201: Created400: Bad Request401: Unauthorized (invalid API key)404: Not Found500: Internal Server Error
Error responses include a message:
{
"error": "Invalid customer ID",
"code": "invalid_id"
}
Rate Limiting
The API has a rate limit of 100 requests per minute per API key.
Support
For support, please:
- Check the GitHub repository for issues
- Contact us through our support form
- Request custom integrations for advanced use cases