Cancel Reservation

Cancel an existing reservation. The reservation status is set to CANCELLED and the record is preserved for audit purposes.

When to use this endpoint

  • Process a guest cancellation request
  • Cancel on behalf of the host (e.g. maintenance, double booking)
  • Handle no-show scenarios after the check-in window expires

Cancellation is permanent

Once a reservation is cancelled, it cannot be restored to its previous status. Always verify the cancellation policy and confirm with the guest before calling this endpoint. If you need to re-book, create a new reservation instead.

Cancel a reservation

DELETE/v1/reservations/:id
curl -X DELETE "https://api.repull.dev/v1/reservations/456" \
  -H "Authorization: Bearer sk_test_YOUR_KEY" \
  -H "X-Workspace-Id: YOUR_WORKSPACE_ID"

Response format

Returns the reservation object with its status set to CANCELLED.

{
  "data": {
    "id": "456",
    "propertyId": "123",
    "status": "CANCELLED",
    "source": "BOOKING_COM",
    "confirmationCode": "BK-98765",
    "checkIn": "2026-06-01",
    "checkOut": "2026-06-05",
    "primaryGuest": {
      "firstName": "Marco",
      "lastName": "Rossi",
      "email": "marco@example.com",
      "phone": "+39-333-1234567",
      "language": "it"
    },
    "occupancy": {
      "adults": 2,
      "children": 0,
      "infants": 0,
      "pets": 0
    },
    "financials": {
      "totalPrice": 1200,
      "currency": "EUR",
      "paymentStatus": "refunded",
      "breakdown": {
        "basePrice": 1000,
        "cleaningFee": 100,
        "fees": [{ "type": "SERVICE_FEE", "amount": 60 }],
        "taxes": [{ "type": "VAT", "amount": 40, "rate": 0.10 }],
        "discounts": []
      }
    },
    "bookedAt": "2026-05-10T11:00:00Z",
    "cancelledAt": "2026-05-22T16:45:00Z"
  }
}

Response fields

idstring

Unique reservation identifier.

propertyIdstring

ID of the property this reservation belonged to.

statusstring

Always CANCELLED after a successful deletion.

sourcestring

Platform where the booking originated.

confirmationCodestring

Platform-specific confirmation code.

checkInstring

Original check-in date (YYYY-MM-DD).

checkOutstring

Original check-out date (YYYY-MM-DD).

primaryGuestobject

Guest who made the booking.

financialsobject

Financial summary at the time of cancellation.

cancelledAtstring

ISO 8601 timestamp when the reservation was cancelled.

Error handling

Common error responses when cancelling a reservation:

// 404 — Reservation not found
{ "error": { "code": "not_found", "message": "Reservation 456 does not exist." } }

// 409 — Already cancelled
{ "error": { "code": "conflict", "message": "Reservation 456 is already cancelled." } }

API Reference

See the complete Reservations API Reference for all endpoints including list, create, and update.

AI