Skip to main content

Set booking cancel

Method PUT

https://my.easyweek.io/api/public/v2/bookings/{booking_uuid}/status/cancel

Description: This endpoint is used to cancel an existing booking and record the reason for cancellation. The status of a specific booking is updated to reflect that it has been canceled, and an internal note can be optionally added for further context.

Example Request

curl -i -X PUT \
https://my.easyweek.io/api/public/v2/bookings/{booking_uuid}/status/cancel \
-H 'Authorization: Bearer <YOUR_SECRET>' \
-H 'Workspace: <YOUR_WORKSPACE>'

Request body

{
"cancel_reason": "wrong_order",
"internal_notes": ""
}

Path Parameters

  • booking_uuid (string, required): The unique identifier for the booking that is being canceled.

Body Parameters

  • cancel_reason (enum, optional): A predefined reason for the cancellation. Acceptable reasons include canceled, didnt_come, postponed, wrong_order, spam, or other.
  • internal_notes (string, optional): Optional field to include any additional notes or information relevant to the cancellation.
  • staffer_uuid (string, optional): The UUID of the staff member who canceled the booking. This parameter is used to identify the individual who marked the service as canceled within the system.

Once the endpoint is called with a valid booking_uuid and cancelation reason, it will update the booking's status to canceled and log the specified reason along with any internal notes. This operation is crucial for maintaining accurate records and analytics pertaining to booking management.

Example Response

{
"uuid": "f017724b-d95a-4267-8704-df99a9edaf56",
"location_uuid": "123b2980-3506-4f8c-abce-97e1ab653406",
"start_time": "2023-12-21T10:00:00Z",
"end_time": "2023-12-21T10:30:00Z",
"timezone": "Europe/Berlin",
"duration": {
"value": 30,
"label": "minutes",
"iso_8601": "PT30M"
},
"quantity": 1,
"slots_count": 1,
"cancel_reason": null,
"canceled_by": null,
"is_canceled": true,
"is_completed": false,
"public_notes": "Hello world",
"currency": "EUR",
"policy": {
"policy_text": null,
"is_cancelable": true,
"cancellation_offset": 0,
"cancellation_text": null,
"is_changeable": true,
"change_offset": 0,
"change_text": null
},
"links": [
{
"type": "ical",
"link": "https://my.easyweek.io/api/notifications/bookings/6929741/icalendar"
},
{
"type": "google_meet",
"link": ""
},
{
"type": "zoom",
"link": ""
},
{
"type": "microsoft_teams",
"link": ""
}
],
"order": {
"tax": [],
"subtotal": 10000,
"subtotal_formatted": "€100.00",
"amount_paid": 0,
"amount_paid_formatted": "€0.00",
"total": 10000,
"total_formatted": "€100.00"
},
"ordered_services": [
{
"uuid": "ce889d66-dbf5-462f-bf67-a0dec4a48941",
"timezone": "Europe/Berlin",
"reserved_on": "2023-12-21T10:00:00Z",
"reserved_until": "2023-12-21T10:30:00Z",
"quantity": 1,
"name": "Beard trim",
"currency": "EUR",
"price": 10000,
"price_formatted": "€100.00",
"discount": 0,
"discount_formatted": "€0.00",
"original_price": 10000,
"original_price_formatted": "€100.00",
"tax_name": null,
"tax_value": null,
"duration": {
"value": 30,
"label": "minutes",
"iso_8601": "PT30M"
},
"original_duration": {
"value": 30,
"label": "minutes",
"iso_8601": "PT30M"
}
}
]
}