Docs/API Reference/Reservations

Get a single reservation by ID

Reservations · GET /v1/reservations/:id

Get a single reservation by ID

GET/v1/reservations/:id

Request

curl https://api.repull.dev/v1/reservations/456 \
  -H "Authorization: Bearer $REPULL_API_KEY"

Response

{
  "id": "123",
  "listingId": "123",
  "guestId": "123",
  "checkIn": "2026-06-01",
  "checkOut": "2026-06-01",
  "status": "confirmed",
  "source": "airbnb",
  "platform": "airbnb",
  "confirmationCode": "Example text",
  "totalPrice": "Example text",
  "currency": "USD",
  "guestDetails": {
    "numberOfPets": 0,
    "numberOfAdults": 0,
    "numberOfGuests": 0,
    "numberOfInfants": 0,
    "numberOfChildren": 0
  },
  "primaryGuest": {
    "id": "123",
    "firstName": "Example",
    "lastName": "Example",
    "phone": "+15550000000",
    "language": "Example text"
  },
  "occupancy": {
    "adults": 0,
    "children": 0,
    "infants": 0,
    "pets": 0,
    "total": 0
  },
  "financials": {
    "totalPrice": 0,
    "currency": "USD",
    "paymentStatus": "pending",
    "cancellationPolicy": "Example text",
    "host": {
      "accommodation": 0,
      "discounts": [],
      "guestFees": [
        {
          "name": "Example",
          "type": "guest_service",
          "amount": 0,
          "vat": 0
        }
      ],
      "hostFees": [
        {
          "name": "Example",
          "type": "host_service",
          "amount": 0,
          "vat": 0
        }
      ],
      "taxes": [],
      "revenue": 0
    },
    "guest": {
      "totalPrice": 0,
      "fees": [
        {
          "name": "Example",
          "type": "cleaning",
          "amount": 0
        }
      ],
      "taxes": []
    }
  },
  "createdAt": "2026-06-01T12:00:00.000Z",
  "updatedAt": "2026-06-01T12:00:00.000Z",
  "bookedAt": "2026-06-01T12:00:00.000Z",
  "guestName": "Example"
}

Captured from a real response. Regenerated on every release, and CI fails if this shape stops matching the API.

AI