Saturation Series Grouped
Rates Saturation Series Grouped API returns a time-based rate saturation data series for the specified {Location}, grouped by time unit (period) and another additional field (group_type).
Request
Endpoint
GET
/v4/{billing_plan}/account/{account_id}/locations/rates/saturation/overall/series/grouped
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}/locations/rates/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 |
|---|---|---|---|---|
| *{Location} | Location identifier. | Geospatial | AreaGeometryIDCircle | |
| *from | Start date of timeframe. | date | 2020-01-01 | |
| *to | End date of timeframe. | date | 2020-12-31 | |
| *period | Time unit of the series. | string | dayweekmonth | |
| *group_type | Field for which perform grouping. | string | poi_industrypoi_categorypoi_class | |
| ⓝ poi_class | Filter POIs with "category": "hotel" by stars rating in the range [1,5]. |
int | 4 | |
| ⓝ poi_industry | Filter by POI Industry. | string | Dictionary | |
| ⓝ poi_category | Filter by POI Category. | string | Dictionary | |
| ⓝ facility | Filter offers by included facility. | string | breakfastlunchdinner | |
| guests | Filter offers by number of allowed guests. | int | 1 | 2 (only when group_type is not equal to guests) |
| refundable | Filter offers that can be refunded. | boolean | truefalse | |
| 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 (only when group_type is not equal to scan_last_day) |
| page | Requested page number for paginated results. | int | 1 | |
| page_size | Requested page size for paginated results in the range [1, 100]. | int | 25 |
Supported values for period
- day
- week
- month
Supported values for group_type
- poi_industry
- poi_category
- poi_class
- guests
- scan_last_day
Supported values for facility
- breakfast
- lunch
- dinner
Example
curl -X GET 'https://api.datappeal.io/v4/ondemand/account/{account_id}/locations/rates/saturation/overall/series/grouped?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-02-28&period=month&group_type=poi_class' \
-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}/locations/rates/sample/saturation/overall/series/grouped?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-02-28&period=month&group_type=poi_class' \
-H 'x-api-key: {x_api_key}' \
-H 'Authorization: Bearer {jwt_bearer}' \
Body
LocationRatesGroupedSeriesSaturation
| Name | Description | Type |
|---|---|---|
| *results | Paginated list of time-based rates saturation data series grouped by group_type requested field. |
array[LocationRatesGroupedSeriesSaturationElement] |
| paging | Response pagination. | Paging |
LocationRatesGroupedSeriesSaturationElement
| Field | Description | Type |
|---|---|---|
| *group | Field value within the requested grouping by field. | string |
| *series | Rates saturation data series of corresponding group. |
array[LocationRatesSeriesSaturationElement] |
LocationRatesSeriesSaturationElement
| Field | Description | Type |
|---|---|---|
| *period | Date representing the requested period, corresponding to the first day of the period.day: the day itself.week: first day of the corresponding week.month: first day of the corresponding month. |
date |
| *value | Rates saturation data of corresponding period. |
LocationRatesSaturation |
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. |
decimal | 34.09 |
Paging
| Field | Description | Type |
|---|---|---|
| last | A relative URI to the last page. | string |
| first | A relative URI to the first page. | string |
| prev | A relative URI to the previous page. | string |
| next | A relative URI to the next page. | string |
| current | A relative URI to the current page. | string |
| pages | A set of relative URIs calculated around the current page. | Page |
| elements | All indexes shown on the current page. | array[int] |
| total | The number of all elements that API can retrieve. | int |
| size | The selected page size. | int |
Page
| Field | Description | Type |
|---|---|---|
| number | Number of the page. | int |
| uri | URI of the page. | string |
Example
{
"results": [
{
"group": "1",
"series": [
{
"period": "2021-01-01",
"value": {
"total_offers": 2635,
"available_offers": 2468,
"saturation": 6.34
}
},
{
"period": "2021-02-01",
"value": {
"total_offers": 2902,
"available_offers": 2729,
"saturation": 5.96
}
}
]
},
{
"group": "2",
"series": [
{
"period": "2021-01-01",
"value": {
"total_offers": 7516,
"available_offers": 6954,
"saturation": 7.48
}
},
{
"period": "2021-02-01",
"value": {
"total_offers": 10310,
"available_offers": 9263,
"saturation": 10.16
}
}
]
},
{
"group": "3",
"series": [
{
"period": "2021-01-01",
"value": {
"total_offers": 43250,
"available_offers": 36029,
"saturation": 16.7
}
},
{
"period": "2021-02-01",
"value": {
"total_offers": 52320,
"available_offers": 45118,
"saturation": 13.77
}
}
]
},
{
"group": "4",
"series": [
{
"period": "2021-01-01",
"value": {
"total_offers": 168666,
"available_offers": 103573,
"saturation": 38.59
}
},
{
"period": "2021-02-01",
"value": {
"total_offers": 173011,
"available_offers": 98561,
"saturation": 43.03
}
}
]
},
{
"group": "5",
"series": [
{
"period": "2021-01-01",
"value": {
"total_offers": 51586,
"available_offers": 22708,
"saturation": 55.98
}
},
{
"period": "2021-02-01",
"value": {
"total_offers": 53193,
"available_offers": 20670,
"saturation": 61.14
}
}
]
}
],
"paging": {
"last": "/rates/saturation/overall/series/grouped?page=1&page_size=25&period=month&geometry_id=f1a18ae2b36f68bb7449596efafcf3b22601d41911be8b6a4ad208ddb1743eec&from=2021-01-01&group_type=poi_class&to=2021-02-28",
"first": "/rates/saturation/overall/series/grouped?page=1&page_size=25&period=month&geometry_id=f1a18ae2b36f68bb7449596efafcf3b22601d41911be8b6a4ad208ddb1743eec&from=2021-01-01&group_type=poi_class&to=2021-02-28",
"prev": null,
"next": null,
"current": "/rates/saturation/overall/series/grouped?page=1&page_size=25&period=month&geometry_id=f1a18ae2b36f68bb7449596efafcf3b22601d41911be8b6a4ad208ddb1743eec&from=2021-01-01&group_type=poi_class&to=2021-02-28",
"pages": [
{
"number": 1,
"uri": "/rates/saturation/overall/series/grouped?page=1&page_size=25&period=month&geometry_id=f1a18ae2b36f68bb7449596efafcf3b22601d41911be8b6a4ad208ddb1743eec&from=2021-01-01&group_type=poi_class&to=2021-02-28"
}
],
"total": 5,
"size": 25,
"elements": [
1,
2,
3,
4,
5
]
}
}