Here you can see API endpoints related to events.
You can see all the API endpoints with examples of requests and responses in the Amelia API Postman collection which you can download here.
Authorization
All Amelia endpoints use an API key authorization, using the header property named “Amelia”.
Path
Amelia API paths start with: {{your_site_URL}}/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1
Add Event
Create an event.
Method
This endpoint accepts POST requests.
Path
/events
Required Properties
The following properties are required.
Key | Type | Description |
---|---|---|
name | string | The name of the event. |
periods | array | An array of periods of the event. Fields in the period object: “periodStart” and “periodEnd” |
maxCapacity | integer | The maximum number of people for the event. |
price | double | The price of the event. |
Optional Properties
The following properties are optional
Key | Type | Description |
---|---|---|
show | boolean | Whether event will be visible on the frontend. False by default. |
parentId
|
integer | The id of the parent/first event in case of recurring events. |
bookingOpens
|
string | The date and time from when the event is open for booking. By default it is open after it is created. The format is “YYYY-MM-DD HH:mm:ss” |
bookingCloses
|
string | The date and time when the event closes for booking. By default the event is closed after it starts. The format is “YYYY-MM-DD HH:mm:ss” |
bookingOpensRec
|
string | Whether the recurring events will have the same opening date and time as the first event or if it should be calculated based on the difference of the start date and opening date of the first event. Possible values: “same” and “calculate”. The default values is “same”. |
bookingClosesRec
|
string | Whether the recurring events will have the same closing date and time as the first event or if it should be calculated based on the difference of the start date and closing date of the first event. Possible values: “same” and “calculate”. The default values is “same”. |
recurring
|
object | The object that defines the recurring nature of the event. |
bringingAnyone
|
boolean | Whether customers can add extra people. False by default. |
bookMultipleTimes
|
boolean | Whether the same customer can book multiple times. False by default. |
maxExtraPeople
|
integer | The maximum number of people the customer can bring with them. |
tags
|
array | Array of tag objects for the event. The tag object has the property “name”. |
providers
|
array | The array of objects containing the employee ids which will work as staff. |
description
|
string | The description of the event. |
gallery
|
array | An array of picture paths for the gallery. |
color
|
string | The color string in HEX. |
locationId
|
integer | The location id. |
customLocation
|
string | The custom location of the event. |
settings
|
string | JSON encoded string representing the specific settings for the event. By default, general settings are used. |
translations
|
string | JSON encoded string representing the translations for the event name and description |
depositPayment
|
string | The type of deposit. Possible values: “disabled”, “fixed”, “percentage” |
deposit
|
integer | The amount for the deposit. |
depositPerPerson
|
boolean | Whether the deposit will be multiplied by the number of people or not. False by default. |
fullPayment
|
boolean | Whether the customer has the option to pay the full amount when booking or not. False by default. |
customPricing
|
boolean | Whether custom pricing (tickets) is enabled. False by default. |
organizerId
|
integer | The id of the employee who is the organizer. |
closeAfterMin
|
integer | Close the event if the set minimum is reached. |
closeAfterMinBookings
|
boolean | Whether closeAfterMin applies to bookings or number of people in every booking. By default it is false and closeAfterMin is applies to number of people. |
customTickets
|
array | An array of the tickets. |
maxCustomCapacity
|
integer | The joint maximum capacity of all ticket types |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "parentId": null, "name": "Amelia Event", "periods": [ { "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00" } ], "bookingOpens": "2023-10-05 14:00:00", "bookingCloses": "2023-10-09 14:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "recurring": { "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null, "cycleInterval": 1, "cycle": "weekly", "order": null, "until": "2023-10-22 00:00:00" }, "bringingAnyone": true, "bookMultipleTimes": true, "maxCapacity": 100, "maxExtraPeople": null, "price": 100, "tags": [ { "name": "tag1" } ], "providers": [ { "id": 1 }, { "id": 3 } ], "description": "", "gallery": [], "color": "#1788FB", "show": true, "locationId": 2, "customLocation": null, "applyGlobally": true, "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":true},\"stripe\":{\"enabled\":true},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "translations": null, "deposit": 10, "depositPayment": "fixed", "depositPerPerson": 1, "fullPayment": true, "customPricing": false, "organizerId": 1, "closeAfterMin": null, "closeAfterMinBookings": false, "customTickets": [ { "name": "ticket1", "price": 10, "spots": 10, "enabled": true, "dateRanges": "[]" }, { "name": "ticket2", "price": 20, "spots": 20, "enabled": true, "dateRanges": "[]" } ], "maxCustomCapacity": null }'
{ "message": "Successfully added new event.", "data": { "events": [ { "id": 122, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 125, "eventId": 122, "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": "2023-10-05 14:00:00", "bookingCloses": "2023-10-09 14:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": null, "status": "approved", "recurring": { "cycle": "weekly", "order": 1, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 45, "eventId": 122, "name": "tag1" } ], "customTickets": [ { "id": 52, "eventId": 122, "name": "ticket1", "enabled": true, "price": 10, "dateRangePrice": null, "spots": 10, "dateRanges": "[]", "sold": 0, "translations": null }, { "id": 53, "eventId": 122, "name": "ticket2", "enabled": true, "price": 20, "dateRangePrice": null, "spots": 20, "dateRanges": "[]", "sold": 0, "translations": null } ], "gallery": [], "providers": [ { "id": 1, "firstName": "", "lastName": "", "birthday": null, "email": null, "phone": null, "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, { "id": 3, "firstName": "", "lastName": "", "birthday": null, "email": null, "phone": null, "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": 122, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": null }, { "id": 123, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 126, "eventId": 123, "periodStart": "2023-10-17 14:00:00", "periodEnd": "2023-10-27 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": "2023-10-05 14:00:00", "bookingCloses": "2023-10-09 14:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": null, "status": "approved", "recurring": { "cycle": "weekly", "order": 2, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 46, "eventId": 123, "name": "tag1" } ], "customTickets": [ { "id": 54, "eventId": 123, "name": "ticket1", "enabled": true, "price": 10, "dateRangePrice": null, "spots": 10, "dateRanges": "[]", "sold": 0, "translations": null }, { "id": 55, "eventId": 123, "name": "ticket2", "enabled": true, "price": 20, "dateRangePrice": null, "spots": 20, "dateRanges": "[]", "sold": 0, "translations": null } ], "gallery": [], "providers": [ { "id": 1, "firstName": "", "lastName": "", "birthday": null, "email": null, "phone": null, "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, { "id": 3, "firstName": "", "lastName": "", "birthday": null, "email": null, "phone": null, "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": 122, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": null } ] } }
Update event
Update event details.
Method
This endpoint accepts POST requests.
Path
/events/{{event_id}}
Optional Properties
Key | Type | Description |
---|---|---|
name | string | The name of the event. |
periods | array | An array of periods of the event. Fields in the period object: “periodStart” and “periodEnd” |
maxCapacity | integer | The maximum number of people for the event. |
price | double | The price of the event. |
show | boolean | Whether event will be visible on the frontend. False by default. |
parentId
|
integer | The id of the parent/first event in case of recurring events. |
bookingOpens
|
string | The date and time from when the event is open for booking. By default it is open after it is created. The format is “YYYY-MM-DD HH:mm:ss” |
bookingCloses
|
string | The date and time when the event closes for booking. By default the event is closed after it starts. The format is “YYYY-MM-DD HH:mm:ss” |
bookingOpensRec
|
string | Whether the recurring events will have the same opening date and time as the first event or if it should be calculated based on the difference of the start date and opening date of the first event. Possible values: “same” and “calculate”. The default values is “same”. |
bookingClosesRec
|
string | Whether the recurring events will have the same closing date and time as the first event or if it should be calculated based on the difference of the start date and closing date of the first event. Possible values: “same” and “calculate”. The default values is “same”. |
recurring
|
object | The object that defines the recurring nature of the event. |
bringingAnyone
|
boolean | Whether customers can add extra people. False by default. |
bookMultipleTimes
|
boolean | Whether the same customer can book multiple times. False by default. |
maxExtraPeople
|
integer | The maximum number of people the customer can bring with them. |
tags
|
array | Array of tag objects for the event. The tag object has the property “name”. |
providers
|
array | The array of objects containing the employee ids which will work as staff. The employee ids not sent will be removed. |
description
|
string | The description of the event. |
gallery
|
array | An array of picture paths for the gallery. |
color
|
string | The color string in HEX. |
locationId
|
integer | The location id. |
customLocation
|
string | The custom location of the event. |
settings
|
string | JSON encoded string representing the specific settings for the event. By default, general settings are used. |
translations
|
string | JSON encoded string representing the translations for the event name and description |
depositPayment
|
string | The type of deposit. Possible values: “disabled”, “fixed”, “percentage” |
deposit
|
integer | The amount for the deposit. |
depositPerPerson
|
boolean | Whether the deposit will be multiplied by the number of people or not. False by default. |
fullPayment
|
boolean | Whether the customer has the option to pay the full amount when booking or not. False by default. |
customPricing
|
boolean | Whether custom pricing (tickets) is enabled. False by default. |
organizerId
|
integer | The id of the employee who is the organizer. |
closeAfterMin
|
integer | Close the event if the set minimum is reached. |
closeAfterMinBookings
|
boolean | Whether closeAfterMin applies to bookings or number of people in every booking. By default it is false and closeAfterMin is applies to number of people. |
customTickets
|
array | An array of the tickets. |
maxCustomCapacity
|
integer | The joint maximum capacity of all ticket types |
applyGlobally
|
boolean | Whether to update all the following recurring events as well. False by default. |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/122' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "parentId": null, "name": "Amelia Event", "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": "same", "bookingClosesRec": "same", "bringingAnyone": true, "bookMultipleTimes": true, "maxCapacity": 100, "maxCustomCapacity": null, "maxExtraPeople": null, "price": 100, "tags": [ { "name": "tag1" } ], "providers": [ { "id": 1 }, { "id": 3 } ], "description": "", "gallery": [], "color": "#1788FB", "show": true, "locationId": 2, "customLocation": null, "applyGlobally": true, "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":true},\"stripe\":{\"enabled\":true},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "translations": null, "deposit": 10, "depositPayment": "fixed", "depositPerPerson": 1, "fullPayment": true, "customPricing": false, "organizerId": 1, "closeAfterMin": null, "closeAfterMinBookings": false, "customTickets": [] }'
{ "message": "Successfully updated event.", "data": { "events": { "rescheduled": [], "added": [], "deleted": [], "cloned": [ { "id": 122, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 125, "eventId": 122, "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": "2023-10-05 14:00:00", "bookingCloses": "2023-10-09 14:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": "calculate", "status": "approved", "recurring": { "cycle": "weekly", "order": 1, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 45, "eventId": 122, "name": "tag1" } ], "customTickets": [ { "id": 53, "eventId": 122, "name": "ticket2", "enabled": true, "price": 20, "dateRangePrice": null, "spots": 20, "dateRanges": "[]", "sold": 0, "translations": null }, { "id": 52, "eventId": 122, "name": "ticket1", "enabled": true, "price": 10, "dateRangePrice": null, "spots": 10, "dateRanges": "[]", "sold": 0, "translations": null } ], "gallery": [], "providers": [ { "id": 3, "firstName": "Milica2", "lastName": "Employee2", "birthday": null, "email": "[email protected]", "phone": "", "type": "provider", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" }, { "id": 1, "firstName": "Milica", "lastName": "Employee", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "provider", "status": null, "note": "note 123345678900", "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": "{\"firstName\":{\"de_DE\":\"MiliceGerman\",\"fr_FR\":\"MilicaFrench\"}}", "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": false }, { "id": 123, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 126, "eventId": 123, "periodStart": "2023-10-17 14:00:00", "periodEnd": "2023-10-27 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": "2023-10-05 14:00:00", "bookingCloses": "2023-10-09 14:00:00", "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": null, "status": "approved", "recurring": { "cycle": "weekly", "order": 2, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 46, "eventId": 123, "name": "tag1" } ], "customTickets": [ { "id": 55, "eventId": 123, "name": "ticket2", "enabled": true, "price": 20, "dateRangePrice": null, "spots": 20, "dateRanges": "[]", "sold": 0, "translations": null }, { "id": 54, "eventId": 123, "name": "ticket1", "enabled": true, "price": 10, "dateRangePrice": null, "spots": 10, "dateRanges": "[]", "sold": 0, "translations": null } ], "gallery": [], "providers": [ { "id": 1, "firstName": "Milica", "lastName": "Employee", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "provider", "status": null, "note": "note 123345678900", "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": "{\"firstName\":{\"de_DE\":\"MiliceGerman\",\"fr_FR\":\"MilicaFrench\"}}", "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" }, { "id": 3, "firstName": "Milica2", "lastName": "Employee2", "birthday": null, "email": "[email protected]", "phone": "", "type": "provider", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": 122, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": false } ], "edited": [] }, "zoomUserChanged": null, "zoomUsersLicenced": false, "newInfo": null, "newProviders": [], "removeProviders": [], "organizerChanged": false, "newOrganizer": 1, "notifyParticipants": 1 } }
Update event status
Update event status.
Method
This endpoint accepts POST requests.
Path
/events/status/{{event_id}}
Required Properties
The following properties are required.
Key | Type | Description |
---|---|---|
status
|
string | The new status of the event. Possible values: “approved”, “rejected” |
applyGlobally
|
boolean | Whether the status update is applied to every following recurring event. |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/status/122' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "applyGlobally": false, "status": "rejected" }'
{ "message": "Successfully updated event status", "data": { "status": "rejected", "message": "Booking status has been changed to rejected", "events": [ { "id": 122, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 125, "eventId": 122, "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": "calculate", "status": "rejected", "recurring": { "cycle": "weekly", "order": 1, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 50, "eventId": 122, "name": "tag1" } ], "customTickets": [], "gallery": [], "providers": [ { "id": 3, "firstName": "Milica2", "lastName": "Employee2", "birthday": null, "email": "[email protected]", "phone": "", "type": "provider", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" }, { "id": 1, "firstName": "Milica", "lastName": "Employee", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "provider", "status": null, "note": "note 123345678900", "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": "{\"firstName\":{\"de_DE\":\"MiliceGerman\",\"fr_FR\":\"MilicaFrench\"}}", "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": null, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": false } ] } }
Update event booking
Update event booking.
Method
This endpoint accepts POST requests.
Path
/events/bookings/{{event_booking_id}}
Required Properties
The following properties are required.
Key | Type | Description |
---|---|---|
bookings
|
array | Array of that contains the booking object to update. |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/bookings/1145' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "bookings": [ { "customFields": { "7": { "label": "My address", "value": "", "type": "address" }, "13": { "label": "file", "value": "", "type": "file" } }, "persons": 1, "customerId": 10, "ticketsData": [ { "id": 62, "eventTicketId": 39, "customerBookingId": 1145, "persons": 2, "price": 20 }, { "id": 63, "eventTicketId": 38, "customerBookingId": 1145, "persons": 2, "price": 10 } ] } ], "couponCode": null, "createPaymentLinks": false }'
{ "message": "Successfully updated booking", "data": { "type": "event", "event": { "id": 116, "name": "tiket", "description": "", "color": "#1788FB", "price": 0, "deposit": 0, "depositPayment": "disabled", "depositPerPerson": true, "pictureFullPath": null, "pictureThumbPath": null, "extras": [], "coupons": [], "position": null, "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":false},\"stripe\":{\"enabled\":false},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": false, "bookings": [ { "id": 1145, "customerId": 10, "customer": { "id": 10, "firstName": "Amelia", "lastName": "Test", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, "status": "approved", "extras": [], "couponId": null, "price": 50, "coupon": null, "customFields": "{\"7\":{\"label\":\"My address\",\"value\":\"\",\"type\":\"address\"},\"13\":{\"label\":\"file\",\"value\":\"\",\"type\":\"file\"}}", "info": "{\"firstName\":\"Amelia\",\"lastName\":\"Test\",\"phone\":\"+381631652656\",\"locale\":\"\",\"timeZone\":null,\"urlParams\":null}", "appointmentId": null, "persons": 0, "token": null, "payments": [ { "id": 1153, "customerBookingId": 1145, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2023-11-22 10:30: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": [ { "id": 63, "eventTicketId": 38, "customerBookingId": 1145, "persons": 8, "price": 10 }, { "id": 62, "eventTicketId": 39, "customerBookingId": 1145, "persons": 3, "price": 20 }, ], "duration": null, "created": null, "actionsCompleted": null, "isUpdated": null } ], "periods": [ { "id": 119, "eventId": 116, "periodStart": "2023-11-22 11:30:00", "periodEnd": "2023-11-22 12:00:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": null, "bookingClosesRec": null, "ticketRangeRec": null, "status": "approved", "recurring": null, "maxCapacity": 1, "maxCustomCapacity": null, "show": true, "tags": [], "customTickets": [ { "id": 39, "eventId": 116, "name": "ticket2", "enabled": true, "price": 20, "dateRangePrice": null, "spots": 20, "dateRanges": "[]", "sold": 0, "translations": null }, { "id": 38, "eventId": 116, "name": "ticket1", "enabled": true, "price": 10, "dateRangePrice": null, "spots": 10, "dateRanges": "[]", "sold": 0, "translations": null } ], "gallery": [], "providers": [], "notifyParticipants": 1, "locationId": null, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:42:39", "zoomUserId": null, "organizerId": null, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": true, "closeAfterMin": null, "closeAfterMinBookings": null, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": true }, "booking": { "id": 1145, "customerId": 10, "customer": { "id": 10, "firstName": "Amelia", "lastName": "Test", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, "status": "approved", "extras": [], "couponId": null, "price": 50, "coupon": null, "customFields": "{\"7\":{\"label\":\"My address\",\"value\":\"\",\"type\":\"address\"},\"13\":{\"label\":\"file\",\"value\":\"\",\"type\":\"file\"}}", "info": "{\"firstName\":\"Amelia\",\"lastName\":\"Test\",\"phone\":\"+381631652656\",\"locale\":\"\",\"timeZone\":null,\"urlParams\":null}", "appointmentId": null, "persons": 0, "token": null, "payments": [ { "id": 1153, "customerBookingId": 1145, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2023-11-22 10:30: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": [ { "id": 63, "eventTicketId": 38, "customerBookingId": 1145, "persons": 8, "price": 10 }, { "id": 62, "eventTicketId": 39, "customerBookingId": 1145, "persons": 3, "price": 20 }, { "id": 61, "eventTicketId": 38, "customerBookingId": 1145, "persons": 2, "price": 10 }, { "id": 60, "eventTicketId": 39, "customerBookingId": 1145, "persons": 2, "price": 20 } ], "duration": null, "created": null, "actionsCompleted": null, "isUpdated": null }, "appointmentStatusChanged": false, "bookingStatusChanged": true, "paymentId": 1153, "createPaymentLinks": false } }
Get event
Retrieve event details.
Method
This endpoint accepts GET requests.
Path
/events/{{event_id}}
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/122' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0'
{ "message": "Successfully retrieved event", "data": { "event": { "id": 122, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [], "periods": [ { "id": 125, "eventId": 122, "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": "calculate", "status": "approved", "recurring": { "cycle": "weekly", "order": 1, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 50, "eventId": 122, "name": "tag1" } ], "customTickets": [], "gallery": [], "providers": [ { "id": 3, "firstName": "Milica2", "lastName": "Employee2", "birthday": null, "email": "[email protected]", "phone": "", "type": "provider", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" }, { "id": 1, "firstName": "Milica", "lastName": "Employee", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "provider", "status": null, "note": "note 123345678900", "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": "{\"firstName\":{\"de_DE\":\"MiliceGerman\",\"fr_FR\":\"MilicaFrench\"}}", "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": 1, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": false } } }
Get events
Retrieve events.
Method
This endpoint accepts GET requests.
Path
/events
Optional Properties
You can use the following query parameters for filtering the events.
Key | Type | Description |
---|---|---|
search
|
string | A search term |
page
|
integer | The page of the events. |
dates
|
array | An array of the start (first element) and end date (second element) for the search. |
customerId
|
integer | The id of the customer who booked the events. |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events&search=test&dates[0]=2023-05-01&dates[1]=2023-05-31&page=1' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0'
{ "message": "Successfully retrieved events", "data": { "events": [ { "id": 16, "name": "test5", "description": "", "color": "#1788FB", "price": 20, "deposit": 0, "depositPayment": "disabled", "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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":true}}", "fullPayment": false, "bookings": [], "periods": [ { "id": 16, "eventId": 16, "periodStart": "2023-05-20 15:00:00", "periodEnd": "2023-05-20 23:00:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": "calculate", "status": "approved", "recurring": { "cycle": "monthly", "order": 3, "until": "2023-05-21 02:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": "2023-03-20 14:00:00", "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 70, "maxCustomCapacity": null, "show": true, "tags": [], "customTickets": [], "gallery": [], "providers": [], "notifyParticipants": 1, "locationId": null, "location": null, "customLocation": null, "parentId": 14, "created": "2023-03-17 16:17:27", "zoomUserId": null, "organizerId": null, "type": "event", "bringingAnyone": false, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": false, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": true, "bookable": false, "cancelable": false, "opened": false, "closed": true, "places": 65, "upcoming": false, "full": false } ], "count": 1 } }
Get calendar events
Retrieve google/outlook calendar events to see if there is a conflict.
Method
This endpoint accepts POST requests.
Path
/events/calendar
Required Properties
The following properties are required.
Key | Type | Description |
---|---|---|
providers
|
array | An array of employee ids for which to check the calendars |
periods
|
array | An array of periods to check |
Optional Properties
The following properties are optional.
Key | Type | Description |
---|---|---|
eventIds
|
array | An array of Amelia event ids not to include in the google/outlook calendars search (first element – eventId, second element – parentId |
recrring
|
object | The recurring object of the event |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/calendar' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "providers": [ { "id": 1 } ], "periods": [ { "id": null, "eventId": null, "periodStart": "2023-09-05 12:30:00", "periodEnd": "2023-09-05 23:30:00" } ] "eventIds": [ 82, 81 ], "recurring": { "cycle": null, "order": null, "until": null, "cycleInterval": null } }'
{ "message": "Conflict with the event in employee's google/outlook calendar", "data": { "calendarConflict": true, "events": [ { "@odata.etag": "W/\"2M/Z1PukYUC7RvpUFIYk6gAGscMEtg==\"", "id": "AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABrGgABAAAAA=", "createdDateTime": "2023-08-24T16:21:33.2522436Z", "lastModifiedDateTime": "2023-08-24T16:21:34.9433647Z", "changeKey": "2M/Z1PukYUC7RvpUFIYk6gAGscMEtg==", "categories": [], "transactionId": null, "originalStartTimeZone": "UTC", "originalEndTimeZone": "UTC", "iCalUId": "040000008200E00074C5B7101A82E00800000000A2ADF30BA7D6D90100000000000000001000000087BD80764B401F4AA521D4847D80620A", "reminderMinutesBeforeStart": 15, "isReminderOn": true, "hasAttachments": false, "subject": "amelia service", "bodyPreview": "", "importance": "normal", "sensitivity": "normal", "isAllDay": false, "isCancelled": false, "isOrganizer": true, "responseRequested": true, "seriesMasterId": null, "showAs": "busy", "type": "singleInstance", "webLink": "https://outlook.live.com/owa/?itemid=AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABrGgABAAAAA%3D&exvsurl=1&path=/calendar/item", "onlineMeetingUrl": null, "isOnlineMeeting": false, "onlineMeetingProvider": "unknown", "allowNewTimeProposals": true, "occurrenceId": null, "isDraft": false, "hideAttendees": false, "responseStatus": { "response": "organizer", "time": "0001-01-01T00:00:00Z" }, "body": { "contentType": "html", "content": "" }, "start": { "dateTime": "2023-09-05T10:30:00.0000000", "timeZone": "UTC" }, "end": { "dateTime": "2023-09-05T11:00:00.0000000", "timeZone": "UTC" }, "location": { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] }, "locations": [ { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] } ], "recurrence": null, "attendees": [], "organizer": { "emailAddress": { "name": "Milica Nikolić", "address": "[email protected]" } }, "onlineMeeting": null, "singleValueExtendedProperties": [ { "id": "Integer {66f5a359-4659-4830-9070-00049ec6ac6e} Name appointmentId", "value": "681" } ] }, { "@odata.etag": "W/\"2M/Z1PukYUC7RvpUFIYk6gAGrZ9Xqg==\"", "id": "AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABq18lz4AAAA=", "createdDateTime": "2023-08-18T17:21:35.9754617Z", "lastModifiedDateTime": "2023-08-18T17:21:36.7373403Z", "changeKey": "2M/Z1PukYUC7RvpUFIYk6gAGrZ9Xqg==", "categories": [], "transactionId": null, "originalStartTimeZone": "UTC", "originalEndTimeZone": "UTC", "iCalUId": "040000008200E00074C5B7101A82E00800000000A996DC70F8D1D90100000000000000001000000098D09A71A61E124981A4CB045426B80D", "reminderMinutesBeforeStart": 15, "isReminderOn": true, "hasAttachments": false, "subject": "milica service", "bodyPreview": "", "importance": "normal", "sensitivity": "normal", "isAllDay": false, "isCancelled": false, "isOrganizer": true, "responseRequested": true, "seriesMasterId": null, "showAs": "busy", "type": "singleInstance", "webLink": "https://outlook.live.com/owa/?itemid=AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABq18lz4AAAA%3D&exvsurl=1&path=/calendar/item", "onlineMeetingUrl": null, "isOnlineMeeting": false, "onlineMeetingProvider": "unknown", "allowNewTimeProposals": true, "occurrenceId": null, "isDraft": false, "hideAttendees": false, "responseStatus": { "response": "organizer", "time": "0001-01-01T00:00:00Z" }, "body": { "contentType": "html", "content": "" }, "start": { "dateTime": "2023-09-05T12:30:00.0000000", "timeZone": "UTC" }, "end": { "dateTime": "2023-09-05T14:00:00.0000000", "timeZone": "UTC" }, "location": { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] }, "locations": [ { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] } ], "recurrence": null, "attendees": [], "organizer": { "emailAddress": { "name": "Milica Nikolić", "address": "[email protected]" } }, "onlineMeeting": null, "singleValueExtendedProperties": [ { "id": "Integer {66f5a359-4659-4830-9070-00049ec6ac6e} Name appointmentId", "value": "649" } ] }, { "@odata.etag": "W/\"2M/Z1PukYUC7RvpUFIYk6gAGrZ/oLg==\"", "id": "AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABq18l0oAAAA=", "createdDateTime": "2023-08-22T12:35:58.7875258Z", "lastModifiedDateTime": "2023-08-22T12:36:01.5270901Z", "changeKey": "2M/Z1PukYUC7RvpUFIYk6gAGrZ/oLg==", "categories": [], "transactionId": null, "originalStartTimeZone": "UTC", "originalEndTimeZone": "UTC", "iCalUId": "040000008200E00074C5B7101A82E00800000000E187F333F5D4D901000000000000000010000000F37D78895258F44294CF56BE6DD0A76E", "reminderMinutesBeforeStart": 15, "isReminderOn": true, "hasAttachments": false, "subject": "new service", "bodyPreview": "", "importance": "normal", "sensitivity": "normal", "isAllDay": false, "isCancelled": false, "isOrganizer": true, "responseRequested": true, "seriesMasterId": null, "showAs": "busy", "type": "singleInstance", "webLink": "https://outlook.live.com/owa/?itemid=AQMkADAwATYwMAItZTk0ZS1lMGRmLTAwAi0wMAoARgAAA3egvCudOo1GsyywV8xCQ2wHANjP2dT7pGFAu0b6VBSGJOoAAAIBDQAAANjP2dT7pGFAu0b6VBSGJOoABq18l0oAAAA%3D&exvsurl=1&path=/calendar/item", "onlineMeetingUrl": null, "isOnlineMeeting": false, "onlineMeetingProvider": "unknown", "allowNewTimeProposals": true, "occurrenceId": null, "isDraft": false, "hideAttendees": false, "responseStatus": { "response": "organizer", "time": "0001-01-01T00:00:00Z" }, "body": { "contentType": "html", "content": "" }, "start": { "dateTime": "2023-09-05T16:00:00.0000000", "timeZone": "UTC" }, "end": { "dateTime": "2023-09-05T16:30:00.0000000", "timeZone": "UTC" }, "location": { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] }, "locations": [ { "displayName": "Location2", "locationUri": "", "locationType": "default", "uniqueId": "Location2", "uniqueIdType": "private", "address": { "street": "Velisava Vulovića 18, Belgrade, Serbia", "city": "", "state": "", "countryOrRegion": "", "postalCode": "" }, "coordinates": [] } ], "recurrence": null, "attendees": [], "organizer": { "emailAddress": { "name": "Milica Nikolić", "address": "[email protected]" } }, "onlineMeeting": null, "singleValueExtendedProperties": [ { "id": "Integer {66f5a359-4659-4830-9070-00049ec6ac6e} Name appointmentId", "value": "673" } ] } ] } }
Get event delete effect
See if the event can be deleted (whether it is canceled).
Method
This endpoint accepts GET requests.
Path
/events/effect/{{event_id}}
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/effect/122' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0'
{ "message": "Successfully retrieved message.", "data": { "valid": false, "message": "Please cancel the event first before deleting it." } }
Delete event booking
Delete event booking.
Method
This endpoint accepts POST requests.
Path
/events/bookings/delete/{{event_booking_id}}
Example
curl --location --request POST 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/bookings/delete/1145' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0'
{ "message": "Successfully deleted event booking", "data": { "type": "event", "event": { "id": 116, "name": "tiket", "description": "", "color": "#1788FB", "price": 0, "deposit": 0, "depositPayment": "disabled", "depositPerPerson": true, "pictureFullPath": null, "pictureThumbPath": null, "extras": [], "coupons": [], "position": null, "settings": "{\"payments\":{\"paymentLinks\":{\"enabled\":true,\"changeBookingStatus\":false,\"redirectUrl\":null},\"onSite\":true,\"payPal\":{\"enabled\":false},\"stripe\":{\"enabled\":false},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": false, "bookings": [ { "id": 1145, "customerId": 10, "customer": { "id": 10, "firstName": "Amelia", "lastName": "Test", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, "status": "approved", "extras": [], "couponId": null, "price": 50, "coupon": null, "customFields": "{\"7\":{\"label\":\"My address\",\"value\":\"\",\"type\":\"address\"},\"13\":{\"label\":\"file\",\"value\":\"\",\"type\":\"file\"}}", "info": "{\"firstName\":\"Amelia\",\"lastName\":\"Test\",\"phone\":\"+381631652656\",\"locale\":\"\",\"timeZone\":null,\"urlParams\":null}", "appointmentId": null, "persons": 0, "token": null, "payments": [ { "id": 1153, "customerBookingId": 1145, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2023-11-22 11:30: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": null, "created": null, "actionsCompleted": null, "isUpdated": null } ], "periods": [ { "id": 119, "eventId": 116, "periodStart": "2023-11-22 11:30:00", "periodEnd": "2023-11-22 12:00:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": null, "bookingClosesRec": null, "ticketRangeRec": null, "status": "approved", "recurring": null, "maxCapacity": 1, "maxCustomCapacity": null, "show": true, "tags": [], "customTickets": [], "gallery": [], "providers": [], "notifyParticipants": true, "locationId": null, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:42:39", "zoomUserId": null, "organizerId": null, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": true, "closeAfterMin": null, "closeAfterMinBookings": null, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": true }, "booking": { "id": 1145, "customerId": 10, "customer": { "id": 10, "firstName": "Amelia", "lastName": "Test", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, "status": "rejected", "extras": [], "couponId": null, "price": 50, "coupon": null, "customFields": "{\"7\":{\"label\":\"My address\",\"value\":\"\",\"type\":\"address\"},\"13\":{\"label\":\"file\",\"value\":\"\",\"type\":\"file\"}}", "info": "{\"firstName\":\"Amelia\",\"lastName\":\"Test\",\"phone\":\"+381631652656\",\"locale\":\"\",\"timeZone\":null,\"urlParams\":null}", "appointmentId": null, "persons": 0, "token": null, "payments": [ { "id": 1153, "customerBookingId": 1145, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2023-11-22 11:30: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": true, "isLastBooking": null, "packageCustomerService": null, "ticketsData": [], "duration": null, "created": null, "actionsCompleted": null, "isUpdated": null }, "appointmentStatusChanged": false } }
Delete event
Delete event.
Method
This endpoint accepts POST requests.
Path
/events/delete/{{event_id}}
Optional Properties
The following properties are optional.
Key | Type | Description |
---|---|---|
applyGlobally
|
boolean | Whether to delete the following recurring events as well |
Example
curl --location 'http://localhost/amelia/wp-admin/admin-ajax.php?action=wpamelia_api&call=/api/v1/events/delete/122' \ --header 'Content-Type: application/json' \ --header 'Amelia: qUmkNNOLrWbf28izIgNnZ29O+7gVWL5M+8ySJ8VXq3r0' \ --data '{ "applyGlobally": false }'
{ "message": "Successfully deleted event", "data": { "event": { "id": 122, "name": "Amelia 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},\"mollie\":{\"enabled\":false},\"razorpay\":{\"enabled\":false}},\"general\":{\"minimumTimeRequirementPriorToCanceling\":null,\"redirectUrlAfterAppointment\":null},\"zoom\":{\"enabled\":true},\"lessonSpace\":{\"enabled\":false}}", "fullPayment": true, "bookings": [ { "id": 1144, "customerId": 10, "customer": { "id": 10, "firstName": "Amelia", "lastName": "Test", "birthday": null, "email": "[email protected]", "phone": "+381631652656", "type": "customer", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "gender": null }, "status": "approved", "extras": [], "couponId": null, "price": 100, "coupon": null, "customFields": "[]", "info": "{\"firstName\":\"Amelia\",\"lastName\":\"Test\",\"phone\":\"+381631652656\",\"locale\":\"\",\"timeZone\":null,\"urlParams\":null}", "appointmentId": null, "persons": 6, "token": "06912ed153", "payments": [ { "id": 1152, "customerBookingId": 1144, "packageCustomerId": null, "parentId": null, "amount": 0, "gateway": "onSite", "gatewayTitle": "", "dateTime": "2023-10-10 14:00:00", "status": "pending", "data": "", "entity": null, "created": null, "actionsCompleted": null, "wcOrderId": null, "wcOrderUrl": null, "wcItemCouponValue": null, "wcItemTaxValue": null, "transactionId": null } ], "utcOffset": null, "aggregatedPrice": false, "isChangedStatus": null, "isLastBooking": null, "packageCustomerService": null, "ticketsData": [], "duration": null, "created": null, "actionsCompleted": null, "isUpdated": null } ], "periods": [ { "id": 125, "eventId": 122, "periodStart": "2023-10-10 14:00:00", "periodEnd": "2023-10-20 22:30:00", "zoomMeeting": null, "lessonSpace": null, "bookings": [], "googleCalendarEventId": null, "googleMeetUrl": null, "outlookCalendarEventId": null } ], "bookingOpens": null, "bookingCloses": null, "bookingOpensRec": "same", "bookingClosesRec": "same", "ticketRangeRec": "calculate", "status": "approved", "recurring": { "cycle": "weekly", "order": 1, "until": "2023-10-22 00:00:00", "cycleInterval": 1, "monthlyRepeat": "each", "monthDate": null, "monthlyOnRepeat": null, "monthlyOnDay": null }, "maxCapacity": 100, "maxCustomCapacity": null, "show": true, "tags": [ { "id": 52, "eventId": 122, "name": "tag1" } ], "customTickets": [], "gallery": [], "providers": [ { "id": 3, "firstName": "Milica2", "lastName": "Employee2", "birthday": null, "email": "[email protected]", "phone": "", "type": "provider", "status": null, "note": null, "zoomUserId": null, "countryPhoneIso": null, "externalId": null, "pictureFullPath": null, "pictureThumbPath": null, "translations": null, "weekDayList": [], "serviceList": [], "dayOffList": [], "specialDayList": [], "locationId": null, "googleCalendar": null, "outlookCalendar": null, "timeZone": null, "description": "" } ], "notifyParticipants": 1, "locationId": 2, "location": null, "customLocation": null, "parentId": null, "created": "2023-11-03 16:48:54", "zoomUserId": null, "organizerId": null, "type": "event", "bringingAnyone": true, "bookMultipleTimes": true, "translations": null, "customPricing": false, "closeAfterMin": null, "closeAfterMinBookings": null, "maxExtraPeople": null, "initialEventStart": null, "initialEventEnd": null, "aggregatedPrice": false }, "deletedEvents": {} } }