### Update Coupon Example Source: https://wpamelia.com/documentation/api-coupons Example of how to update an existing coupon using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/coupons/14' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data '{ "code": "SPRING20", "discount": 0, "deduction": 20, "limit": 50, "customerLimit": 1, "notificationInterval": 0, "notificationRecurring": false, "status": "visible", "events": [16], "services": [1], "packages": [1], "expirationDate": "2026-05-06" }' ``` -------------------------------- ### Retrieve Coupon Details Response Example Source: https://wpamelia.com/documentation/api-coupons Example response when retrieving coupon details. ```json { "message": "Successfully retrieved coupon.", "data": { "coupon": { "id": 14, "code": "SPRING20", "discount": 0, "deduction": 20, "limit": 40, "customerLimit": 1, "used": 0, "notificationInterval": 0, "notificationRecurring": false, "status": "hidden", "serviceList": [ { "id": 1, "name": "amelia service", "price": 20, "status": "visible" } ], "eventList": [ { "id": 80, "name": "event 123", "price": 330, "type": "event" } ], "packageList": [], "expirationDate": "2026-05-06" } } } ``` -------------------------------- ### Retrieve Coupon Details Example Source: https://wpamelia.com/documentation/api-coupons Example of how to retrieve details for a single coupon using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/coupons/14' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Update Coupon Response Example Source: https://wpamelia.com/documentation/api-coupons Example response after successfully updating a coupon. ```json { "message": "Coupon successfully updated.", "data": { "coupon": { "id": 14, "code": "SPRING20", "discount": 0, "deduction": 20, "limit": 50, "customerLimit": 1, "used": 0, "notificationInterval": 0, "notificationRecurring": false, "status": "visible", "serviceList": [ { "id": 1, "name": "amelia service", "description": "location address: %location_address%", "color": "#1788FB", "price": 20, "deposit": 14, "depositPayment": "fixed", "depositPerPerson": true, "pictureFullPath": null, "pictureThumbPath": null } ], "eventList": [ { "id": 16, "name": "test5", "price": 20, "status": "approved", "type": "event", "created": "2026-03-17 16:17:27" } ], "packageList": [ { "id": 1, "name": "milicas package", "price": 200, "status": "visible", "type": "package" } ], "expirationDate": "2026-05-06" } } } ``` -------------------------------- ### Update Notification Example Source: https://wpamelia.com/documentation/api-notifications Example of how to update a notification template using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/notifications/123' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data '{ "customName": "Customer appointment approved updated", "entityIds": [1, 2] }' ``` -------------------------------- ### Update Location Example Source: https://wpamelia.com/documentation/api-locations Example of how to update an existing location using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/locations/11' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data '{ "address": "179 W North Ave, Northlake, IL, USA", "latitude": 41.9086589, "longitude": -87.9121619, "pin": null, "translations": null }' ``` -------------------------------- ### Example Request Source: https://wpamelia.com/documentation/api-search-timeslots This is an example of how to call the search timeslots endpoint with various parameters. ```curl curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/search&date=2026-03-18&location=2&page=1&services=1,2&sort=name&providers=1,3' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Retrieve Single Location Example Source: https://wpamelia.com/documentation/api-locations Example of how to retrieve details for a single location using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/locations/11' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Get Timeslots Endpoint Example Source: https://wpamelia.com/documentation/api-timeslots This example shows how to call the get timeslots endpoint to retrieve available timeslots for a specific service configuration. ```curl curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/slots&locationId=2&serviceId=3&serviceDuration=1800&providerIds=3&persons=1&startDateTime=2026-02-10%2009:00&extras=[]&excludeAppointmentId=null' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Shortcode Examples Source: https://wpamelia.com/documentation/step-by-step-booking-form Examples of how to use the `ameliastepbooking` shortcode with various filters to display specific services, employees, locations, or packages. ```shortcode [ameliastepbooking category=3] ``` ```shortcode [ameliastepbooking service=5] ``` ```shortcode [ameliastepbooking employee=2 location=1] ``` ```shortcode [ameliastepbooking show=packages] ``` -------------------------------- ### Example API Request Source: https://wpamelia.com/documentation/api-stats This is an example of how to make a GET request to the /stats endpoint to retrieve statistics for a specific date range. ```curl curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/stats&dates=2026-05-18%2C2026-05-19' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Retrieve Resources Source: https://wpamelia.com/documentation/api-resources Example of how to retrieve a list of resources using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/resources' \ --header 'Amelia: YOUR_API_KEY' ``` ```json { "message": "Successfully retrieved resources.", "data": { "resources": [ { "id": 4, "name": "Treatment bed", "quantity": 1, "shared": "location", "status": "hidden", "entities": { "14": { "id": 14, "resourceId": 4, "entityId": 1, "entityType": "service" } }, "countAdditionalPeople": null }, { "id": 6, "name": "Massage room large", "quantity": 3, "shared": false, "status": "visible", "entities": { "25": { "id": 25, "resourceId": 6, "entityId": 2, "entityType": "service" } }, "countAdditionalPeople": null } ] } } ``` -------------------------------- ### Booking Form Shortcode Source: https://wpamelia.com/documentation/service-quick-start This shortcode can be pasted into the WordPress editor to insert the Amelia step-by-step booking form. ```html [ameliastepbooking] ``` -------------------------------- ### Retrieve Packages Source: https://wpamelia.com/documentation/api-packages Example of how to retrieve a list of packages using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/packages?page=1&sort=name' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Shortcodes for displaying events Source: https://wpamelia.com/documentation/event-quick-start-guide These shortcodes can be used to display events on your website using Gutenberg, Elementor, or Divi blocks. ```html [ameliaeventscalendarbooking] [ameliaeventslistbooking] ``` -------------------------------- ### Retrieve Notifications and WhatsApp Templates Example Source: https://wpamelia.com/documentation/api-notifications Example of how to retrieve notification templates and available WhatsApp templates using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/notifications' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Retrieve Package Details Source: https://wpamelia.com/documentation/api-packages Example of how to retrieve details for a specific package using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/packages/1' \ --header 'Amelia: YOUR_API_KEY' ``` ```json { "message": "Successfully retrieved package.", "data": { "package": { "id": 1, "name": "Starter wellness package", "description": "", "color": "#1788FB", "price": 110, "deposit": 0, "depositPayment": "disabled", "pictureFullPath": "https://example-site.com/wp-content/uploads/2026/01/package-cover.jpg", "pictureThumbPath": "https://example-site.com/wp-content/uploads/2026/01/package-cover-150x150.jpg", "position": 1, "settings": null, "fullPayment": false, "type": "package", "status": "visible", "gallery": [], "bookable": [ { "id": 1, "quantity": 3, "service": { "id": 2, "name": "Initial consultation", "description": null, "color": "#1788FB", "price": 10, "status": "visible" }, "minimumScheduled": 0, "maximumScheduled": 1, "providers": [ { "id": 1, "firstName": "Amelia", "lastName": "Employee", "email": "amelia.employee@example.com", "type": "provider", "status": "visible" }, { "id": 9, "firstName": "Milica", "lastName": "Employee", "email": "milica.employee@example.com", "type": "provider", "status": "visible" } ], "locations": [], "allowProviderSelection": true, "position": 1 } ], "calculatedPrice": false, "discount": 5, "endDate": null, "durationCount": 1, "durationType": "week", "translations": null, "sharedCapacity": false, "quantity": 1, "limitPerCustomer": "{\"enabled\":false,\"numberOfApp\":1,\"timeFrame\":\"day\",\"period\":1}" } } } ``` -------------------------------- ### Install Amelia via WordPress Admin Source: https://wpamelia.com/documentation/installing-amelia Steps to install the Amelia plugin through the WordPress dashboard. ```text 1. In your WordPress admin panel, go to **Plugins → Add New → Upload Plugin**. 2. Click **Choose File** , select the `ameliabooking.zip` file you downloaded, and click **Install Now**. 3. Once the installation finishes, click **Activate Plugin**. ``` -------------------------------- ### Install Amelia via FTP Source: https://wpamelia.com/documentation/installing-amelia Steps to manually install the Amelia plugin using an FTP client. ```text 1. Unzip the `ameliabooking.zip` file on your computer. 2. Open your FTP client (such as FileZilla, Cyberduck, or Total Commander). 3. Connect to your server and navigate to the `/wp-content/plugins/` directory. 4. Upload the unzipped **ameliabooking** folder there. 5. Once uploaded, go to your WordPress admin → **Plugins** and click **Activate** next to **Amelia**. ``` -------------------------------- ### Payment Response Example Source: https://wpamelia.com/documentation/api-payments Example JSON response when retrieving a specific payment. ```json { "message": "Successfully retrieved payment.", "data": { "payment": { "id": 312, "customerBookingId": 268, "packageCustomerId": null, "parentId": null, "amount": 10, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2026-03-11 13:00:00", "status": "paid", "data": "", "entity": "appointment", "created": "2026-03-11 11:18:32", "actionsCompleted": null, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null } } } ``` -------------------------------- ### Retrieve Custom Fields Source: https://wpamelia.com/documentation/api-custom-fields Example of how to retrieve all custom fields using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/fields' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Update Appointment Example Source: https://wpamelia.com/documentation/api-appointments Example of how to update an existing appointment using a cURL request. ```bash curl --location 'https://example.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/742' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data '{ "bookingStart": "2026-02-06 11:00", "bookings": [ { "id": 979, "customFields": "{\"1\":{\"label\":\"text\",\"value\":\"\",\"type\":\"text\"}}", "customerId": 10, "duration": 1800, "extras": [], "packageCustomerId": null, "persons": 2, "status": "approved" } ], "internalNotes": "", "lessonSpace": "", "locationId": 2, "notifyParticipants": 1, "providerId": 1, "removedBookings": [], "serviceId": 1 }' ``` -------------------------------- ### Retrieve a list of services Source: https://wpamelia.com/documentation/api-services This example demonstrates how to retrieve a list of services using the Amelia API, with optional filtering by category and pagination. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/services&page=1&categoryId=2' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Retrieve Coupons Source: https://wpamelia.com/documentation/api-coupons Example request to retrieve a list of coupons using the Amelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/coupons' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Example API Response Source: https://wpamelia.com/documentation/api-entities This is an example of the JSON response when retrieving locations and events. ```json { "message": "Successfully retrieved entities", "data": { "events": [ { "id": 84, "name": "Sample Event", "description": "", "color": "#1788FB", "price": 100, "deposit": 10, "depositPayment": "fixed", "depositPerPerson": true, "pictureFullPath": null, "pictureThumbPath": null, "extras": [], "coupons": [], "position": null, "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":true},\"stripe\":{\"enabled\":true}},\"zoom\":{\"enabled\":true}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 84, "eventId": 84, "periodStart": "2026-02-12 14:00:00", "periodEnd": "2026-02-12 16:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "status": "approved", "maxCapacity": 100, "show": true, "notifyParticipants": 1, "locationId": 2, "created": "2026-01-18 10:12:12", "type": "event" } ], "locations": [ { "id": 4, "status": "visible", "name": "West Drive Office", "description": "Main downtown location", "address": "179 West Drive, Chicago, IL, USA", "phone": "+12025550123", "latitude": 41.906876, "longitude": -87.896297, "pictureFullPath": null, "pictureThumbPath": null, "pin": null, "translations": null } ], "customers": [], "appointments": { "futureAppointments": [] } } } ``` -------------------------------- ### Retrieve a list of customers Source: https://wpamelia.com/documentation/api-customers Example request and response for retrieving a list of customers with optional pagination and search parameters. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/users/customers&page=1&search=jordan' \ --header 'Amelia: YOUR_API_KEY' ``` ```json { "message": "Successfully retrieved users.", "data": { "users": [ { "id": 10, "status": "visible", "firstName": "Jordan", "lastName": "Reed", "email": "jordan.reed@example.test", "phone": "+381631652656", "countryPhoneIso": "rs", "externalId": 8, "lastAppointment": "2026-05-03 15:00:00", "totalAppointments": 11, "countPendingAppointments": "0" }, { "id": 11, "status": "visible", "firstName": "Casey", "lastName": "Nguyen", "email": "casey.nguyen@example.test", "phone": "", "countryPhoneIso": "us", "externalId": 9, "lastAppointment": "2026-05-10 11:00:00", "totalAppointments": 28, "countPendingAppointments": "0" }, { "id": 16, "status": "visible", "firstName": "Taylor", "lastName": "Brooks", "email": "taylor.brooks@example.test", "phone": "", "countryPhoneIso": "us", "externalId": 12, "lastAppointment": "2026-05-09 11:00:00", "totalAppointments": 5, "countPendingAppointments": "1" } ], "filteredCount": 3, "totalCount": 16 } } ``` -------------------------------- ### Delete Booking Example Source: https://wpamelia.com/documentation/api-bookings Example of how to delete a booking using a POST request to the Amelia API. ```bash curl --location --request POST 'https://example.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/bookings/delete/974' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Example API Response for Appointment Retrieval Source: https://wpamelia.com/documentation/api-appointments Example JSON response when successfully retrieving an appointment. ```json { "message": "Successfully retrieved appointment", "data": { "appointment": { "id": 742, "bookings": [ { "id": 979, "customerId": 10, "customer": null, "status": "pending", "extras": [], "couponId": null, "price": 23, "coupon": null, "customFields": "{\"1\":{\"label\":\"text\",\"value\":\"\",\"type\":\"text\"}}", "info": null, "appointmentId": 742, "persons": 2, "token": null, "payments": [ { "id": 1000, "customerBookingId": 979, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2026-02-06 11:00:00", "status": "pending", "data": "", "entity": null, "created": null, "actionsCompleted": null, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null, "transactionId": null } ], "utcOffset": null, "aggregatedPrice": true, "isChangedStatus": null, "isLastBooking": null, "packageCustomerService": null, "ticketsData": [], "duration": 1800, "created": "2026-01-10 10:19:00", "actionsCompleted": null, "isUpdated": null } ], "notifyParticipants": 1, "internalNotes": "", "status": "pending", "serviceId": 1, "parentId": null, "providerId": 1, "locationId": 2, "provider": null, "service": null, "location": null, "googleCalendarEventId": "hlda2snvbh7llqbupsgnels3io", "googleMeetUrl": null, "outlookCalendarEventId": null, "zoomMeeting": null, "lessonSpace": null, "bookingStart": "2026-02-06 11:00:00", "bookingEnd": "2026-02-06 11:30:00", "type": "appointment", "isRescheduled": null, "isFull": null, "resources": [] }, "recurring": [] } } ``` -------------------------------- ### Retrieve a List of Extras Source: https://wpamelia.com/documentation/api-extras Example of a cURL request to retrieve a list of all bookable extras. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/extras' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Event Page URL Example with Pre-selection Source: https://wpamelia.com/documentation/amelia-shortcodes Example URL demonstrating how to pre-select an event and open it in a popup using URL parameters. ```url https://yourbookingwebsite.com/events/?ameliaEventId=123&ameliaEventPopup=123 ``` -------------------------------- ### Add Customer Request Example Source: https://wpamelia.com/documentation/api-customers This example demonstrates how to send a POST request to the /users/customers endpoint to create a new customer profile with various details. ```curl curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/users/customers' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data-raw '{ \ "firstName": "Jordan", \ "lastName": "Reed", \ "externalId": 16, \ "phone": "+381601234567", \ "countryPhoneIso": "rs", \ "email": "jordan.reed@example.test", \ "gender": "female", \ "birthday": "1990-05-17", \ "note": "Prefers morning appointments.", \ "language": "en_GB" \ }' ``` -------------------------------- ### Create Package Request Source: https://wpamelia.com/documentation/api-packages Example cURL request to create a new package via the WPamelia API. ```bash curl --location 'https://example-site.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/packages' \ --header 'Content-Type: application/json' \ --header 'Amelia: YOUR_API_KEY' \ --data '{ \ "bookable": [ \ { \ "service": { "id": 1 }, \ "providers": [], \ "locations": [], \ "quantity": 1, \ "minimumScheduled": 0, \ "maximumScheduled": 1, \ "allowProviderSelection": true \ }, \ { \ "service": { "id": 4 }, \ "providers": [], \ "locations": [], \ "quantity": 1, \ "minimumScheduled": 0, \ "maximumScheduled": 1, \ "allowProviderSelection": false \ } \ ], \ "color": "#1788FB", \ "description": "A two-session package combining consultation and treatment at a discounted rate.", \ "name": "Starter wellness package", \ "pictureFullPath": "", \ "pictureThumbPath": "", \ "price": 55, \ "calculatedPrice": false, \ "discount": 0, \ "status": "visible", \ "gallery": [], \ "position": 9, \ "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":true},\"stripe\":{\"enabled\":false},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}}}", \ "endDate": "2026-06-30 23:59", \ "durationCount": null, \ "durationType": null, \ "deposit": 0, \ "depositPayment": "disabled", \ "translations": null, \ "sharedCapacity": false, \ "quantity": 1, \ "limitPerCustomer": "{\"enabled\":true,\"numberOfApp\":1,\"timeFrame\":\"day\",\"period\":1}", \ "descriptionHtml": "A two-session package combining consultation and treatment at a discounted rate." \ }' ``` -------------------------------- ### Delete Appointment Response Example Source: https://wpamelia.com/documentation/api-appointments This is an example of a successful response when deleting an appointment via the Amelia API. ```json { "message": "Successfully deleted appointment", "data": { "appointment": { "id": 173, "bookings": [ { "id": 254, "customerId": 10, "customer": null, "status": "rejected", "extras": [], "couponId": null, "price": 20, "coupon": null, "customFields": "{\"1\":{\"label\":\"text\",\"value\":\"\",\"type\":\"text\"}}", "info": null, "appointmentId": 173, "persons": 1, "token": null, "payments": [ { "id": 295, "customerBookingId": 254, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2026-01-22 09:00:00", "status": "pending", "data": "", "entity": null, "created": null, "actionsCompleted": null, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null } ], "utcOffset": null, "aggregatedPrice": true, "isChangedStatus": true, "isLastBooking": null, "packageCustomerService": null, "ticketsData": [], "duration": 1800, "created": null, "actionsCompleted": null } ], "notifyParticipants": 1, "internalNotes": "", "status": "rejected", "serviceId": 1, "parentId": null, "providerId": 1, "locationId": 1, "provider": null, "service": null, "location": null, "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null, "zoomMeeting": null, "lessonSpace": null, "bookingStart": "2026-01-22 09:00:00", "bookingEnd": "2026-01-22 09:30:00", "type": "appointment", "isRescheduled": null, "resources": [] }, "bookingsWithChangedStatus": [ { "id": 254, "customerId": 10, "customer": null, "status": "pending", "extras": [], "couponId": null, "price": 20, "coupon": null, "customFields": "{\"1\":{\"label\":\"text\",\"value\":\"\",\"type\":\"text\"}}", "info": null, "appointmentId": 173, "persons": 1, "token": null, "payments": [ { "id": 295, "customerBookingId": 254, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2026-01-22 09:00:00", "status": "pending", "data": "", "entity": null, "created": null, "actionsCompleted": null, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null } ], "utcOffset": null, "aggregatedPrice": true, "isChangedStatus": true, "isLastBooking": null, "packageCustomerService": null, "ticketsData": [], "duration": 1800, "created": null, "actionsCompleted": null } ] } } ``` -------------------------------- ### Create Package Response Source: https://wpamelia.com/documentation/api-packages Example JSON response after successfully creating a package via the WPamelia API. ```json { "message": "Successfully added new package.", "data": { "package": { "id": 22, "name": "Starter wellness package", "description": null, "color": "#1788FB", "price": 55, "deposit": 0, "depositPayment": "disabled", "depositPerPerson": null, "pictureFullPath": null, "pictureThumbPath": null, "extras": [], "coupons": [], "position": 1, "settings": null, "fullPayment": null, "type": "package", "status": "visible", "gallery": [], "bookable": [ { "id": 35, "quantity": 1, "service": { "id": 1, "name": "Initial consultation", "description": "A focused consultation for first-time clients.", "color": "#1788FB", "price": 20 }, "minimumScheduled": 0, "maximumScheduled": 1, "providers": [], "locations": [], "allowProviderSelection": true }, { "id": 36, "quantity": 1, "service": { "id": 4, "name": "Deep tissue massage", "description": "A 60-minute massage focused on releasing muscle tension.", "color": "#1788FB", "price": 45 }, "minimumScheduled": 0, "maximumScheduled": 1, "providers": [], "locations": [], "allowProviderSelection": false } ], "calculatedPrice": true, "discount": 0, "endDate": "2026-06-30 23:59", "durationCount": null, "durationType": null, "translations": null, "sharedCapacity": null, "quantity": 1, "limitPerCustomer": null } } } ``` -------------------------------- ### Delete Appointment Example Source: https://wpamelia.com/documentation/api-appointments This example shows how to delete an appointment using a cURL request to the Amelia API. ```bash curl --location --request POST 'https://example.com/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/appointments/delete/173' \ --header 'Amelia: YOUR_API_KEY' ``` -------------------------------- ### Appointment Booking Form URL Example with Pre-selection Source: https://wpamelia.com/documentation/amelia-shortcodes Example URL demonstrating how to pre-select a service and employee in the appointment booking form using URL parameters. ```url https://yourbookingwebsite.com/booking/?ameliaServiceId=5&ameliaEmployeeId=1 ``` -------------------------------- ### Delete Payment Response Example Source: https://wpamelia.com/documentation/api-payments This is an example of a successful response when a payment is deleted via the WPamelia API. ```json { "message": "Payment successfully deleted.", "data": { "payment": { "id": 313, "customerBookingId": 268, "packageCustomerId": null, "parentId": null, "amount": 15, "gateway": "stripe", "gatewayTitle": "", "dateTime": "2026-02-18 13:00:00", "status": "paid", "data": "", "entity": "appointment", "created": "2026-02-18 11:22:49", "actionsCompleted": true, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null } } } ```