# Build a Booking.com apartment shortlist

**Use case:** 

Create a price-ordered apartment shortlist for one destination and stay.

## Input

```json
{
  "destination": "Tivat, Montenegro",
  "maxProperties": 20,
  "mode": "fast",
  "checkIn": "2026-09-15",
  "checkOut": "2026-09-17",
  "adults": 2,
  "rooms": 1,
  "children": 0,
  "childrenAges": [],
  "flexibleDays": "0",
  "propertyTypes": [
    "apartments"
  ],
  "sortBy": "price_low",
  "currency": "EUR",
  "language": "en-gb",
  "maxPagesPerTarget": 1,
  "maxRequests": 5,
  "maxRuntimeSecs": 120,
  "maxCostUsd": 0.1,
  "requestTimeoutSecs": 35,
  "maxRetries": 1
}
```

## Output

```json
{
  "recordType": {
    "label": "Record type",
    "format": "string"
  },
  "stablePropertyKey": {
    "label": "Stable property key",
    "format": "string"
  },
  "propertyId": {
    "label": "Property ID",
    "format": "string"
  },
  "name": {
    "label": "Property name",
    "format": "string"
  },
  "propertyType": {
    "label": "Property type",
    "format": "string"
  },
  "locationText": {
    "label": "Location text",
    "format": "string"
  },
  "distanceText": {
    "label": "Distance text",
    "format": "string"
  },
  "stars": {
    "label": "Official stars",
    "format": "integer"
  },
  "guestReviewScore": {
    "label": "Guest score",
    "format": "number"
  },
  "guestReviewCount": {
    "label": "Guest review count",
    "format": "integer"
  },
  "availabilityStatus": {
    "label": "Availability status",
    "format": "string"
  },
  "stayTotalAmount": {
    "label": "Stay total",
    "format": "number"
  },
  "stayNights": {
    "label": "Nights",
    "format": "integer"
  },
  "nightlyAmount": {
    "label": "Derived nightly amount",
    "format": "number"
  },
  "priceCurrency": {
    "label": "Currency",
    "format": "string"
  },
  "priceBasis": {
    "label": "Price basis",
    "format": "string"
  },
  "taxesFeesInclusion": {
    "label": "Taxes/fees state",
    "format": "string"
  },
  "mealPlanText": {
    "label": "Meal-plan text",
    "format": "string"
  },
  "cancellationText": {
    "label": "Cancellation text",
    "format": "string"
  },
  "availabilityMessage": {
    "label": "Availability message",
    "format": "string"
  },
  "selectedRoom": {
    "label": "Selected room context",
    "format": "object"
  },
  "canonicalUrl": {
    "label": "Canonical Booking URL",
    "format": "string"
  },
  "billingEventName": {
    "label": "PPE billing event",
    "format": "string"
  },
  "coverageState": {
    "label": "Canonical coverage state",
    "format": "string"
  },
  "coverageStatus": {
    "label": "Coverage status",
    "format": "string"
  },
  "enrichmentStatus": {
    "label": "Enrichment status",
    "format": "string"
  },
  "collectedAt": {
    "label": "Collected at",
    "format": "string"
  }
}
```

## About this Actor

This example demonstrates how to use [Booking.com Hotel Scraper: Search & Stay Prices](https://apify.com/luminar/booking-hotels-scraper-private-v1.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/luminar/booking-hotels-scraper-private-v1.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
This Task's input is already configured above — use it as-is rather than inventing a new one.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/luminar/booking-hotels-scraper-private-v1.md

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).
