Regions search

Regions search is a search type that collects pricing about given query and groups it by regions found offers belongs to. For each region, it returns price for the cheapest offer that is found in that region.

It is the recommended first step to starting a query without geographic parameters (region, city), as it is guaranteed not to cause any query errors due to too many hits.

API Endpoints

It's API endpoint is, /search/<content type>/regions

For example:

  • For hotel: /search/hotel/regions
  • For pauschal: /search/pauschal/regions
  • For trips: /search/trips/regions

Response structure

Results are grouped by region groups, where each group contains a price for the cheapest offer found in the given group.

Inside each group, there is also a list of regions in that group, that contains a price for the cheapest offer found in that region.

typedef Results = map{
    # Key is region group ID.
    int => struct{
        MinPrice  float  # Minimum price for this region group
        GroupName string # Region group name

        # List of regions in this group
        Regions   map{
            # Key is a region ID
            string => struct{
                MinPrice   float  # Minimum offer price found in this region
                RegionName string # Region name
            }
        }
    }
}

Filters and sorts

This query does not support filtering.

It is possible to direct sorting by the Price field. In this case, groups are sorted first, and then regions within those groups are sorted according to their minimum price.

Notable content differences

The response structure is identical for all content types.

For trips content type, a search may return more regions than requested. Since a single trip can be mapped to multiple regions, if it matches one of the searched regions, all regions that this trip is in are displayed.

Example response

{
    "Results": {
        "9999011": {
            "MinPrice": 73,
            "GroupName": "Bosnia and Herzegovina",
            "Regions": {
                "911": {
                    "MinPrice": 73,
                    "RegionName": "Bosnia & Herzegovina"
                }
            }
        },
        "100023": {
            "MinPrice": 5,
            "GroupName": "Croatia",
            "Regions": {
                "659": {
                    "MinPrice": 125,
                    "RegionName": "Dalmatia"
                },
                "100434": {
                    "MinPrice": 89,
                    "RegionName": "Kvarner"
                },
                "90": {
                    "MinPrice": 38,
                    "RegionName": "Croatia"
                },
                "1109": {
                    "MinPrice": 19,
                    "RegionName": "Croatia - Inland"
                },
                "9991000": {
                    "MinPrice": 17,
                    "RegionName": "Croatia (various offers)"
                },
                "100473": {
                    "MinPrice": 5,
                    "RegionName": "Zagreb"
                }
            }
        }
    },
    "RequestID": "d17c4dcc-5de675194d4e1480093355"
}