/* Options: Date: 2026-01-12 03:52:45 SwiftVersion: 5.0 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://p4v8.smartdatasolutions.nl/api //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: Meteringpoints.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack /** * Get list of metering points */ // @Route("/v5/meteringpoints/", "GET") // @Route("/v5/meteringpoints/{Ean}", "GET") // @Api(Description="Get list of metering points") public class Meteringpoints : Generic { /** * Skip the first ... metering points */ // @ApiMember(DataType="Integer", Description="Skip the first ... metering points", Name="Offset") public var offset:Int /** * Limit response to ... metering points */ // @ApiMember(DataType="Integer", Description="Limit response to ... metering points", Name="Limit") public var limit:Int /** * Request of details of specific metering point with Ean */ // @ApiMember(DataType="EAN (18 numbers)", Description="Request of details of specific metering point with Ean", Name="Ean") public var ean:String /** * Include metering points with ended contracts (Default: false) */ // @ApiMember(DataType="Boolean", Description="Include metering points with ended contracts (Default: false)", Name="ShowEnded") public var showEnded:Bool /** * Include additional info about the metering point (Default: false) */ // @ApiMember(DataType="Boolean", Description="Include additional info about the metering point (Default: false)", Name="AddExtraInfo") public var addExtraInfo:Bool required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case offset case limit case ean case showEnded case addExtraInfo } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) offset = try container.decodeIfPresent(Int.self, forKey: .offset) limit = try container.decodeIfPresent(Int.self, forKey: .limit) ean = try container.decodeIfPresent(String.self, forKey: .ean) showEnded = try container.decodeIfPresent(Bool.self, forKey: .showEnded) addExtraInfo = try container.decodeIfPresent(Bool.self, forKey: .addExtraInfo) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if offset != nil { try container.encode(offset, forKey: .offset) } if limit != nil { try container.encode(limit, forKey: .limit) } if ean != nil { try container.encode(ean, forKey: .ean) } if showEnded != nil { try container.encode(showEnded, forKey: .showEnded) } if addExtraInfo != nil { try container.encode(addExtraInfo, forKey: .addExtraInfo) } } } public enum DateTimeFormat : String, Codable { case ISO8601 case UTC case NL case NLOffset case IN case INOffset case Unix case UnixMillis } public class Generic : Codable { /** * 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 var apiKey:String /** * 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 var onlyPayload:Bool /** * 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 var showRequest:Bool /** * 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 var dateTimeFormat:DateTimeFormat required public init(){} }