# List Reservations
> Source: /api-reference/members/reservations/list
> Retrieve member's reservation history
> Endpoint: GET /members/me/reservations

# List Reservations

Retrieve member's past, current, and upcoming reservations.

## Request [#request]

```http
GET /members/me/reservations
Authorization: Bearer <CLERK_JWT_TOKEN>
```

<ParamField query="status" type="string">
  Filter by status: confirmed | completed | cancelled
</ParamField>

<ParamField query="timeframe" type="string">
  past | current | upcoming | all
</ParamField>

<ParamField query="limit" type="number" default="20">
  Results per page
</ParamField>

<ParamField query="offset" type="number" default="0">
  Pagination offset
</ParamField>

## Response [#response]

<ResponseField name="items" type="array" required>
  Array of reservations
  <Expandable title="reservation object">
    <ResponseField name="confirmationNumber" type="string">
      Booking confirmation code
    </ResponseField>
    <ResponseField name="status" type="string">
      confirmed | completed | cancelled
    </ResponseField>
    <ResponseField name="checkIn" type="string">
      Check-in date (YYYY-MM-DD)
    </ResponseField>
    <ResponseField name="checkOut" type="string">
      Check-out date (YYYY-MM-DD)
    </ResponseField>
    <ResponseField name="property" type="object">
      Property details
    </ResponseField>
    <ResponseField name="totalAmount" type="number">
      Total price
    </ResponseField>
    <ResponseField name="pointsEarned" type="number">
      Points earned from stay
    </ResponseField>
    <ResponseField name="createdAt" type="string">
      Booking date
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="total" type="number" required>
  Total reservations
</ResponseField>

## Example [#example]

```typescript
const response = await fetch(
  'https://api.journey.com/members/me/reservations?timeframe=upcoming',
  {
    headers: {
      'Authorization': `Bearer ${clerkToken}`
    }
  }
);

const { items, total } = await response.json();

console.log(`You have ${total} upcoming reservations`);

items.forEach(reservation => {
  console.log(`${reservation.property.name}`);
  console.log(`Check-in: ${reservation.checkIn}`);
  console.log(`Confirmation: ${reservation.confirmationNumber}`);
});
```

## Timeframe Filters [#timeframe-filters]

| Value | Description |
|-------|-------------|
| `past` | Completed stays |
| `current` | Active stays |
| `upcoming` | Future bookings |
| `all` | All reservations |

## Bruno [#bruno]

`bruno/Members (Surface)/Reservations/List.bru`
