GETBookings

List Bookings

/api/v1/bookings

Retrieve all bookings belonging to the authenticated partner (resolved from Bearer token). Results are grouped by booking number — each entry may contain multiple products under items. Metadata (guests, payments, customerNote, resellerReference, resellerSource, resellerNote, status) is at the booking level, taken from the primary item.

Authentication Required

Include Bearer token in Authorization header: Authorization: Bearer YOUR_TOKEN

Query Parameters

NameTypeRequiredDescription
pageintegerNoPage number for pagination (default: 1)
limitintegerNoItems per page, max 100 (default: 25)
statusstringNoFilter by status: created, pending, confirmed, completed, canceled
bookingNumberstringNoExact booking number filter

Response

Success Response Example:

{
  "success": true,
  "bookings": [
    {
      "bookingNumber": "PC2524A7B",
      "customer": {
        "title": "Mr",
        "firstName": "John",
        "lastName": "Doe",
        "phone": "+33612345678",
        "email": "[email protected]"
      },
      "items": [
        {
          "id": 43,
          "productCode": "TOUR-EIFFEL-SKIP-LINE",
          "reservationDate": "2026-03-25",
          "reservationTime": "10:00",
          "quantities": [
            {
              "label": "adult",
              "quantity": 2,
              "price": 75
            },
            {
              "label": "child",
              "quantity": 1,
              "price": 40
            }
          ]
        },
        {
          "id": 44,
          "productCode": "TOUR-SEINE-CRUISE",
          "reservationDate": "2026-03-25",
          "reservationTime": "14:00",
          "quantities": [
            {
              "label": "adult",
              "quantity": 2,
              "price": 35
            }
          ]
        }
      ],
      "guests": [
        {
          "title": "Mr",
          "firstName": "John",
          "lastName": "Doe",
          "age": 37
        },
        {
          "title": "Mrs",
          "firstName": "Jane",
          "lastName": "Doe",
          "age": 35
        }
      ],
      "payments": [
        {
          "method": "CREDIT_CARD",
          "amount": 150,
          "currency": "EUR",
          "reference": "txn-2026-03-20-001"
        }
      ],
      "customerNote": "Wheelchair accessible entrance requested",
      "resellerReference": "RS-TRAVELMATE-9912",
      "resellerSource": "mytravelmate",
      "resellerNote": "VIP customer",
      "status": "created",
      "createdAt": "2026-03-20T10:12:43.000+01:00",
      "updatedAt": "2026-03-20T10:12:43.000+01:00"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 25,
    "total": 1,
    "totalPages": 1,
    "hasNextPage": false,
    "hasPreviousPage": false
  }
}

Error Response

Error Example:

{
  "success": false,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Unauthorized - Partner not authenticated"
  }
}

Available Errors

HTTP StatusCodeMeaning
401UNAUTHORIZEDInvalid or missing authentication token
400INVALID_REQUESTInvalid status filter value
500INTERNAL_SERVER_ERRORFailed to retrieve bookings