Working with Time Zones
Time Zones
HAKOM time series are always assigned to the local time zone of the respective TSM application, if not stated otherwise. To set a specific time zone for a time series follow the below instructions.
TSM App:
- Click on Load in the TSM Ribbon
- Press the Search... button in the Time series area of the TSM window
- Search for the required time series by entering search parameters and pressing Search button
- Select the time series in the results grid
- Select the Edit tab in the Time Series Search window > the definition of the selected time series is being loaded
- Select the according time zone name from the Timezone selection list in Advanced expandable menu
- Press the Save button
WebTSM Services API:
Set the Timezone property of the time series definition in
POST / PUT /repositories/:repository/timeseries
or/repositories/:repository/timeseriescollections/definition
Body to a valid time zone name*XML{ "Name": "MyFirstTimeSeries", "Type": 2, "Interval": { "Value": "Minute", "Multiplier": 15 }, "Unit": "KWh", "TimeZone": "Name of the time zone" }
Time zone names
You may use any time zone names supported by Microsoft and some custom time zones defined by HAKOM. For more information, refer to the Supported time zones section of this page.
When and Why Is Time Zone Important?
The correct assignment to a time zone is crucial if transmitted data should be stored in larger raster than 1 hour and the period of the data contains a time change (plus or minus hour), which must be resolved according to a given time zone.
Supported Time Zones
In HAKOM TSM we support a set of standard time zones (depending from the environment you use) extended by a set of HAKOM specific custom time zones:
- Standard time zones in Microsoft environments (Windows / Azure Web App) all time zone supported by Microsoft (https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones).
- Standard time zones in Linux environments (Linux / Docker) we support IANA names (https://www.iana.org/time-zones, a list of available time zone names is documented here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)
- HAKOM specific time zones: to be able to react faster to time zone changes we also support some custom zones (like Russia time). A complete list is available here: Reading Data into Excel
Reading/Writing in Specific Time Zones
To display data with
TSM App:
In the TSM Excel Template the desired time zone for data read and write operations can be set in cell A16. (See: Reading Data into Excel)
By default, if no time zone is specified in the template, all timestamps are displayed in local time of the host system (operating system where TSM App is installed). If a timezone was specified, all data in the template will be interpreted in the given timezone.
WebTSM Services API:
The WebTSM Services API displays all time series data in UTC time either as ISO 8601 format or as seconds/milliseconds since unix epoch.
In queries as well in from, to, audit and quotation parameters as well in the JSON body alternatively to UTC times ISO 8601 time stamps with the according time zone offset information can be used. The responses from the service will still remain in UTC time zone.
Example for local time with time zone offset as parameter:
GET /repositories/:reposiory/timeseries/:ID|Name/data?from=2020-03-28T00:00:00%2B01:00&to=2020-04-01T00:00:00%2B02:00
Tip
Note since + sign is not allowed in the url, it has to be encoded as %2B.
Also note that the above request contains a winter-summer-day-light-savings-time-switch, hence the two dates have different offsets.
Example for local time with time zone offset in the request body:
{
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "kWh",
"Data": [
{
"From": "2020-03-29T00:00:00+01:00",
"Value": 100,
"Flag": 9
},
{
"From": "2020-03-29T01:00:00+01:00",
"Value": 200,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00+01:00",
"Value": 300,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00+02:00",
"Value": 300,
"Flag": 9
}
]
}
Tip
Note that the above request contains a winter-summer-day-light-savings-time-switch, hence hour 2 is present twice using different offsets.
Time Zone Conversions Demonstrated
In the following, some simple examples will show how time zones around a winter/summer day light saving switch time behave.
To demonstrate how time zones in HAKOM TSM behave, the following chapters will demonstrate the HAKOM TSM raster conversion logic into various resolutions and directions using the WebTSM Services API around a day light savings time switch.
Time Zones for Hourly Rasters and Smaller
For the below examples we will use two time series with a 1 hour interval:
Time series | Raster | Time zone |
---|---|---|
Timeseries_UTC | 1 hour | UTC |
Timeseries_WesternEuropean | 1 hour | W. Europe Standard Time |
WebTSM Services API example - time series definitions
POST {{baseUrl}}\repositories\ZAMS\timeseriescollections\definition
[
{
"Name": "Timeseries_UTC",
"Type": 2,
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "KWh",
"Timezone": "UTC"
},
{
"Name": "Timeseries_WesternEuropean",
"Type": 2,
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "KWh",
"Timezone": "W. Europe Standard Time"
}
]
Let us write some data on both time series. We will submit:
- UTC timestamps to the UTC time series
- local timestamps to the time series with local time.
Of course, on both time series we could use UTC timestamps to submit data, since the system converts all timestamps to UTC. Values highlighted in red and strikethrough are not stored on the respective time series and are only shown for better comparability.
Timeseries_UTC - timestamps | Value | Timeseries_WesternEuropean - timestamps | Value | DST switch |
---|---|---|---|---|
2020-03-29T00:00:00+01:00 | 10 | |||
2020-03-29T00:00:00Z | 10 | 2020-03-29T01:00:00+01:00 | 10 | |
2020-03-29T01:00:00Z | 10 | 2020-03-29T02:00:00+01:00 | 10 | |
2020-03-29T02:00:00Z | 10 | 2020-03-29T04:00:00+02:00 | 10 | yes |
2020-03-29T03:00:00Z | 10 | 2020-03-29T04:00:00+02:00 | 10 | |
2020-03-29T04:00:00Z | 10 | 2020-03-29T05:00:00+02:00 | 10 | |
2020-03-29T05:00:00Z | 10 | 2020-03-29T06:00:00+02:00 | 10 | |
2020-03-29T06:00:00Z | 10 | 2020-03-29T07:00:00+02:00 | 10 | |
2020-03-29T07:00:00Z | 10 | 2020-03-29T08:00:00+02:00 | 10 | |
2020-03-29T08:00:00Z | 10 | 2020-03-29T09:00:00+02:00 | 10 | |
2020-03-29T09:00:00Z | 10 | 2020-03-29T10:00:00+02:00 | 10 | |
2020-03-29T10:00:00Z | 10 | 2020-03-29T11:00:00+02:00 | 10 | |
2020-03-29T11:00:00Z | 10 | 2020-03-29T12:00:00+02:00 | 10 | |
2020-03-29T12:00:00Z | 10 | 2020-03-29T13:00:00+02:00 | 10 | |
2020-03-29T13:00:00Z | 10 | 2020-03-29T14:00:00+02:00 | 10 | |
2020-03-29T14:00:00Z | 10 | 2020-03-29T15:00:00+02:00 | 10 | |
2020-03-29T15:00:00Z | 10 | 2020-03-29T16:00:00+02:00 | 10 | |
2020-03-29T16:00:00Z | 10 | 2020-03-29T17:00:00+02:00 | 10 | |
2020-03-29T17:00:00Z | 10 | 2020-03-29T18:00:00+02:00 | 10 | |
2020-03-29T18:00:00Z | 10 | 2020-03-29T19:00:00+02:00 | 10 | |
2020-03-29T19:00:00Z | 10 | 2020-03-29T20:00:00+02:00 | 10 | |
2020-03-29T20:00:00Z | 10 | 2020-03-29T21:00:00+02:00 | 10 | |
2020-03-29T21:00:00Z | 10 | 2020-03-29T22:00:00+02:00 | 10 | |
2020-03-29T22:00:00Z | 10 | |||
2020-03-29T23:00:00Z | 10 |
WebTSM Services API example - write data
POST {{baseUrl}}/repositories/ZAMS/timeseriescollections/data
[
{
"Name": "Timeseries_UTC",
"Data":
{
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "kWh",
"Data": [
{
"From": "2020-03-29T00:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T01:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T03:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T04:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T05:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T06:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T07:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T08:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T09:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T10:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T11:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T12:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T13:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T14:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T15:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T16:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T17:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T18:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T19:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T20:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T21:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T22:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T23:00:00Z",
"Value": 10.0,
"Flag": 9
}
]
}
},
{
"Name": "Timeseries_WesternEuropean",
"Data":
{
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "kWh",
"Data": [
{
"From": "2020-03-29T00:00:00+01:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T01:00:00+01:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00+01:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T04:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T04:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T05:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T06:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T07:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T08:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T09:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T10:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T11:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T12:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T13:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T14:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T15:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T16:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T17:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T18:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T19:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T20:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T21:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T22:00:00+02:00",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T23:00:00+02:00",
"Value": 10.0,
"Flag": 9
}
]
}
}
]
Let us check both time series by querying their data in hourly raster.
The time series in UTC would will show 240 (24 x 10), the time series in local time will show 230 (23 x 10), because on the respective day 24 hours in UTC or 23 hours in local time exist:
Time series | From | To | Value |
---|---|---|---|
Timeseries_UTC | 2020-03-29T00:00:00Z | 2020-03-30T00:00:00Z | 240 |
Timeseries_WesternEuropean | 2020-03-29T00:00:00+01:00 | 2020-03-30T00:00:00+02:00 | 230 |
WebTSM Services API example - read data - UTC time series
GET {{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_UTC&from=2020-03-29T00:00:00Z&to=2020-03-30T00:00:00Z&interval=4
[
{
"ID": 13155,
"Name": "Timeseries_UTC",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-29T00:00:00Z",
"Value": 240.0,
"Flag": 9
}
]
}
}
]
WebTSM Services API example - read data - local time series
GET {{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_WesternEuropean&from=2020-03-29T00:00:00%2B01:00&to=2020-03-30T00:00:00%2B02:00&interval=4
[
{
"ID": 13156,
"Name": "Timeseries_WesternEuropean",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-28T23:00:00Z",
"Value": 230.0,
"Flag": 9
}
]
}
}
]
Time Zones with a Raster Larger than One Hour
For our examples we will use two time series with a 1 day interval:
Time series | Raster | Time zone |
---|---|---|
Timeseries_UTC_1day | 1 day | UTC |
Timeseries_WesternEuropean_1day | 1 day | W. Europe Standard Time |
WebTSM Services API example - time series definitions
POST {{baseUrl}}\repositories\ZAMS\timeseriescollections\definition
[
{
"Name": "Timeseries_UTC_1day",
"Type": 2,
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Timezone": "UTC"
},
{
"Name": "Timeseries_WesternEuropean_1day",
"Type": 2,
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Timezone": "W. Europe Standard Time"
}
]
Let us write now some daily values on both time series. Note, in local time one of the days has a DST hour switch (winter to summer), for better readability we will add a proportionally smaller value:
Timeseries_UTC - timestamp | Value | Timeseries_WesternEuropean - timestamp | Value | DST switch |
---|---|---|---|---|
2020-03-28T00:00:00Z | 240 | 2020-03-28T00:00:00+01:00 | 240 | |
2020-03-29T00:00:00Z | 240 | 2020-03-29T00:00:00+01:00 | 230 | yes |
2020-03-30T00:00:00Z | 240 | 2020-03-30T00:00:00+02:00 | 240 | |
2020-03-31T00:00:00Z | 240 | 2020-03-31T00:00:00+02:00 | 240 |
WebTSM Services API example - write data
POST {{baseUrl}}/repositories/ZAMS/timeseriescollections/data
[
{
"Name": "Timeseries_UTC_1day",
"Data":
{
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "kWh",
"Data": [
{
"From": "2020-03-28T00:00:00Z",
"Value": 240,
"Flag": 9
},
{
"From": "2020-03-29T00:00:00Z",
"Value": 240,
"Flag": 9
},
{
"From": "2020-03-30T00:00:00Z",
"Value": 240,
"Flag": 9
},
{
"From": "2020-03-31T00:00:00Z",
"Value": 240,
"Flag": 9
}
]
}
},
{
"Name": "Timeseries_WesternEuropean_1day",
"Data":
{
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "kWh",
"Data": [
{
"From": "2020-03-28T00:00:00+01:00",
"Value": 240,
"Flag": 9
},
{
"From": "2020-03-29T00:00:00+01:00",
"Value": 230,
"Flag": 9
},
{
"From": "2020-03-30T00:00:00+02:00",
"Value": 240,
"Flag": 9
},
{
"From": "2020-03-31T00:00:00+02:00",
"Value": 240,
"Flag": 9
}
]
}
}
]
Let us check both time series by querying their data in daily raster around the DST date:
Timeseries_UTC - timestamp | Value | Timeseries_WesternEuropean - timestamp | Value | DST switch |
---|---|---|---|---|
2020-03-28T00:00:00Z | 240 | 2020-03-28T00:00:00+01:00 | 240 | |
2020-03-29T00:00:00Z | 240 | 2020-03-29T00:00:00+01:00 | 230 | yes |
2020-03-30T00:00:00Z | 240 | 2020-03-30T00:00:00+02:00 | 240 |
WebTSM Services API example - read data - UTC time series
GET {{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_UTC_1day&from=2020-03-28T00:00:00Z&to=2020-03-31T00:00:00Z
[
{
"ID": 13157,
"Name": "Timeseries_UTC_1day",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-28T00:00:00Z",
"Value": 240.0,
"Flag": 9
},
{
"From": "2020-03-29T00:00:00Z",
"Value": 240.0,
"Flag": 9
},
{
"From": "2020-03-30T00:00:00Z",
"Value": 240.0,
"Flag": 9
}
]
}
}
]
WebTSM Services API example - read data - local time series
{{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_WesternEuropean_1day&from=2020-03-28T00:00:00%2B01:00&to=2020-03-31T00:00:00%2B02:00
[
{
"ID": 13158,
"Name": "Timeseries_WesternEuropean_1day",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 4,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-27T23:00:00Z",
"Value": 240.0,
"Flag": 9
},
{
"From": "2020-03-28T23:00:00Z",
"Value": 230.0,
"Flag": 9
},
{
"From": "2020-03-29T22:00:00Z",
"Value": 240.0,
"Flag": 9
}
]
}
}
]
To illustrate how the daily values are scaled up to hourly resolion, let us read the DST switch day in an hourly raster. We expect the following values:
Timeseries_UTC - timestamps | Value | Timeseries_WesternEuropean - timestamps | Value | DST switch |
---|---|---|---|---|
2020-03-28T23:00:00Z | 10 | |||
2020-03-29T00:00:00Z | 10 | 2020-03-29T00:00:00Z | 10 | |
2020-03-29T01:00:00Z | 10 | 2020-03-29T01:00:00Z | 10 | |
2020-03-29T02:00:00Z | 10 | 2020-03-29T02:00:00Z | 10 | yes |
2020-03-29T03:00:00Z | 10 | 2020-03-29T03:00:00Z | 10 | |
2020-03-29T04:00:00Z | 10 | 2020-03-29T04:00:00Z | 10 | |
2020-03-29T05:00:00Z | 10 | 2020-03-29T05:00:00Z | 10 | |
2020-03-29T06:00:00Z | 10 | 2020-03-29T06:00:00Z | 10 | |
2020-03-29T07:00:00Z | 10 | 2020-03-29T07:00:00Z | 10 | |
2020-03-29T08:00:00Z | 10 | 2020-03-29T08:00:00Z | 10 | |
2020-03-29T09:00:00Z | 10 | 2020-03-29T09:00:00Z | 10 | |
2020-03-29T10:00:00Z | 10 | 2020-03-29T10:00:00Z | 10 | |
2020-03-29T11:00:00Z | 10 | 2020-03-29T11:00:00Z | 10 | |
2020-03-29T12:00:00Z | 10 | 2020-03-29T12:00:00Z | 10 | |
2020-03-29T13:00:00Z | 10 | 2020-03-29T13:00:00Z | 10 | |
2020-03-29T14:00:00Z | 10 | 2020-03-29T14:00:00Z | 10 | |
2020-03-29T15:00:00Z | 10 | 2020-03-29T15:00:00Z | 10 | |
2020-03-29T16:00:00Z | 10 | 2020-03-29T16:00:00Z | 10 | |
2020-03-29T17:00:00Z | 10 | 2020-03-29T17:00:00Z | 10 | |
2020-03-29T18:00:00Z | 10 | 2020-03-29T18:00:00Z | 10 | |
2020-03-29T19:00:00Z | 10 | 2020-03-29T19:00:00Z | 10 | |
2020-03-29T20:00:00Z | 10 | 2020-03-29T20:00:00Z | 10 | |
2020-03-29T21:00:00Z | 10 | 2020-03-29T21:00:00Z | 10 | |
2020-03-29T22:00:00Z | 10 | 2020-03-29T22:00:00Z | ||
2020-03-29T23:00:00Z | 10 | 2020-03-29T23:00:00Z |
WebTSM Services API example - read data - UTC time series
GET {{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_UTC_1day&from=2020-03-29T00:00:00Z&to=2020-03-30T00:00:00Z&interval=3
[
{
"ID": 13157,
"Name": "Timeseries_UTC_1day",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-29T00:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T01:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T03:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T04:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T05:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T06:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T07:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T08:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T09:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T10:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T11:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T12:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T13:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T14:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T15:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T16:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T17:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T18:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T19:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T20:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T21:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T22:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T23:00:00Z",
"Value": 10.0,
"Flag": 9
}
]
}
}
]
WebTSM Services API example - read data - local time series
GET {{baseUrl}}/repositories/ZAMS/timeseriescollections/data?name=Timeseries_WesternEuropean_1day&from=2020-03-29T00:00:00%2B01:00&to=2020-03-30T00:00:00%2B02:00&interval=3
[
{
"ID": 13158,
"Name": "Timeseries_WesternEuropean_1day",
"Status": 200,
"Message": null,
"Details": null,
"Data": {
"Interval": {
"Value": 3,
"Multiplier": 1
},
"Unit": "KWh",
"Data": [
{
"From": "2020-03-28T23:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T00:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T01:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T02:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T03:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T04:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T05:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T06:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T07:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T08:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T09:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T10:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T11:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T12:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T13:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T14:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T15:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T16:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T17:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T18:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T19:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T20:00:00Z",
"Value": 10.0,
"Flag": 9
},
{
"From": "2020-03-29T21:00:00Z",
"Value": 10.0,
"Flag": 9
}
]
}
}
]