Skip to content

Saturation Compare

Rates Saturation Compare API returns two different rates saturation data sets at once for a specified {Viewport} and {Location}: one defined by the specified [from,to] query parameters and another defined by compare_ prefixed query parameters (or auto-calculated with default values where specified).
Additional comparative data between the two data sets is returned as well.

Request

Endpoint

GET /v4/{billing_plan}/account/{account_id}/maps/rates/saturation/overall/compare

Path Parameters

Name                       Description Type Examples
*{billing_plan} Billing plan to be applied to the call. string ondemand
*{account_id} Provided identifier of the account. string
/sample Filter data for POIs that are included in the sample (subset of POIs that statistically replicates the population of the corresponding location). string
/sample optional path parameter

Inserting optional path parameter /sample in the following position:

  • /v4/{billing_plan}/account/{account_id}/maps/sample/…

will filter data for POIs that are included in the sample (subset of POIs that statistically replicates the population of the corresponding location).

Header Parameters

Name                          Description Type Examples                         
*x-api-key Provided API key {x_api_key} that allows authentication. string
*Authorization Provided token {jwt_bearer} that allows authorization. string Bearer {jwt_bearer}

Query Parameters

Name                                      Description Type Examples                 Default
*{Viewport} Viewport identifier. Viewport Viewport
*{Location} Actual location identifier. Geospatial Area
GeometryID
Circle
*from Start date of actual timeframe. date 2020-01-01
*to End date of actual timeframe. date 2020-12-31
compare_from Start date of comparison timeframe. date 2020-07-01 One year before from.
compare_to End date of comparison timeframe. date 2021-01-01 One year before to.
poi_class
compare_poi_class
Filter POIs with "category": "hotel" by stars rating in the range [1,5]. int 4
poi_industry
compare_poi_industry
Filter by POI Industry. string Dictionary
poi_category
compare_poi_category
Filter by POI Category. string Dictionary
facility
compare_facility
Filter offers by included facility. string breakfast
lunch
dinner
guests
compare_guests
Filter offers by number of allowed guests. int 1 2
refundable
compare_refundable
Filter offers that can be refunded. boolean true
false
scan_last_day Filter data according to a less recent offers detection in the range [1,10] (from most recent to oldest offers detection day). int 5 1
Supported values for facility
  • breakfast
  • lunch
  • dinner
Example
curl -X GET 'https://api.datappeal.io/v4/ondemand/account/{account_id}/maps/rates/saturation/overall/compare?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-07-01&compare_from=2020-07-01&compare_to=2021-01-01' \
-H 'x-api-key: {x_api_key}' \
-H 'Authorization: Bearer {jwt_bearer}' \
Example /sample
curl -X GET 'https://api.datappeal.io/v4/ondemand/account/{account_id}/maps/rates/sample/saturation/overall/compare?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-07-01&compare_from=2020-07-01&compare_to=2021-01-01' \
-H 'x-api-key: {x_api_key}' \
-H 'Authorization: Bearer {jwt_bearer}' \

Response

Status

Status Description
200 Rates Saturation Compare data has been successfully returned.

Body

MapsRatesComparedSaturation

