Journey Docs
Members APIReservations

Get Reservations

Get paginated list of member reservations with property summary cards

GET/members/me/reservations

Overview

Returns a paginated list of the member's reservations with property summary information. Includes filtering and sorting options to help members find specific reservations.

Authentication

Requires a valid Clerk JWT token in the Authorization header.

Query Parameters

dateFromquerystring

ISO date string (YYYY-MM-DD) - filter check-in on or after this date

dateToquerystring

ISO date string (YYYY-MM-DD) - filter check-out on or before this date

sortByquerystring

Sort field: "id", "checkInDate", or "checkOutDate" (default: "id")

statusquerystring

Filter by reservation status: "confirmed", "pending", "cancelled", "inquiry", "other"

limitquerynumber

Maximum number of reservations to return (default: 20)

offsetquerynumber

Number of reservations to skip for pagination (default: 0)

Request

curl -X GET "http://localhost:3000/v1/members/me/reservations?status=confirmed&sortBy=checkInDate&limit=10" \
  -H "Authorization: Bearer YOUR_CLERK_JWT"

Response

itemsarrayrequired

List of reservation summaries

array items
reservationIdstringrequired

Unique reservation identifier

checkInDatestringrequired

Check-in date (YYYY-MM-DD)

checkOutDatestringrequired

Check-out date (YYYY-MM-DD)

statusstringrequired

Reservation status: "confirmed", "pending", "cancelled", "inquiry", "other"

confirmationCodestring

PMS confirmation code for the reservation

guestCountnumberrequired

Total number of guests

bookingChannelstring

How reservation was booked: "direct", "journey_app", "pms", etc.

propertyobjectrequired

Property summary information

properties
idnumberrequired

Property ID

documentIdstringrequired

Property document identifier

namestringrequired

Property name

locationstring

Property location (city, country)

imageUrlstring

Property hero image URL

brandobject

Brand information (without internal ID)

properties
documentIdstringrequired

Brand document identifier

namestringrequired

Brand name

pointsStatusobjectrequired

Points earned/earning for this reservation

properties
totalPointsnumberrequired

Total points earned for this reservation

basePointsnumberrequired

Base points before multipliers

multipliernumberrequired

Point multiplier applied

finalizedbooleanrequired

Whether points have been finalized (post-checkout processing complete)

totalnumberrequired

Total number of reservations matching filters

limitnumberrequired

Current pagination limit

offsetnumberrequired

Current pagination offset

Response

200 Response
{
  "items": [
    {
      "reservationId": "550e8400-e29b-41d4-a716-446655440000",
      "checkInDate": "2024-05-15",
      "checkOutDate": "2024-05-18",
      "status": "confirmed",
      "confirmationCode": "ABC123",
      "guestCount": 2,
      "bookingChannel": "journey_app",
      "property": {
        "id": 1,
        "documentId": "prop_luxury_resort_bali",
        "name": "Luxury Resort Bali",
        "location": "Ubud, Bali, Indonesia",
        "imageUrl": "https://cdn.journey.com/properties/luxury-resort-bali.jpg",
        "brand": {
          "documentId": "brand_boutique_hotels",
          "name": "Boutique Hotels Collection"
        }
      },
      "pointsStatus": {
        "totalPoints": 2500,
        "basePoints": 2000,
        "multiplier": 1.25,
        "finalized": false
      }
    },
    {
      "reservationId": "550e8400-e29b-41d4-a716-446655440001",
      "checkInDate": "2024-03-10",
      "checkOutDate": "2024-03-12",
      "status": "confirmed", 
      "confirmationCode": "XYZ789",
      "guestCount": 1,
      "bookingChannel": "direct",
      "property": {
        "id": 2,
        "documentId": "prop_urban_hotel_tokyo",
        "name": "Urban Hotel Tokyo",
        "location": "Shibuya, Tokyo, Japan",
        "imageUrl": "https://cdn.journey.com/properties/urban-hotel-tokyo.jpg",
        "brand": {
          "documentId": "brand_urban_escapes",
          "name": "Urban Escapes"
        }
      },
      "pointsStatus": {
        "totalPoints": 1800,
        "basePoints": 1500,
        "multiplier": 1.2,
        "finalized": true
      }
    }
  ],
  "total": 12,
  "limit": 10,
  "offset": 0
}

Filtering Options

Date Filters

  • dateFrom: Include reservations with check-in on or after this date
  • dateTo: Include reservations with check-out on or before this date
  • Combined: Use both to filter reservations within a date range

Status Filters

  • confirmed: Confirmed reservations (most common)
  • pending: Reservations pending confirmation
  • cancelled: Cancelled reservations
  • inquiry: Inquiry-only reservations
  • other: Other status types

Sorting Options

  • id: Sort by reservation ID (default, newest first)
  • checkInDate: Sort by check-in date
  • checkOutDate: Sort by check-out date

Points Status

finalized

  • true: Points processing is complete, points are in wallet
  • false: Points are in escrow, will be finalized after checkout

Point Calculation

  • basePoints: Calculated from spend amount
  • multiplier: Applied based on member tier and property campaigns
  • totalPoints: Final points earned (basePoints × multiplier)

On this page