Get Time Series Operation
-
Use
GetTimeSeriesOperation
to retrieve entries from a single time series.
You can also retrieve entries from a single time series using the Session's TimesSeriesFor.Get method. -
Use
GetMultipleTimeSeriesOperation
to retrieve entries from multiple time series. -
For a general Operations overview, see What are Operations.
-
In this page:
Get entries - from single time series
Example
In this example, we retrieve all entries from a single time series.
// Define the get operation
var getTimeSeriesOp = new GetTimeSeriesOperation(
"employees/1-A", // The document ID
"HeartRates", // The time series name
DateTime.MinValue, // Entries range start
DateTime.MaxValue); // Entries range end
// Execute the operation by passing it to 'Operations.Send'
TimeSeriesRangeResult timeSeriesEntries = store.Operations.Send(getTimeSeriesOp);
// Access entries
var firstEntryReturned = timeSeriesEntries.Entries[0];
Syntax
public GetTimeSeriesOperation(
string docId,
string timeseries,
DateTime? from = null,
DateTime? to = null,
int start = 0,
int pageSize = int.MaxValue,
bool returnFullResults = false)
Parameter | Type | Description |
---|---|---|
docId | string |
Document ID |
timeseries | string |
Time series name |
from | DateTime? |
Get time series entries starting from this timestamp (inclusive). Default: DateTime.MinValue |
to | DateTime? |
Get time series entries ending at this timestamp (inclusive). Default: DateTime.MaxValue |
start | int |
The position of the first result to retrieve (for paging) Default: 0 |
pageSize | int |
Number of results per page to retrieve (for paging) Default: int.MaxValue |
returnFullResults | bool |
This param is only relevant when getting incremental time series data |
Return Value:
public class TimeSeriesRangeResult
{
// Timestamp of first entry returned
public DateTime From;
// Timestamp of last entry returned
public DateTime To;
// The resulting entries
// Will be empty if requesting an entries range that does Not exist
public TimeSeriesEntry[] Entries;
// The number of entries returned
// Will be undefined if not all entries of this time series were returned
public long? TotalResults;
}
- Details of class
TimeSeriesEntry
are listed in this syntax section. - If the requested time series does Not exist, the returned object will be
null
. - No exceptions are generated.
Get entries - from multiple time series
Example
In this example, we retrieve entries from the specified ranges of two time series.
// Define the get operation
var getMultipleTimeSeriesOp = new GetMultipleTimeSeriesOperation("employees/1-A",
new List<TimeSeriesRange>
{
new TimeSeriesRange
{
Name = "ExerciseHeartRates", From = baseTime.AddHours(1), To = baseTime.AddHours(10)
},
new TimeSeriesRange
{
Name = "RestHeartRates", From = baseTime.AddHours(11), To = baseTime.AddHours(20)
}
});
// Execute the operation by passing it to 'Operations.Send'
TimeSeriesDetails timesSeriesEntries = store.Operations.Send(getMultipleTimeSeriesOp);
// Access entries
var timeSeriesEntry = timesSeriesEntries.Values["ExerciseHeartRates"][0].Entries[0];
Syntax
public GetMultipleTimeSeriesOperation(
string docId,
IEnumerable<TimeSeriesRange> ranges,
int start = 0,
int pageSize = int.MaxValue,
bool returnFullResults = false)
Parameter | Type | Description |
---|---|---|
docId | string |
Document ID |
ranges | IEnumerable<TimeSeriesRange> |
Provide a TimeSeriesRange object for each time series from which you want to retrieve data |
start | int |
The position of the first result to retrieve (for paging) Default: 0 |
pageSize | int |
Number of results per page to retrieve (for paging) Default: int.MaxValue |
returnFullResults | bool |
This param is only relevant when getting incremental time series data |
public class TimeSeriesRange
{
public string Name; // Name of time series
public DateTime From; // Get time series entries starting from this timestamp (inclusive).
public DateTime To; // Get time series entries ending at this timestamp (inclusive).
}
Return Value:
public class TimeSeriesDetails
{
// The document ID
public string Id { get; set; }
// Dictionary of time series name to the time series results
public Dictionary<string, List<TimeSeriesRangeResult>> Values { get; set; }
}
public class TimeSeriesRangeResult
{
// Timestamp of first entry returned
public DateTime From;
// Timestamp of last entry returned
public DateTime To;
// The resulting entries
// Will be empty if requesting an entries range that does Not exist
public TimeSeriesEntry[] Entries;
// The number of entries returned
// Will be undefined if not all entries of this time series were returned
public long? TotalResults;
}
-
If any of the requested time series do not exist, the returned object will be
null
. -
When an entries range that does not exist are requested,
the return value for the that range is aTimeSeriesRangeResult
object with an emptyEntries
property. -
No exceptions are generated.