Field Description Type
actual Rates saturation data for the actual timeframe. MapsRatesComparableSaturation
comparison Rates saturation data for the comparison timeframe. MapsRatesComparableSaturation
variation Calculated difference between actual and comparison. array[MapsRatesSaturationVariation]
MapsRatesComparableSaturation
Field Description Type
timeframe Reference date range. Timeframe
value Rates saturation map quads data for the corresponding timeframe. array[MapsRatesSaturationElement]
Timeframe
Field Description Type
*from Start date of timeframe. date
*to End date of timeframe. date
MapsRatesSaturationElement
Field Description Type
*saturation Rates saturation data of corresponding quadkey. LocationRatesSaturation
*quadkey Identifier of the map quad. Quadkey
LocationRatesSaturation
Field Description Type Examples
*total_offers Total number of accommodation offers. int 1106
*available_offers Number of available accommodation offers. int 729
*saturation Occupancy ratio in the range [0,100] calculated by the following formula.
equation
decimal 34.09
Quadkey
Field Description Type Examples
*tile Map quad identifier in Bing Maps Tile System standard format. string 1202231311
*wkt Map quad expressed in WKT standard format. string POLYGON ((10.8984375 43.83452678223682, 11.25 43.83452678223682, 11.25 44.087585028245165, 10.8984375 44.087585028245165, 10.8984375 43.83452678223682))
MapsRatesSaturationVariation
Field Description Type
*compare Rates saturation variation data of corresponding quadkey. LocationRatesSaturationVariation
*quadkey Identifier of the map quad. Quadkey
LocationRatesSaturationVariation
Field Description Type
*total_offers Variation of accommodation offers. Variation
*available_offers Variation of available accommodation offers. Variation
*saturation Occupancy ratio variation. Variation
Variation
Field Description Type Examples
value Difference between actual value and comparison value. decimal 1.12
variation The explicit variation polarity.
It is null when values are not available in both timeframes.
string POSITIVE
NEUTRAL
NEGATIVE
Quadkey
Field Description Type Examples
*tile Map quad identifier in Bing Maps Tile System standard format. string 1202231311
*wkt Map quad expressed in WKT standard format. string POLYGON ((10.8984375 43.83452678223682, 11.25 43.83452678223682, 11.25 44.087585028245165, 10.8984375 44.087585028245165, 10.8984375 43.83452678223682))
Example
{
    "actual": {
        "timeframe": {
            "from": "2022-07-01",
            "to": "2023-07-01"
        },
        "value": [
            {
                "poi": {
                    "count": 49,
                    "partition": 60.0
                },
                "quadkey": {
                    "tile": "12022313113",
                    "wkt": "POLYGON ((11.07421875 43.83452678223682, 11.25 43.83452678223682, 11.25 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 43.83452678223682))"
                },
                "saturation": {
                    "total_offers": 102018,
                    "available_offers": 88591,
                    "saturation": 13.16
                }
            },
            {
                "poi": {
                    "count": 24,
                    "partition": 28.999999999999996
                },
                "quadkey": {
                    "tile": "12022313130",
                    "wkt": "POLYGON ((10.8984375 43.707593504052944, 11.07421875 43.707593504052944, 11.07421875 43.83452678223682, 10.8984375 43.83452678223682, 10.8984375 43.707593504052944))"
                },
                "saturation": {
                    "total_offers": 64356,
                    "available_offers": 49898,
                    "saturation": 22.47
                }
            },
            {
                "poi": {
                    "count": 2,
                    "partition": 2.0
                },
                "quadkey": {
                    "tile": "12022313112",
                    "wkt": "POLYGON ((10.8984375 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.96119063892024, 10.8984375 43.96119063892024, 10.8984375 43.83452678223682))"
                },
                "saturation": {
                    "total_offers": 3176,
                    "available_offers": 3017,
                    "saturation": 5.01
                }
            },
            {
                "poi": {
                    "count": 6,
                    "partition": 7.000000000000001
                },
                "quadkey": {
                    "tile": "12022313111",
                    "wkt": "POLYGON ((11.07421875 43.96119063892024, 11.25 43.96119063892024, 11.25 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 43.96119063892024))"
                },
                "saturation": {
                    "total_offers": 2701,
                    "available_offers": 2068,
                    "saturation": 23.44
                }
            },
            {
                "poi": {
                    "count": 1,
                    "partition": 1.0
                },
                "quadkey": {
                    "tile": "12022313131",
                    "wkt": "POLYGON ((11.07421875 43.707593504052944, 11.25 43.707593504052944, 11.25 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.707593504052944))"
                },
                "saturation": {
                    "total_offers": 560,
                    "available_offers": 332,
                    "saturation": 40.71
                }
            },
            {
                "poi": {
                    "count": 0,
                    "partition": 0.0
                },
                "quadkey": {
                    "tile": "12022311333",
                    "wkt": "POLYGON ((11.07421875 44.087585028245165, 11.25 44.087585028245165, 11.25 44.21370990970204, 11.07421875 44.21370990970204, 11.07421875 44.087585028245165))"
                },
                "saturation": {
                    "total_offers": 0,
                    "available_offers": 0,
                    "saturation": null
                }
            },
            {
                "poi": {
                    "count": 0,
                    "partition": 0.0
                },
                "quadkey": {
                    "tile": "12022313110",
                    "wkt": "POLYGON ((10.8984375 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 44.087585028245165, 10.8984375 44.087585028245165, 10.8984375 43.96119063892024))"
                },
                "saturation": {
                    "total_offers": 0,
                    "available_offers": 0,
                    "saturation": null
                }
            },
            {
                "poi": {
                    "count": 0,
                    "partition": 0.0
                },
                "quadkey": {
                    "tile": "12022311332",
                    "wkt": "POLYGON ((10.8984375 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 44.21370990970204, 10.8984375 44.21370990970204, 10.8984375 44.087585028245165))"
                },
                "saturation": {
                    "total_offers": 0,
                    "available_offers": 0,
                    "saturation": null
                }
            }
        ]
    },
    "comparison": {
        "timeframe": {
            "from": "2021-07-01",
            "to": "2022-07-01"
        },
        "value": [
            {
                "poi": {
                    "count": 51,
                    "partition": 61.0
                },
                "quadkey": {
                    "tile": "12022313113",
                    "wkt": "POLYGON ((11.07421875 43.83452678223682, 11.25 43.83452678223682, 11.25 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 43.83452678223682))"
                },
                "saturation": {
                    "total_offers": 125453,
                    "available_offers": 93826,
                    "saturation": 25.21
                }
            },
            {
                "poi": {
                    "count": 22,
                    "partition": 26.0
                },
                "quadkey": {
                    "tile": "12022313130",
                    "wkt": "POLYGON ((10.8984375 43.707593504052944, 11.07421875 43.707593504052944, 11.07421875 43.83452678223682, 10.8984375 43.83452678223682, 10.8984375 43.707593504052944))"
                },
                "saturation": {
                    "total_offers": 56177,
                    "available_offers": 38093,
                    "saturation": 32.19
                }
            },
            {
                "poi": {
                    "count": 3,
                    "partition": 4.0
                },
                "quadkey": {
                    "tile": "12022313112",
                    "wkt": "POLYGON ((10.8984375 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.96119063892024, 10.8984375 43.96119063892024, 10.8984375 43.83452678223682))"
                },
                "saturation": {
                    "total_offers": 9431,
                    "available_offers": 7163,
                    "saturation": 24.05
                }
            },
            {
                "poi": {
                    "count": 6,
                    "partition": 7.000000000000001
                },
                "quadkey": {
                    "tile": "12022313111",
                    "wkt": "POLYGON ((11.07421875 43.96119063892024, 11.25 43.96119063892024, 11.25 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 43.96119063892024))"
                },
                "saturation": {
                    "total_offers": 3809,
                    "available_offers": 2623,
                    "saturation": 31.14
                }
            },
            {
                "poi": {
                    "count": 1,
                    "partition": 1.0
                },
                "quadkey": {
                    "tile": "12022311333",
                    "wkt": "POLYGON ((11.07421875 44.087585028245165, 11.25 44.087585028245165, 11.25 44.21370990970204, 11.07421875 44.21370990970204, 11.07421875 44.087585028245165))"
                },
                "saturation": {
                    "total_offers": 74,
                    "available_offers": 54,
                    "saturation": 27.03
                }
            },
            {
                "poi": {
                    "count": 1,
                    "partition": 1.0
                },
                "quadkey": {
                    "tile": "12022313131",
                    "wkt": "POLYGON ((11.07421875 43.707593504052944, 11.25 43.707593504052944, 11.25 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.707593504052944))"
                },
                "saturation": {
                    "total_offers": 8,
                    "available_offers": 8,
                    "saturation": 0.0
                }
            },
            {
                "poi": {
                    "count": 0,
                    "partition": 0.0
                },
                "quadkey": {
                    "tile": "12022313110",
                    "wkt": "POLYGON ((10.8984375 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 44.087585028245165, 10.8984375 44.087585028245165, 10.8984375 43.96119063892024))"
                },
                "saturation": {
                    "total_offers": 0,
                    "available_offers": 0,
                    "saturation": null
                }
            },
            {
                "poi": {
                    "count": 0,
                    "partition": 0.0
                },
                "quadkey": {
                    "tile": "12022311332",
                    "wkt": "POLYGON ((10.8984375 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 44.21370990970204, 10.8984375 44.21370990970204, 10.8984375 44.087585028245165))"
                },
                "saturation": {
                    "total_offers": 0,
                    "available_offers": 0,
                    "saturation": null
                }
            }
        ]
    },
    "variation": [
        {
            "saturation": {
                "total_offers": {
                    "value": -23435,
                    "variation": "NEGATIVE"
                },
                "available_offers": {
                    "value": -5235,
                    "variation": "NEGATIVE"
                },
                "saturation": {
                    "value": -12.05,
                    "variation": "NEGATIVE"
                }
            },
            "poi": {
                "partition": {
                    "value": -1.0,
                    "variation": "NEGATIVE"
                },
                "count": {
                    "value": -2,
                    "variation": "NEGATIVE"
                }
            },
            "quadkey": {
                "tile": "12022313113",
                "wkt": "POLYGON ((11.07421875 43.83452678223682, 11.25 43.83452678223682, 11.25 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 43.83452678223682))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": 8179,
                    "variation": "POSITIVE"
                },
                "available_offers": {
                    "value": 11805,
                    "variation": "POSITIVE"
                },
                "saturation": {
                    "value": -9.72,
                    "variation": "NEGATIVE"
                }
            },
            "poi": {
                "partition": {
                    "value": 3.0,
                    "variation": "POSITIVE"
                },
                "count": {
                    "value": 2,
                    "variation": "POSITIVE"
                }
            },
            "quadkey": {
                "tile": "12022313130",
                "wkt": "POLYGON ((10.8984375 43.707593504052944, 11.07421875 43.707593504052944, 11.07421875 43.83452678223682, 10.8984375 43.83452678223682, 10.8984375 43.707593504052944))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": -6255,
                    "variation": "NEGATIVE"
                },
                "available_offers": {
                    "value": -4146,
                    "variation": "NEGATIVE"
                },
                "saturation": {
                    "value": -19.04,
                    "variation": "NEGATIVE"
                }
            },
            "poi": {
                "partition": {
                    "value": -2.0,
                    "variation": "NEGATIVE"
                },
                "count": {
                    "value": -1,
                    "variation": "NEGATIVE"
                }
            },
            "quadkey": {
                "tile": "12022313112",
                "wkt": "POLYGON ((10.8984375 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.96119063892024, 10.8984375 43.96119063892024, 10.8984375 43.83452678223682))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": -1108,
                    "variation": "NEGATIVE"
                },
                "available_offers": {
                    "value": -555,
                    "variation": "NEGATIVE"
                },
                "saturation": {
                    "value": -7.7,
                    "variation": "NEGATIVE"
                }
            },
            "poi": {
                "partition": {
                    "value": 0.0,
                    "variation": "NEUTRAL"
                },
                "count": {
                    "value": 0,
                    "variation": "NEUTRAL"
                }
            },
            "quadkey": {
                "tile": "12022313111",
                "wkt": "POLYGON ((11.07421875 43.96119063892024, 11.25 43.96119063892024, 11.25 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 43.96119063892024))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": 552,
                    "variation": "POSITIVE"
                },
                "available_offers": {
                    "value": 324,
                    "variation": "POSITIVE"
                },
                "saturation": {
                    "value": 40.71,
                    "variation": "POSITIVE"
                }
            },
            "poi": {
                "partition": {
                    "value": 0.0,
                    "variation": "NEUTRAL"
                },
                "count": {
                    "value": 0,
                    "variation": "NEUTRAL"
                }
            },
            "quadkey": {
                "tile": "12022313131",
                "wkt": "POLYGON ((11.07421875 43.707593504052944, 11.25 43.707593504052944, 11.25 43.83452678223682, 11.07421875 43.83452678223682, 11.07421875 43.707593504052944))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": -74,
                    "variation": "NEGATIVE"
                },
                "available_offers": {
                    "value": -54,
                    "variation": "NEGATIVE"
                },
                "saturation": {
                    "value": null,
                    "variation": null
                }
            },
            "poi": {
                "partition": {
                    "value": -1.0,
                    "variation": "NEGATIVE"
                },
                "count": {
                    "value": -1,
                    "variation": "NEGATIVE"
                }
            },
            "quadkey": {
                "tile": "12022311333",
                "wkt": "POLYGON ((11.07421875 44.087585028245165, 11.25 44.087585028245165, 11.25 44.21370990970204, 11.07421875 44.21370990970204, 11.07421875 44.087585028245165))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": 0,
                    "variation": "NEUTRAL"
                },
                "available_offers": {
                    "value": 0,
                    "variation": "NEUTRAL"
                },
                "saturation": {
                    "value": null,
                    "variation": null
                }
            },
            "poi": {
                "partition": {
                    "value": 0.0,
                    "variation": "NEUTRAL"
                },
                "count": {
                    "value": 0,
                    "variation": "NEUTRAL"
                }
            },
            "quadkey": {
                "tile": "12022313110",
                "wkt": "POLYGON ((10.8984375 43.96119063892024, 11.07421875 43.96119063892024, 11.07421875 44.087585028245165, 10.8984375 44.087585028245165, 10.8984375 43.96119063892024))"
            }
        },
        {
            "saturation": {
                "total_offers": {
                    "value": 0,
                    "variation": "NEUTRAL"
                },
                "available_offers": {
                    "value": 0,
                    "variation": "NEUTRAL"
                },
                "saturation": {
                    "value": null,
                    "variation": null
                }
            },
            "poi": {
                "partition": {
                    "value": 0.0,
                    "variation": "NEUTRAL"
                },
                "count": {
                    "value": 0,
                    "variation": "NEUTRAL"
                }
            },
            "quadkey": {
                "tile": "12022311332",
                "wkt": "POLYGON ((10.8984375 44.087585028245165, 11.07421875 44.087585028245165, 11.07421875 44.21370990970204, 10.8984375 44.21370990970204, 10.8984375 44.087585028245165))"
            }
        }
    ]
}