/* Options: Date: 2026-01-12 03:22:24 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://p4v8.smartdatasolutions.nl/api //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: Usage.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.*; import java.util.*; import net.servicestack.client.*; public class dtos { /** * Get usages from tablestorage */ @Route(Path="/v5/meteringpoints/{Ean}/usages/{Aggregation}/{DateFrom}", Verbs="GET") // @Route(Path="/v5/meteringpoints/{Ean}/usages/{Aggregation}/{DateFrom}/{DateTo}", Verbs="GET") @Api(Description="Get usages from tablestorage") public static class Usage extends Generic { /** * Request of details of specific meteringpoint with Ean */ @ApiMember(DataType="EAN (18 numbers)", Description="Request of details of specific meteringpoint with Ean", Name="Ean") public String Ean = null; /** * Aggregation level. The None-'level' will give the most detailed level available for the requested asset. If a level is requested that is not available or can be calculate, no data is returned. Enum options: None, Hour, Day */ @ApiMember(DataType="Enum", Description="Aggregation level. The None-'level' will give the most detailed level available for the requested asset. If a level is requested that is not available or can be calculate, no data is returned. Enum options: None, Hour, Day", IsRequired=true, Name="Aggregation") public AggregationForAPI Aggregation = null; /** * Start date the usages are requested for */ @ApiMember(DataType="Date: yyyy-mm-dd", Description="Start date the usages are requested for", IsRequired=true, Name="DateFrom") public Date DateFrom = null; /** * End date the usages are requested for (this is included in the response). If no date is provided the DateTo will seven days from the DateFrom. */ @ApiMember(DataType="Date: yyyy-mm-dd", Description="End date the usages are requested for (this is included in the response). If no date is provided the DateTo will seven days from the DateFrom. ", Name="DateTo") public Date DateTo = null; /** * The output can be generated in a few formats. UsageReturnCombined: return values will be subtracted from the usage, UsageReturn: separate columns form usage and return (if available) and UsageReturnAndTariff: for both usage and return a column for tariff1 and tariff2. Default value: UsageReturnCombined */ @ApiMember(DataType="Enum", Description="The output can be generated in a few formats. UsageReturnCombined: return values will be subtracted from the usage, UsageReturn: separate columns form usage and return (if available) and UsageReturnAndTariff: for both usage and return a column for tariff1 and tariff2. Default value: UsageReturnCombined", Name="PayloadFormat") public PayloadFormat PayloadFormat = null; /** * See filter. Usages are available from the Detail or Day channel. Default value: Detail */ @ApiMember(DataType="Enum", Description="See filter. Usages are available from the Detail or Day channel. Default value: Detail", Name="Source") public MeasurementSource Source = null; /** * Add column with Dutch day (Default: false) */ @ApiMember(DataType="Boolean", Description="Add column with Dutch day (Default: false)", Name="AddDateNL") public Boolean AddDateNL = null; /** * Add columns with CreatedOn and LastUpdated (Default: false) */ @ApiMember(DataType="Boolean", Description="Add columns with CreatedOn and LastUpdated (Default: false)", Name="AddTimestamps") public Boolean AddTimestamps = null; /** * Add column with ean (Default: false) */ @ApiMember(DataType="Boolean", Description="Add column with ean (Default: false)", Name="AddEan") public Boolean AddEan = null; /** * Create a row for each register instead of a column/field for each register (Default: false) */ @ApiMember(DataType="Boolean", Description="Create a row for each register instead of a column/field for each register (Default: false)", Name="RegistersInRows") public Boolean RegistersInRows = null; /** * Gridoperator doesn't provided tariff information for the detail channel, but this can be calculated (Default: false) */ @ApiMember(DataType="Boolean", Description="Gridoperator doesn't provided tariff information for the detail channel, but this can be calculated (Default: false)", Name="CalculateDetailTariff") public Boolean CalculateDetailTariff = null; /** * calculate the usage of that period and divide it over the missing hours or 15 minute periods, but this can be calculated (Default: false) */ @ApiMember(DataType="Boolean", Description="calculate the usage of that period and divide it over the missing hours or 15 minute periods, but this can be calculated (Default: false)", Name="CalculateMissingUsages") public Boolean CalculateMissingUsages = null; public String getEan() { return Ean; } public Usage setEan(String value) { this.Ean = value; return this; } public AggregationForAPI getAggregation() { return Aggregation; } public Usage setAggregation(AggregationForAPI value) { this.Aggregation = value; return this; } public Date getDateFrom() { return DateFrom; } public Usage setDateFrom(Date value) { this.DateFrom = value; return this; } public Date getDateTo() { return DateTo; } public Usage setDateTo(Date value) { this.DateTo = value; return this; } public PayloadFormat getPayloadFormat() { return PayloadFormat; } public Usage setPayloadFormat(PayloadFormat value) { this.PayloadFormat = value; return this; } public MeasurementSource getSource() { return Source; } public Usage setSource(MeasurementSource value) { this.Source = value; return this; } public Boolean isAddDateNL() { return AddDateNL; } public Usage setAddDateNL(Boolean value) { this.AddDateNL = value; return this; } public Boolean isAddTimestamps() { return AddTimestamps; } public Usage setAddTimestamps(Boolean value) { this.AddTimestamps = value; return this; } public Boolean isAddEan() { return AddEan; } public Usage setAddEan(Boolean value) { this.AddEan = value; return this; } public Boolean isRegistersInRows() { return RegistersInRows; } public Usage setRegistersInRows(Boolean value) { this.RegistersInRows = value; return this; } public Boolean isCalculateDetailTariff() { return CalculateDetailTariff; } public Usage setCalculateDetailTariff(Boolean value) { this.CalculateDetailTariff = value; return this; } public Boolean isCalculateMissingUsages() { return CalculateMissingUsages; } public Usage setCalculateMissingUsages(Boolean value) { this.CalculateMissingUsages = value; return this; } } public static enum DateTimeFormat { IsO8601, Utc, Nl, NlOffset, In, InOffset, Unix, UnixMillis; } public static class Generic { /** * Api-key. Used to provide credentials to the api. Can also be provided through the request headers with key: X-API-KEY */ @ApiMember(DataType="String", Description="Api-key. Used to provide credentials to the api. Can also be provided through the request headers with key: X-API-KEY", IsRequired=true, Name="ApiKey") public String ApiKey = null; /** * Normally the result of the request is put inside a resultobject with some status information about the request. If you want the output as csv this outer object can be irritating. Default value: FALSE */ @ApiMember(DataType="Boolean", Description="Normally the result of the request is put inside a resultobject with some status information about the request. If you want the output as csv this outer object can be irritating. Default value: FALSE ", Name="OnlyPayload") public Boolean OnlyPayload = null; /** * Show the request as interpreted by the api. Useful to see how filters / dates are parsed. If no value us provided, the default value is: FALSE */ @ApiMember(DataType="Boolean", Description="Show the request as interpreted by the api. Useful to see how filters / dates are parsed. If no value us provided, the default value is: FALSE ", Name="ShowRequest") public Boolean ShowRequest = null; /** * Format all DateTime in the response object. If used in browser, sometimes ISO8601 is not correctly transformed. Enum options: ISO8601 (DEFAULT), UTC, NL, NLOffset, Unix, UnixMillis */ @ApiMember(DataType="Enum", Description="Format all DateTime in the response object. If used in browser, sometimes ISO8601 is not correctly transformed. Enum options: ISO8601 (DEFAULT), UTC, NL, NLOffset, Unix, UnixMillis", Name="DateTimeFormat") public DateTimeFormat DateTimeFormat = null; public String getApiKey() { return ApiKey; } public Generic setApiKey(String value) { this.ApiKey = value; return this; } public Boolean isOnlyPayload() { return OnlyPayload; } public Generic setOnlyPayload(Boolean value) { this.OnlyPayload = value; return this; } public Boolean isShowRequest() { return ShowRequest; } public Generic setShowRequest(Boolean value) { this.ShowRequest = value; return this; } public DateTimeFormat getDateTimeFormat() { return DateTimeFormat; } public Generic setDateTimeFormat(DateTimeFormat value) { this.DateTimeFormat = value; return this; } } public static enum MeasurementSource { Detail, Day, Month, Unknown; } public static enum AggregationForAPI { None, Hour, Day, Week, Month, Year; } public static enum PayloadFormat { UsageReturnCombined, UsageReturn, UsageReturnAndTariff; } }