▪ Cluster Series Compare
Cluster Series Compare API returns two, time-based cluster data series at once: one defined by the specified {Location} and [from,to] query parameters and another defined by compare_ prefixed query parameters (or auto-calculated with default values where specified).
Additional comparative time-based data series between the two data series are returned as well.
Request
Endpoint
GET
/v4/{billing_plan}/account/{account_id}/locations/clusters/overall/series/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}/locations/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} | Actual location identifier. | Geospatial | AreaGeometryIDCircle | |
| *from | Start date of actual timeframe. | date | 2020-01-01 | |
| *to | End date of actual timeframe. | date | 2020-12-31 | |
| *period | Time unit of the series. | string | weekmonth | |
| {ComparisonLocation} | Comparison location identifier. | Comparison | ComparisonAreaComparisonGeometryIDComparisonCircle | Same as {Location}. | 
| 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. | 
| ⓝ topic | Filter by topic. | string | 2 starsdinner | |
| ⓝ cluster | Filter by cluster. | string | Dictionary | |
| ⓝ networkⓝ compare_network | Filter by network. | string | Dictionary | |
| ⓝ 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 | |
| language | Translate cluster names in the specified language.It also allows the user to filter by clusterparameter by setting its value in the specified language. | string | itfr | en | 
| ⓝ user_typeⓝ compare_user_type | Filter by reviewer type. | string | Dictionary | |
| ⓝ user_countryⓝ compare_user_country | Filter by reviewer's country of origin in ISO 3166-1 alpha-2 standard format (in lower case). | string | itde | |
| ⓝ content_languageⓝ compare_content_language | Filter by contents language in ISO_639-1 standard format. | string | enfr | |
| ⓝ content_typeⓝ compare_content_type | Filter by type of content. | string | postreviewtaggedpost | review && taggedpost | 
| 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
- week
- month
Supported values for language
- en
- it
- fr
- es
- de
Example
curl -X GET 'https://api.datappeal.io/v4/ondemand/account/{account_id}/locations/clusters/overall/series/compare?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-02-28&compare_from=2020-11-01&compare_to=2020-12-31&period=month&page_size=2' \
-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/sample/clusters/overall/series/compare?geometry_id=379c730942e570d586a5520770c0a65d&from=2021-01-01&to=2021-02-28&compare_from=2020-11-01&compare_to=2020-12-31&period=month&page_size=2' \
-H 'x-api-key: {x_api_key}' \
-H 'Authorization: Bearer {jwt_bearer}' \
Response
Status
| Status | Description | 
|---|---|
| 200 | Cluster Series Compare data has been successfully returned. | 
Body
LocationComparedSeriesClusters
| Name | Description | Type | 
|---|---|---|
| *results | Paginated compared clusters data series. | LocationComparedSeriesClustersResults | 
| paging | Response pagination. | Paging | 
LocationComparedSeriesClustersResults
| Field | Description | Type | 
|---|---|---|
| actual | Clusters data series for the actual timeframe. | LocationComparableSeriesClusters | 
| comparison | Clusters data series for the comparison timeframe. | LocationComparableSeriesClusters | 
| variation | Calculated difference between actualandcomparison. | array[LocationSeriesClustersVariation] | 
LocationComparableSeriesClusters
| Field | Description | Type | 
|---|---|---|
| timeframe | Reference date range. | Timeframe | 
| value | Clusters data series for the corresponding timeframe. | LocationSeriesCluster | 
Timeframe
| Field | Description | Type | 
|---|---|---|
| *from | Start date of timeframe. | date | 
| *to | End date of timeframe. | date | 
LocationSeriesCluster
| Field | Description | Type | 
|---|---|---|
| *cluster | Descriptive identifier of the cluster. | string | 
| *series | Cluster data series. | array[LocationSeriesClusterElement] | 
LocationSeriesClusterElement
| Field | Description | Type | 
|---|---|---|
| *period | Date representing the requested period, corresponding to the first day of the period. week: first day of the corresponding week.month: first day of the corresponding month. | date | 
| *value | Cluster data of corresponding period. | LocationSemantics | 
LocationSemantics
| Field | Description | Type | 
|---|---|---|
| contents | Total count of contents. | Total | 
| opinions | Total and grouped by polarity count of opinions. | PolarizedCount | 
| sentiment | KPI which indicates users global satisfaction. | PolarizedValue | 
Total
| Field | Description | Type | 
|---|---|---|
| total | Total count of elements. | int | 
PolarizedCount
| Field | Description | Type | 
|---|---|---|
| positive | Positive elements count. | int | 
| negative | Negative elements count. | int | 
| neutral | Neutral elements count. | int | 
| total | Total elements count. | int | 
PolarizedValue
| Field | Description | Type | Examples | 
|---|---|---|---|
| value | Value of the including field in the range [0,100]. | decimal | 60.3 59.7 | 
| polarity | Polarity of the corresponding value. | string | POSITIVE NEGATIVE | 
LocationSeriesClustersVariation
| Field | Description | Type | 
|---|---|---|
| *cluster | Descriptive identifier of the cluster. | string | 
| *series | Cluster data variation series for the requested timeframe and period. | array[LocationSeriesSemanticsVariationElement] | 
LocationSeriesSemanticsVariationElement
| Field | Description | Type | 
|---|---|---|
| *actual_period | Date representing the actual period, corresponding to the first day of the period. week: first day of the corresponding week.month: first day of the corresponding month. | date | 
| *comparison_period | Date representing the comparison period, corresponding to the first day of the period. week: first day of the corresponding week.month: first day of the corresponding month. | date | 
| *value | Cluster variation data between actual_periodandcomparison_period. | LocationSemanticsVariation | 
LocationSemanticsVariation
| Field | Description | Type | 
|---|---|---|
| *opinions | Grouped by polarity opinions variation. | PolarizedVariation | 
| *contents | Grouped by polarity contents variation. | TotalVariation | 
| *sentiment | Sentiment variation. | Variation | 
PolarizedVariation
| Field | Description | Type | 
|---|---|---|
| positive | Positive elements count variation. | Variation | 
| negative | Negative elements count variation. | Variation | 
| neutral | Neutral elements count variation. | Variation | 
| total | Total elements count variation. | Variation | 
TotalVariation
| Field | Description | Type | 
|---|---|---|
| total | Total elements count variation. | Variation | 
Variation
| Field | Description | Type | Examples | 
|---|---|---|---|
| value | Difference between actualvalue andcomparisonvalue. | decimal | 1.12 | 
| variation | The explicit variation polarity. It is nullwhen values are not available in both timeframes. | string | POSITIVE NEUTRAL NEGATIVE | 
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": {
        "actual": {
            "timeframe": {
                "from": "2021-01-01",
                "to": "2021-02-28"
            },
            "value": [
                {
                    "cluster": "atmosphere",
                    "series": [
                        {
                            "period": "2021-01-01",
                            "value": {
                                "contents": {
                                    "total": 3049
                                },
                                "opinions": {
                                    "positive": 5169,
                                    "negative": 608,
                                    "neutral": 0,
                                    "total": 5777
                                },
                                "sentiment": {
                                    "value": 89.48,
                                    "polarity": "POSITIVE"
                                }
                            }
                        },
                        {
                            "period": "2021-02-01",
                            "value": {
                                "contents": {
                                    "total": 3064
                                },
                                "opinions": {
                                    "positive": 4821,
                                    "negative": 611,
                                    "neutral": 0,
                                    "total": 5432
                                },
                                "sentiment": {
                                    "value": 88.75,
                                    "polarity": "POSITIVE"
                                }
                            }
                        }
                    ]
                },
                {
                    "cluster": "food quality",
                    "series": [
                        {
                            "period": "2021-01-01",
                            "value": {
                                "contents": {
                                    "total": 1676
                                },
                                "opinions": {
                                    "positive": 2471,
                                    "negative": 275,
                                    "neutral": 0,
                                    "total": 2746
                                },
                                "sentiment": {
                                    "value": 89.99,
                                    "polarity": "POSITIVE"
                                }
                            }
                        },
                        {
                            "period": "2021-02-01",
                            "value": {
                                "contents": {
                                    "total": 1715
                                },
                                "opinions": {
                                    "positive": 2537,
                                    "negative": 301,
                                    "neutral": 0,
                                    "total": 2838
                                },
                                "sentiment": {
                                    "value": 89.39,
                                    "polarity": "POSITIVE"
                                }
                            }
                        }
                    ]
                }
            ]
        },
        "comparison": {
            "timeframe": {
                "from": "2020-11-01",
                "to": "2020-12-31"
            },
            "value": [
                {
                    "cluster": "atmosphere",
                    "series": [
                        {
                            "period": "2020-11-01",
                            "value": {
                                "contents": {
                                    "total": 3223
                                },
                                "opinions": {
                                    "positive": 5393,
                                    "negative": 654,
                                    "neutral": 0,
                                    "total": 6047
                                },
                                "sentiment": {
                                    "value": 89.18,
                                    "polarity": "POSITIVE"
                                }
                            }
                        },
                        {
                            "period": "2020-12-01",
                            "value": {
                                "contents": {
                                    "total": 1658
                                },
                                "opinions": {
                                    "positive": 2804,
                                    "negative": 461,
                                    "neutral": 0,
                                    "total": 3265
                                },
                                "sentiment": {
                                    "value": 85.88,
                                    "polarity": "POSITIVE"
                                }
                            }
                        }
                    ]
                },
                {
                    "cluster": "food quality",
                    "series": [
                        {
                            "period": "2020-11-01",
                            "value": {
                                "contents": {
                                    "total": 1624
                                },
                                "opinions": {
                                    "positive": 2387,
                                    "negative": 252,
                                    "neutral": 0,
                                    "total": 2639
                                },
                                "sentiment": {
                                    "value": 90.45,
                                    "polarity": "POSITIVE"
                                }
                            }
                        },
                        {
                            "period": "2020-12-01",
                            "value": {
                                "contents": {
                                    "total": 948
                                },
                                "opinions": {
                                    "positive": 1338,
                                    "negative": 134,
                                    "neutral": 0,
                                    "total": 1472
                                },
                                "sentiment": {
                                    "value": 90.9,
                                    "polarity": "POSITIVE"
                                }
                            }
                        }
                    ]
                }
            ]
        },
        "variation": [
            {
                "cluster": "atmosphere",
                "series": [
                    {
                        "actual_period": "2021-01-01",
                        "comparison_period": "2020-11-01",
                        "value": {
                            "opinions": {
                                "positive": {
                                    "value": -224,
                                    "variation": "NEGATIVE"
                                },
                                "negative": {
                                    "value": -46,
                                    "variation": "POSITIVE"
                                },
                                "neutral": {
                                    "value": 0,
                                    "variation": "NEUTRAL"
                                },
                                "total": {
                                    "value": -270,
                                    "variation": "NEGATIVE"
                                }
                            },
                            "contents": {
                                "total": {
                                    "value": -174,
                                    "variation": "NEGATIVE"
                                }
                            },
                            "sentiment": {
                                "value": 0.3,
                                "variation": "POSITIVE"
                            }
                        }
                    },
                    {
                        "actual_period": "2021-02-01",
                        "comparison_period": "2020-12-01",
                        "value": {
                            "opinions": {
                                "positive": {
                                    "value": 2017,
                                    "variation": "POSITIVE"
                                },
                                "negative": {
                                    "value": 150,
                                    "variation": "NEGATIVE"
                                },
                                "neutral": {
                                    "value": 0,
                                    "variation": "NEUTRAL"
                                },
                                "total": {
                                    "value": 2167,
                                    "variation": "POSITIVE"
                                }
                            },
                            "contents": {
                                "total": {
                                    "value": 1406,
                                    "variation": "POSITIVE"
                                }
                            },
                            "sentiment": {
                                "value": 2.87,
                                "variation": "POSITIVE"
                            }
                        }
                    }
                ]
            },
            {
                "cluster": "food quality",
                "series": [
                    {
                        "actual_period": "2021-01-01",
                        "comparison_period": "2020-11-01",
                        "value": {
                            "opinions": {
                                "positive": {
                                    "value": 84,
                                    "variation": "POSITIVE"
                                },
                                "negative": {
                                    "value": 23,
                                    "variation": "NEGATIVE"
                                },
                                "neutral": {
                                    "value": 0,
                                    "variation": "NEUTRAL"
                                },
                                "total": {
                                    "value": 107,
                                    "variation": "POSITIVE"
                                }
                            },
                            "contents": {
                                "total": {
                                    "value": 52,
                                    "variation": "POSITIVE"
                                }
                            },
                            "sentiment": {
                                "value": -0.46,
                                "variation": "NEGATIVE"
                            }
                        }
                    },
                    {
                        "actual_period": "2021-02-01",
                        "comparison_period": "2020-12-01",
                        "value": {
                            "opinions": {
                                "positive": {
                                    "value": 1199,
                                    "variation": "POSITIVE"
                                },
                                "negative": {
                                    "value": 167,
                                    "variation": "NEGATIVE"
                                },
                                "neutral": {
                                    "value": 0,
                                    "variation": "NEUTRAL"
                                },
                                "total": {
                                    "value": 1366,
                                    "variation": "POSITIVE"
                                }
                            },
                            "contents": {
                                "total": {
                                    "value": 767,
                                    "variation": "POSITIVE"
                                }
                            },
                            "sentiment": {
                                "value": -1.51,
                                "variation": "NEGATIVE"
                            }
                        }
                    }
                ]
            }
        ]
    },
    "paging": {
        "last": "/clusters/overall/series/compare?page=18&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31",
        "first": "/clusters/overall/series/compare?page=1&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31",
        "prev": null,
        "next": "/clusters/overall/series/compare?page=2&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31",
        "current": "/clusters/overall/series/compare?page=1&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31",
        "pages": [
            {
                "number": 1,
                "uri": "/clusters/overall/series/compare?page=1&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31"
            },
            {
                "number": 2,
                "uri": "/clusters/overall/series/compare?page=2&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31"
            },
            {
                "number": 3,
                "uri": "/clusters/overall/series/compare?page=3&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31"
            },
            {
                "number": 4,
                "uri": "/clusters/overall/series/compare?page=4&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31"
            },
            {
                "number": 5,
                "uri": "/clusters/overall/series/compare?page=5&page_size=2&period=month&geometry_id=379c730942e570d586a5520770c0a65d&compare_from=2020-11-01&from=2021-01-01&to=2021-02-28&compare_to=2020-12-31"
            }
        ],
        "elements": [
            1,
            2
        ],
        "total": 36,
        "size": 2
    }
}