Skip to content

Reports

List conversions

Request

This endpoint returns conversion data for bookings within a specified date range.

Note: Conversions data is only provided for selected accounts based on contractual agreements.

Exactly one date filter must be provided. The available filters are:

  • booking_date_range: Filter by the date the booking was made
  • cancellation_date_range: Filter by the date the booking was cancelled
  • checkout_date_range: Filter by the checkout date of the booking
  • updated_at_range: Filter by the date the booking record last changed (e.g. status, cancellation, amounts)

Each date range must include both from and to dates in ISO-8601 format (YYYY-MM-DD). Results are ordered by the filtered date, newest first, with ties ordered by booking_reference. Results are paginated with a default page size of 100 and a maximum of 1000 records per page. Use the page_token from the response to retrieve subsequent pages.

Example requests:

Filter by booking date:

{
  "booking_date_range": {
    "from": "2025-01-01",
    "to": "2025-01-31"
  },
  "page_size": 100
}

Filter by cancellation date:

{
  "cancellation_date_range": {
    "from": "2025-01-01",
    "to": "2025-01-31"
  },
  "page_size": 100
}

Filter by checkout date:

{
  "checkout_date_range": {
    "from": "2025-01-01",
    "to": "2025-01-31"
  },
  "page_size": 100
}

Filter by last change, e.g. to fetch updates of previously retrieved bookings:

{
  "updated_at_range": {
    "from": "2025-01-01",
    "to": "2025-01-31"
  },
  "page_size": 100
}
Security
BearerAuth
Bodyapplication/jsonrequired
One of:

Request object for retrieving conversion data.

Important: Exactly one date filter must be provided. The date filters are mutually exclusive - specifying more than one will result in a 400 Bad Request error with conflicting_parameters.

Available date filters (choose exactly one):

  • booking_date_range: Filter by when the booking was made
  • cancellation_date_range: Filter by when the booking was cancelled
  • checkout_date_range: Filter by the checkout date
  • updated_at_range: Filter by when the booking record last changed (e.g. status, cancellation, amounts)
page_sizeinteger, (int32), [ 1 .. 1000 ]

Number of results per page. Default is 100, maximum is 1000.

Default:100
Example:100
page_tokenstring

Token for retrieving the next page of results. Obtained from the previous response's pagination.next_page_token.

Example:""
booking_date_rangeobject(DateRange)required

Date range for filtering conversions. Both 'from' and 'to' dates are required.

curl -i -X POST \
  https://metasearch-connect-api.booking.com/reports/conversions \
  -H 'Authorization: Bearer <YOUR_string_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "booking_date_range": {
      "from": "2025-01-01",
      "to": "2025-01-31"
    },
    "page_size": 100,
    "page_token": ""
  }'

Responses

OK

Bodyapplication/json
conversionsArray of objects(Conversion)

List of conversion records matching the search criteria.

paginationobject(ConversionsPagination)

Pagination information for the conversions response.

metadataobject(ConversionsMetadata)

Metadata about the conversions response.

Response
{ "conversions": [ { … } ], "pagination": { "next_page_token": "eyJwYWdlIjogMn0=", "total_results": 150, "total_pages": 2, "random_page_access": false }, "metadata": { "request_id": "req_abc123xyz", "timestamp": "2025-01-19T10:30:00Z", "result_count": 50 } }