openapi: 3.0.0
servers:
  - url: https://smart-me.com:443
info:
  description: With the smart-me REST API you get Access to all your devices in the smart-me Cloud and you can add your own devices. So its an easy way to add the smart-me Cloud support to your Hardware or Software Product.
  title: smart-me
  version: v1
  x-apisguru-categories:
    - iot
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/http_smart-me.com_Images_bootstrap_logo.png
  x-origin:
    - format: openapi
      url: https://smart-me.com/swagger/docs/v1
      version: "3.0"
  x-providerName: smart-me.com
paths:
  /api/AccessToken:
    put:
      deprecated: false
      description: Creates a Access Token to write on a Card (e.g. NFC)
      operationId: AccessToken_Put
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccessTokenToPut"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/AccessTokenToPut"
          application/xml:
            schema:
              $ref: "#/components/schemas/AccessTokenToPut"
          text/json:
            schema:
              $ref: "#/components/schemas/AccessTokenToPut"
          text/xml:
            schema:
              $ref: "#/components/schemas/AccessTokenToPut"
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Creates a Access Token to write on a Card (e.g. NFC)
      tags:
        - AccessToken
  /api/Account/login:
    get:
      deprecated: false
      operationId: Account_Login
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      tags:
        - Account
    post:
      deprecated: false
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      tags:
        - Account
  /api/Actions:
    post:
      deprecated: false
      description: Set an action for the specified device.
      operationId: Actions_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ActionToPost"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/ActionToPost"
          application/xml:
            schema:
              $ref: "#/components/schemas/ActionToPost"
          text/json:
            schema:
              $ref: "#/components/schemas/ActionToPost"
          text/xml:
            schema:
              $ref: "#/components/schemas/ActionToPost"
        description: The Action Data
        required: true
      responses:
        "204":
          description: No Content
      summary: Set an action for the specified device.
      tags:
        - Actions
  "/api/Actions/{id}":
    get:
      deprecated: false
      description: Gets all available Actions of a Device
      operationId: Actions_Get
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ActionInformation"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/ActionInformation"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/ActionInformation"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/ActionInformation"
                type: array
          description: OK
      summary: Gets all available Actions of a Device
      tags:
        - Actions
  "/api/AdditionalDeviceInformation/{id}":
    get:
      deprecated: false
      description: Gets the additional information (e.g. Firmware Version) about a device.
      operationId: AdditionalDeviceInformation_Get
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AdditionalDeviceInformation"
            text/json:
              schema:
                $ref: "#/components/schemas/AdditionalDeviceInformation"
          description: OK
      summary: Gets the additional information (e.g. Firmware Version) about a device.
      tags:
        - AdditionalDeviceInformation
  /api/CustomDevice:
    get:
      deprecated: false
      description: Gets all Devices
      operationId: CustomDevice_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/CustomDeviceToPost"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/CustomDeviceToPost"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/CustomDeviceToPost"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/CustomDeviceToPost"
                type: array
          description: OK
      summary: Gets all Custom Devices
      tags:
        - CustomDevice
    post:
      deprecated: false
      description: "Creates or updates a Custom Device or updates it's values.\r

        \            A Custom Device can be any device that like to add some measurement values to the smart-me Cloud.\r

        \            Only use a custom device for all non meters.\r

        \            For a new device leave the ID empty. To create a device you have to set the DeviceEnergyType.\r

        \            To update values, add the ID of the device and the values you like to set.  (See the Data Type Model for more Information)"
      operationId: CustomDevice_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CustomDeviceToPost"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/CustomDeviceToPost"
          application/xml:
            schema:
              $ref: "#/components/schemas/CustomDeviceToPost"
          text/json:
            schema:
              $ref: "#/components/schemas/CustomDeviceToPost"
          text/xml:
            schema:
              $ref: "#/components/schemas/CustomDeviceToPost"
        description: Device object with all the data
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            application/xml:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            text/json:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            text/xml:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
          description: OK
        "401":
          description: Unauthorized
      summary: Creates or updates a Custom Device or updates it's values.
      tags:
        - CustomDevice
  "/api/CustomDevice/{id}":
    get:
      deprecated: false
      description: Gets a Device by it's ID
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            application/xml:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            text/json:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
            text/xml:
              schema:
                $ref: "#/components/schemas/CustomDeviceToPost"
          description: OK
      summary: Gets a Custom Device by it's ID
      tags:
        - CustomDevice
  /api/DeviceBySerial:
    get:
      deprecated: false
      description: Gets a Device by it's Serial Number. The Serial is the part before the "-".
      operationId: DeviceBySerial_Get
      parameters:
        - description: The Serial Number of the device
          in: query
          name: serial
          required: true
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Device"
            application/xml:
              schema:
                $ref: "#/components/schemas/Device"
            text/json:
              schema:
                $ref: "#/components/schemas/Device"
            text/xml:
              schema:
                $ref: "#/components/schemas/Device"
          description: OK
      summary: Gets a Device by it's Serial Number. The Serial is the part before the "-".
      tags:
        - DeviceBySerial
  /api/Devices:
    get:
      deprecated: false
      description: Gets all Devices
      operationId: Devices_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: Gets all Devices
      tags:
        - Devices
    post:
      deprecated: false
      description: "Creates or updates a Device or updates it's values. \r

        \            For a new device leave the ID empty. To create a device you have to set the DeviceEnergyType.\r

        \            To update values, add the ID of the device and the values you like to set.  (See the Data Type Model for more Information)"
      operationId: Devices_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DeviceToPost"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/DeviceToPost"
          application/xml:
            schema:
              $ref: "#/components/schemas/DeviceToPost"
          text/json:
            schema:
              $ref: "#/components/schemas/DeviceToPost"
          text/xml:
            schema:
              $ref: "#/components/schemas/DeviceToPost"
        description: Device object with all the data
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeviceToPost"
            application/xml:
              schema:
                $ref: "#/components/schemas/DeviceToPost"
            text/json:
              schema:
                $ref: "#/components/schemas/DeviceToPost"
            text/xml:
              schema:
                $ref: "#/components/schemas/DeviceToPost"
          description: OK
        "401":
          description: Unauthorized
      summary: Creates or updates a Device or updates it's values.
      tags:
        - Devices
  "/api/Devices/{id}":
    get:
      deprecated: false
      description: Gets a Device by it's ID
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Device"
            application/xml:
              schema:
                $ref: "#/components/schemas/Device"
            text/json:
              schema:
                $ref: "#/components/schemas/Device"
            text/xml:
              schema:
                $ref: "#/components/schemas/Device"
          description: OK
      summary: Gets a Device by it's ID
      tags:
        - Devices
    put:
      deprecated: false
      description: "Updates the On/Off Switch on a device\r

        \            For new implementations please use the \"actions\" command"
      operationId: Devices_Put
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
        - description: The new state of the switch
          in: query
          name: switchState
          required: true
          schema:
            type: boolean
        - description: The number of the switch if there are multiple (1 for L1, 3 for L3)
          in: query
          name: switchNumber
          required: false
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
        "401":
          description: Unauthorized
        "405":
          description: MethodNotAllowed
      summary: "Updates the On/Off Switch on a device. \r

        \            For new implementations please use the \"actions\" command"
      tags:
        - Devices
  /api/DevicesByEnergy:
    get:
      deprecated: false
      description: Gets all Devices for an Energy Type
      operationId: DevicesByEnergy_Get
      parameters:
        - in: query
          name: meterEnergyType
          required: true
          schema:
            enum:
              - MeterTypeUnknown
              - MeterTypeElectricity
              - MeterTypeWater
              - MeterTypeGas
              - MeterTypeHeat
              - MeterTypeHCA
              - MeterTypeAllMeters
              - MeterTypeTemperature
              - MeterTypeMBusGateway
              - MeterTypeRS485Gateway
              - MeterTypeCustomDevice
              - MeterTypeCompressedAir
              - MeterTypeSolarLog
              - MeterTypeVirtualMeter
              - MeterTypeWMBusGateway
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: Gets all Devices for an Energy Type
      tags:
        - DevicesByEnergy
  /api/DevicesBySubType:
    get:
      deprecated: false
      description: Gets all Devices by it's Sub Type (e.g. E-Charging Station)
      operationId: DevicesBySubType_Get
      parameters:
        - in: query
          name: meterSubType
          required: true
          schema:
            enum:
              - MeterSubTypeUnknown
              - MeterSubTypeCold
              - MeterSubTypeHeat
              - MeterSubTypeChargingStation
              - MeterSubTypeElectricity
              - MeterSubTypeWater
              - MeterSubTypeGas
              - MeterSubTypeElectricityHeat
              - MeterSubTypeTemperature
              - MeterSubTypeVirtualBattery
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: Gets all Devices by it's Sub Type (e.g. E-Charging Station)
      tags:
        - DevicesBySubType
  "/api/FastSendDeviceValues/{id}":
    get:
      deprecated: false
      operationId: FastSendDeviceValues_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: "Force a device to send the data every second (if supported). This for about 30s.\r

        \            Don't use this call to force a device to send the data every second for a longer time."
      tags:
        - FastSendDeviceValues
  "/api/Folder/{id}":
    get:
      deprecated: false
      description: Gets the Values for a folder or a meter
      operationId: Folder_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FolderData"
            text/json:
              schema:
                $ref: "#/components/schemas/FolderData"
          description: OK
      summary: Gets the Values for a folder or a meter
      tags:
        - Folder
  /api/FolderMenu:
    get:
      deprecated: false
      operationId: FolderMenu_Get
      parameters:
        - description: "(optional) Filter for the folders and meters: \r

            \            all: load everything\r

            \            assigned: load only folders and meters that are assigend to a folder\r

            \            unassigend: load only meters that are not assigend to a folder\r

            \            user: load only folder and all users assigned to this folders\r

            \            subuserlist: load all subusers as a list"
          in: query
          name: filter
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FolderMenuConfiguration"
            application/xml:
              schema:
                $ref: "#/components/schemas/FolderMenuConfiguration"
            text/json:
              schema:
                $ref: "#/components/schemas/FolderMenuConfiguration"
            text/xml:
              schema:
                $ref: "#/components/schemas/FolderMenuConfiguration"
          description: OK
      summary: Gets the folder menu items (each item might contain child items)
      tags:
        - FolderMenu
    post:
      deprecated: false
      operationId: FolderMenu_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FolderMenuConfiguration"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/FolderMenuConfiguration"
          application/xml:
            schema:
              $ref: "#/components/schemas/FolderMenuConfiguration"
          text/json:
            schema:
              $ref: "#/components/schemas/FolderMenuConfiguration"
          text/xml:
            schema:
              $ref: "#/components/schemas/FolderMenuConfiguration"
        required: true
      responses:
        "204":
          description: No Content
      summary: Creates and updates the folder menu items
      tags:
        - FolderMenu
  /api/Health:
    get:
      deprecated: false
      operationId: Health_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      summary: "A method returning HTTP 200 OK when queried.\r

        \            It is used by Kubernetes probes to determine whether the app is healthy."
      tags:
        - Health
  /api/MBus:
    post:
      deprecated: false
      description: "M-BUS API: Adds data of a M-BUS Meter to the smart-me Cloud.\r

        \            Just send us the M-BUS Telegram (RSP_UD) and we will do the Rest."
      operationId: MBus_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MBusData"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/MBusData"
          application/xml:
            schema:
              $ref: "#/components/schemas/MBusData"
          text/json:
            schema:
              $ref: "#/components/schemas/MBusData"
          text/xml:
            schema:
              $ref: "#/components/schemas/MBusData"
        description: The M-BUS Telegram
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
        "400":
          description: BadRequest
        "401":
          description: Unauthorized
      summary: "M-BUS API: Adds data of a M-BUS Meter to the smart-me Cloud.\r

        \            Just send us the M-BUS Telegram (RSP_UD) and we will do the Rest."
      tags:
        - MBus
  /api/MeterFolderInformation:
    post:
      deprecated: false
      description: Sets the Name of a Meter or a Folder
      operationId: MeterFolderInformation_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/MeterFolderInformationToPost"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/MeterFolderInformationToPost"
          application/xml:
            schema:
              $ref: "#/components/schemas/MeterFolderInformationToPost"
          text/json:
            schema:
              $ref: "#/components/schemas/MeterFolderInformationToPost"
          text/xml:
            schema:
              $ref: "#/components/schemas/MeterFolderInformationToPost"
        required: true
      responses:
        "204":
          description: No Content
      summary: Sets the Name of a Meter or a Folder
      tags:
        - MeterFolderInformation
  "/api/MeterFolderInformation/{id}":
    get:
      deprecated: false
      description: "Beta: Gets the General Information for a Meter or a Folder"
      operationId: MeterFolderInformation_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/MeterFolderInformation"
            application/xml:
              schema:
                $ref: "#/components/schemas/MeterFolderInformation"
            text/json:
              schema:
                $ref: "#/components/schemas/MeterFolderInformation"
            text/xml:
              schema:
                $ref: "#/components/schemas/MeterFolderInformation"
          description: OK
      summary: "Beta: Gets the General Information for a Meter or a Folder"
      tags:
        - MeterFolderInformation
  "/api/MeterValues/{id}":
    get:
      deprecated: false
      description: Gets the Values for a Meter at a given Date. The first Value found before the given Date is returned.
      operationId: MeterValues_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
        - in: query
          name: date
          required: true
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeviceInPast"
            application/xml:
              schema:
                $ref: "#/components/schemas/DeviceInPast"
            text/json:
              schema:
                $ref: "#/components/schemas/DeviceInPast"
            text/xml:
              schema:
                $ref: "#/components/schemas/DeviceInPast"
          description: OK
      summary: "Gets the Values for a Meter at a given Date. \r

        \            The first Value found before the given Date is returned."
      tags:
        - MeterValues
  /api/RegisterForRealtimeApi:
    get:
      deprecated: false
      description: Gets all registrations for the Realtime API.
      operationId: RegisterForRealtimeApi_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RegisterRealtimeApiData"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/RegisterRealtimeApiData"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/RegisterRealtimeApiData"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/RegisterRealtimeApiData"
                type: array
          description: OK
      summary: Gets all registrations for the Realtime API.
      tags:
        - RegisterForRealtimeApi
    post:
      deprecated: false
      description: "Creates a new registration for the realtime API. The Realtime API sends you the data of the registred devices as soon as we have them on the cloud. More Information about the realtime API: https://www.smart-me.com/Description/api/realtimeapi.aspx"
      operationId: RegisterForRealtimeApi_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RegisterRealtimeApiData"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/RegisterRealtimeApiData"
          application/xml:
            schema:
              $ref: "#/components/schemas/RegisterRealtimeApiData"
          text/json:
            schema:
              $ref: "#/components/schemas/RegisterRealtimeApiData"
          text/xml:
            schema:
              $ref: "#/components/schemas/RegisterRealtimeApiData"
        required: true
      responses:
        "204":
          description: No Content
      summary: "Creates a new registration for the realtime API. The Realtime API sends you the data of the registred devices as soon as we have them on the cloud.\r

        \             More Information about the realtime API: https://www.smart-me.com/Description/api/realtimeapi.aspx"
      tags:
        - RegisterForRealtimeApi
  "/api/RegisterForRealtimeApi/{id}":
    delete:
      deprecated: false
      description: Deletes a realtime API registration.
      operationId: RegisterForRealtimeApi_Delete
      parameters:
        - description: The ID of the realtime API registration
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Deletes a realtime API registration.
      tags:
        - RegisterForRealtimeApi
  /api/SmartMeDeviceConfiguration:
    post:
      deprecated: false
      operationId: SmartMeDeviceConfiguration_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
          application/xml:
            schema:
              $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
          text/json:
            schema:
              $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
          text/xml:
            schema:
              $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
        required: true
      responses:
        "204":
          description: No Content
      summary: Sets the configuration of a smart-me device. The device needs to be online.
      tags:
        - SmartMeDeviceConfiguration
  "/api/SmartMeDeviceConfiguration/{id}":
    get:
      deprecated: false
      operationId: SmartMeDeviceConfiguration_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
            application/xml:
              schema:
                $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
            text/json:
              schema:
                $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
            text/xml:
              schema:
                $ref: "#/components/schemas/SmartMeDeviceConfigurationContainer"
          description: OK
      summary: Gets the configuration of a smart-me device.
      tags:
        - SmartMeDeviceConfiguration
  /api/SubUser:
    post:
      deprecated: false
      operationId: SubUser_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SubUserData"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/SubUserData"
          application/xml:
            schema:
              $ref: "#/components/schemas/SubUserData"
          text/json:
            schema:
              $ref: "#/components/schemas/SubUserData"
          text/xml:
            schema:
              $ref: "#/components/schemas/SubUserData"
        required: true
      responses:
        "204":
          description: No Content
      summary: "Creates or updates a subuser.\r

        \            To create a new user set no ID (empty)"
      tags:
        - SubUser
  "/api/SubUser/{id}":
    delete:
      deprecated: false
      operationId: SubUser_Delete
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Delete a subuser
      tags:
        - SubUser
    get:
      deprecated: false
      operationId: SubUser_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SubUserData"
            application/xml:
              schema:
                $ref: "#/components/schemas/SubUserData"
            text/json:
              schema:
                $ref: "#/components/schemas/SubUserData"
            text/xml:
              schema:
                $ref: "#/components/schemas/SubUserData"
          description: OK
      summary: Get a sub user. The user must be assigend to the user that makes this call.
      tags:
        - SubUser
  /api/User:
    delete:
      deprecated: false
      operationId: User_Delete
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      summary: Triggers user account deletion.
      tags:
        - User
    get:
      deprecated: false
      description: Gets the informations for the user.
      operationId: User_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/User"
            application/xml:
              schema:
                $ref: "#/components/schemas/User"
            text/json:
              schema:
                $ref: "#/components/schemas/User"
            text/xml:
              schema:
                $ref: "#/components/schemas/User"
          description: OK
      summary: Gets the informations for the user.
      tags:
        - User
  "/api/Values/{id}":
    get:
      deprecated: false
      operationId: Values_Get
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ValuesData"
            text/json:
              schema:
                $ref: "#/components/schemas/ValuesData"
          description: OK
      summary: Gets all (last) values of a device
      tags:
        - Values
  "/api/ValuesInPast/{id}":
    get:
      deprecated: false
      description: Gets the Values for a device at a given Date. The first Value found before the given Date is returned.
      operationId: ValuesInPast_Get
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
        - description: the date of the value
          in: query
          name: date
          required: true
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ValuesData"
            text/json:
              schema:
                $ref: "#/components/schemas/ValuesData"
          description: OK
      summary: "Gets all (last) values of a device\r

        \            The first Value found before the given Date is returned."
      tags:
        - ValuesInPast
  "/api/ValuesInPastMultiple/{id}":
    get:
      deprecated: false
      operationId: ValuesInPastMultiple_Get
      parameters:
        - description: The ID of the device
          in: path
          name: id
          required: true
          schema:
            type: string
        - description: The date when the first value should start
          in: query
          name: startDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The date when the last value should start
          in: query
          name: endDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The interval in minutes betwenn the values. 0 means as fast as possible. Only 1000 values can be get in one call.
          in: query
          name: interval
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ValuesData"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/ValuesData"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/ValuesData"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/ValuesData"
                type: array
          description: OK
      summary: Gets multiple values of a device. This call needs a smart-me professional licence.
      tags:
        - ValuesInPastMultiple
  /api/VirtualBillingMeterActive:
    get:
      deprecated: false
      description: "Beta: Gets all active virtual meters."
      operationId: VirtualBillingMeterActive_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: "Beta: Gets all active virtual meters"
      tags:
        - VirtualBillingMeterActive
    post:
      deprecated: false
      description: "Beta: Virtual Meter API: Activates a Meter and add the Consumption to a Virtual Meter assosiated with the User."
      operationId: VirtualBillingMeterActive_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/VMeterToActivate"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/VMeterToActivate"
          application/xml:
            schema:
              $ref: "#/components/schemas/VMeterToActivate"
          text/json:
            schema:
              $ref: "#/components/schemas/VMeterToActivate"
          text/xml:
            schema:
              $ref: "#/components/schemas/VMeterToActivate"
        description: The Meter to activate
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Device"
            application/xml:
              schema:
                $ref: "#/components/schemas/Device"
            text/json:
              schema:
                $ref: "#/components/schemas/Device"
            text/xml:
              schema:
                $ref: "#/components/schemas/Device"
          description: OK
        "400":
          description: BadRequest
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      summary: "Beta: Virtual Meter API: Activates a Meter and add the Consumption to a Virtual Meter assosiated with the User."
      tags:
        - VirtualBillingMeterActive
  /api/VirtualBillingMeterDeactivate:
    post:
      deprecated: false
      description: "Beta: Virtual Meter API: Deactivates a Virtual Meter."
      operationId: VirtualBillingMeterDeactivate_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/VMeterToDeactivate"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/VMeterToDeactivate"
          application/xml:
            schema:
              $ref: "#/components/schemas/VMeterToDeactivate"
          text/json:
            schema:
              $ref: "#/components/schemas/VMeterToDeactivate"
          text/xml:
            schema:
              $ref: "#/components/schemas/VMeterToDeactivate"
        description: The Meter to activate
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
        "400":
          description: BadRequest
        "401":
          description: Unauthorized
        "403":
          description: Forbidden
      summary: "Beta: Virtual Meter API: Deactivates a Virtual Meter."
      tags:
        - VirtualBillingMeterDeactivate
  /api/VirtualBillingMeters:
    get:
      deprecated: false
      description: "Beta: Gets all Meters available to activate as a Virtual Meter."
      operationId: VirtualBillingMeters_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: "Beta: Gets all Meters available to activate as a Virtual Meter."
      tags:
        - VirtualBillingMeters
  /api/VirtualMeterCalculateFormula:
    get:
      deprecated: false
      description: "Calculates a virtual meter from a formula.\r

        \            \r

        \            A meter is coded as ID(\"METERID\")\r

        \            Ariphmetical operators:\r

        \             ()  parentheses;  \r

        \             +   plus (a + b); \r

        \             -  minus (a - b); \r

        \             *  multiplycation symbol (a * b); \r

        \             /  divide symbol (a / b); \r

        \            Example: (ID(\"63ac09cb-4e5f-4f3e-bd27-ad8c30bdfc0c\") + ID(\"0209555e-9dc4-4e84-a166-a864488b4b12\")) * 2"
      operationId: VirtualMeterCalculateFormula_Get
      parameters:
        - in: query
          name: formula
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Device"
            application/xml:
              schema:
                $ref: "#/components/schemas/Device"
            text/json:
              schema:
                $ref: "#/components/schemas/Device"
            text/xml:
              schema:
                $ref: "#/components/schemas/Device"
          description: OK
      summary: "Calculates a virtual meter from a formula. \r

        \            A meter is coded as ID(\"METERID\")"
      tags:
        - VirtualMeterCalculateFormula
  /api/VirtualTariff:
    get:
      deprecated: false
      description: Gets all Virtual Tariffs of a user
      operationId: VirtualTariff_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
          description: OK
      summary: Gets all Virtual Tariffs of a user
      tags:
        - VirtualTariff
  "/api/VirtualTariff/{id}":
    get:
      deprecated: false
      description: Gets all virtual tariffs of a folder
      parameters:
        - description: The ID of the Folder
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VirtualTariffsOfFolder"
            text/json:
              schema:
                $ref: "#/components/schemas/VirtualTariffsOfFolder"
          description: OK
      summary: Gets all virtual tariffs of a folder
      tags:
        - VirtualTariff
  /api/VirtualTariffConsumption:
    get:
      deprecated: false
      description: Gets the consumption of a folder with a virtuall tariffs.
      operationId: VirtualTariffConsumption_Get
      parameters:
        - description: The ID of the Folder
          in: query
          name: folderId
          required: true
          schema:
            type: string
        - description: The start date (UTC)
          in: query
          name: startDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The end date (UTC)
          in: query
          name: endDate
          required: true
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffConsumptionData"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffConsumptionData"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffConsumptionData"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffConsumptionData"
                type: array
          description: OK
      summary: Gets the consumption of a folder with a virtuall tariffs.
      tags:
        - VirtualTariffConsumption
  "/api/VirtualTariffsForProperty/{id}":
    get:
      deprecated: false
      description: Gets all Virtual Tariffs for a property (folder)
      operationId: VirtualTariffsForProperty_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/VirtualTariffsOfFolder"
                type: array
          description: OK
      summary: Gets all Virtual Tariffs for a property (folder)
      tags:
        - VirtualTariffsForProperty
  "/api/VirtualTariffsStatusForProperty/{id}":
    get:
      deprecated: false
      operationId: VirtualTariffsStatusForProperty_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Gets the calculation status for a virtual tariff property
      tags:
        - VirtualTariffsStatusForProperty
  /api/folder/assign:
    post:
      deprecated: false
      operationId: FolderAssign_Post
      parameters:
        - description: The ID of the meter or folder that should be assign
          in: query
          name: source
          required: true
          schema:
            type: string
        - description: The ID of the meter or folder that should be the parent
          in: query
          name: target
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Assign a folder (source) or meter to another folder (target). Can be used to create a folder structure.
      tags:
        - FolderAssign
  "/api/folder/settings/{id}":
    delete:
      deprecated: false
      operationId: FolderSettings_Delete
      parameters:
        - description: The ID of the folder
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Deletes a folder
      tags:
        - FolderSettings
    get:
      deprecated: false
      operationId: FolderSettings_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FolderSettings"
            application/xml:
              schema:
                $ref: "#/components/schemas/FolderSettings"
            text/json:
              schema:
                $ref: "#/components/schemas/FolderSettings"
            text/xml:
              schema:
                $ref: "#/components/schemas/FolderSettings"
          description: OK
      summary: Gets the settings of a folder or meter
      tags:
        - FolderSettings
    post:
      deprecated: false
      operationId: FolderSettings_Post
      parameters:
        - description: The ID of the folder or meter to edit. Use and empty ID to add a new folder
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FolderSettings"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/FolderSettings"
          application/xml:
            schema:
              $ref: "#/components/schemas/FolderSettings"
          text/json:
            schema:
              $ref: "#/components/schemas/FolderSettings"
          text/xml:
            schema:
              $ref: "#/components/schemas/FolderSettings"
        description: The folder or meter data
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FolderMenuItem"
            application/xml:
              schema:
                $ref: "#/components/schemas/FolderMenuItem"
            text/json:
              schema:
                $ref: "#/components/schemas/FolderMenuItem"
            text/xml:
              schema:
                $ref: "#/components/schemas/FolderMenuItem"
          description: OK
      summary: Add or edit a folder or a meter. To add a new folder use and empty ID
      tags:
        - FolderSettings
  /api/folder/user/assign:
    delete:
      deprecated: false
      operationId: UserToFolderAssign_Delete
      parameters:
        - description: The ID of the user that should be de-assign
          in: query
          name: source
          required: true
          schema:
            type: string
        - description: The ID of the folder
          in: query
          name: target
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Deletes a user to folder assignement
      tags:
        - UserToFolderAssign
    post:
      deprecated: false
      operationId: UserToFolderAssign_Post
      parameters:
        - description: The ID of the user that should be assign
          in: query
          name: source
          required: true
          schema:
            type: string
        - description: The ID of the folder that should be the parent
          in: query
          name: target
          required: true
          schema:
            type: string
        - description: The ID of the old folder (in case of a drag and drop to a new folder)
          in: query
          name: oldFolder
          required: true
          schema:
            type: string
      responses:
        "204":
          description: No Content
      summary: Assign a user to a folder
      tags:
        - UserToFolderAssign
  /api/oauth/authorize:
    get:
      deprecated: false
      operationId: OAuth_Authorize
      parameters:
        - in: query
          name: client_id
          required: true
          schema:
            type: string
        - in: query
          name: redirect_uri
          required: true
          schema:
            type: string
        - in: query
          name: state
          required: true
          schema:
            type: string
        - in: query
          name: scope
          required: false
          schema:
            type: string
        - in: query
          name: client_secret
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      tags:
        - OAuth
    post:
      deprecated: false
      parameters:
        - in: query
          name: client_id
          required: true
          schema:
            type: string
        - in: query
          name: redirect_uri
          required: true
          schema:
            type: string
        - in: query
          name: state
          required: true
          schema:
            type: string
        - in: query
          name: scope
          required: false
          schema:
            type: string
        - in: query
          name: client_secret
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      tags:
        - OAuth
  /api/pico:
    get:
      deprecated: false
      operationId: Pico_Get
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/Device"
                type: array
          description: OK
      summary: Gets all pico charging stations for this user
      tags:
        - Pico
  "/api/pico/charging/{id}":
    get:
      deprecated: false
      operationId: PicoCharging_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PicoChargingData"
            text/json:
              schema:
                $ref: "#/components/schemas/PicoChargingData"
          description: OK
      summary: Gets the active charging data of a pico station
      tags:
        - PicoCharging
  "/api/pico/history/{id}":
    get:
      deprecated: false
      operationId: PicoChargingHistory_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PicoChargingHistoryData"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/PicoChargingHistoryData"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/PicoChargingHistoryData"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/PicoChargingHistoryData"
                type: array
          description: OK
      summary: Gets the last charging history for a pico station
      tags:
        - PicoChargingHistory
  /api/pico/loadmanagementgroup:
    get:
      deprecated: false
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
                type: array
          description: OK
      summary: "GET: api/pico/loadmanagementgroup\r

        \            \r

        \            Returns all available load management groups"
      tags:
        - PicoLoadmanagementGroup
  "/api/pico/loadmanagementgroup/current/{serial}":
    post:
      deprecated: false
      operationId: PicoLoadmanagementSetDynamicCurrent_Post
      parameters:
        - description: The serial number can be any pico serial in the group (e.g. 700001)
          in: path
          name: serial
          required: true
          schema:
            format: int64
            type: integer
        - description: The dynamic current of the group (in mA)
          in: query
          name: current
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      summary: Sets the dynamic current of a load management group or a single station.
      tags:
        - PicoLoadmanagementSetDynamicCurrent
  "/api/pico/loadmanagementgroup/{id}":
    get:
      deprecated: false
      operationId: PicoLoadmanagementGroup_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
            application/xml:
              schema:
                $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
            text/json:
              schema:
                $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
            text/xml:
              schema:
                $ref: "#/components/schemas/PicoLoadmanagementGroupDto"
          description: OK
      summary: "GET: api/pico/loadmanagementgroup\r

        \            \r

        \            Returns a pico load management group by it's id"
      tags:
        - PicoLoadmanagementGroup
  "/api/pico/settings/{id}":
    get:
      deprecated: false
      operationId: PicoSettings_Get
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PicoSettingsDto"
            application/xml:
              schema:
                $ref: "#/components/schemas/PicoSettingsDto"
            text/json:
              schema:
                $ref: "#/components/schemas/PicoSettingsDto"
            text/xml:
              schema:
                $ref: "#/components/schemas/PicoSettingsDto"
          description: OK
      summary: "GET: api/pico/settings\r

        \            \r

        \            Returns the settings of a pico charging station."
      tags:
        - PicoSettings
  "/api/pico/tryenablecablelock/{id}":
    post:
      deprecated: false
      operationId: PicoEnableFixCableLock_Post
      parameters:
        - description: The ID of the pico
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Object"
            application/xml:
              schema:
                $ref: "#/components/schemas/Object"
            text/json:
              schema:
                $ref: "#/components/schemas/Object"
            text/xml:
              schema:
                $ref: "#/components/schemas/Object"
          description: OK
      summary: Try to fix lock the cable of a pico. The pico must be online and a cable (without car) needs to be connected. Otherwise this will fail.
      tags:
        - PicoEnableFixCableLock
components:
  schemas:
    AccessTokenToPut:
      description: Container Class for the Put action of an Access Token
      properties:
        CardId:
          description: The ID of the Card
          format: int64
          type: integer
        UserId:
          description: "The ID of the User. The credentials provided must have permission to edit the user.\r

            \            If no ID is provided, the user in the credentials is taken."
          format: int64
          type: integer
      type: object
    ActionInformation:
      description: The Information about an Action of a device
      properties:
        ActionType:
          description: The Type of this action.
          enum:
            - OnOffAction
            - AnalogAction
          type: string
        MaxValue:
          description: The maximum value of this action (e.g. for an AnalogAction)
          format: double
          type: number
        MinValue:
          description: The minimum value of this action (e.g. for an AnalogAction)
          format: double
          type: number
        Name:
          description: The Name of this action
          type: string
        ObisCode:
          description: The Obis Code of this action. This is used as ID.
          type: string
      type: object
    ActionToPost:
      description: Container Class for an action to post
      properties:
        Actions:
          description: List with all Actions for this device
          items:
            $ref: "#/components/schemas/ActionToPostItem"
          type: array
        DeviceID:
          description: The ID of the Device
          type: string
      type: object
    ActionToPostItem:
      description: Container class for an action item
      properties:
        ObisCode:
          description: The ObisCode (ID) of the Action
          type: string
        Value:
          description: The Value to Post
          format: double
          type: number
      type: object
    AdditionalDeviceInformation:
      description: Additional Information For a device
      properties:
        AdditionalMeterSerialNumber:
          description: An additional Meter serial number. e.g. the number of a meter a smart-me device is connected to.
          type: string
        FirmwareVersion:
          description: The Firmware Version of a Meter
          format: int32
          type: integer
        HardwareVersion:
          description: The Hardware Version of a Meter.
          format: int32
          type: integer
        ID:
          description: The ID of the device
          type: string
        NetworkConnection:
          description: "The mode how the device is connected to the network. Valid values are:\r

            \            wifi, gprs, ltecatm1, ltenbiot, meshmobile, meshwifi"
          type: string
        NetworkConnectionRSSI:
          description: The connection RSSI value (0 is bad, 100 is best)
          format: int32
          type: integer
      type: object
    AutoExportSettings:
      description: Settings for the auto export functionality of a meter
      properties:
        ExportFormat:
          description: The export format
          type: string
        ExportInterval:
          description: The export interval of the auto export
          enum:
            - NoExport
            - Hourly
            - Daily
            - Weekly
            - Monthly
            - QuaterYearly
            - HalfYearly
            - Yearly
          type: string
        MeterPointId:
          description: The meter point id set by the user
          type: string
        UploadType:
          description: The upload type
          type: string
      type: object
    CustomDeviceToPost:
      description: Container Class for the Web API
      properties:
        Id:
          description: The ID of the device
          type: string
        Name:
          description: The Name of the Device
          type: string
        Serial:
          description: The Serial number
          format: int64
          type: integer
        ValueDate:
          description: The Date of the Value (in UTC). If this is null the Server Time is used.
          format: date-time
          type: string
        Values:
          description: The Values of the custom Device
          items:
            $ref: "#/components/schemas/CustomDeviceValues"
          type: array
      type: object
    CustomDeviceValues:
      description: Container Class for the Custom Device Values
      properties:
        Name:
          description: The Name of the Value.
          type: string
        Value:
          description: The Value
          format: double
          type: number
      type: object
    Device:
      description: Container Class for the Web API
      properties:
        ActivePower:
          description: The Actvie Power or current flow rate
          format: double
          type: number
        ActivePowerL1:
          description: The Actvie Power Phase L1
          format: double
          type: number
        ActivePowerL2:
          description: The Actvie Power Phase L2
          format: double
          type: number
        ActivePowerL3:
          description: The Actvie Power Phase L3
          format: double
          type: number
        ActivePowerUnit:
          description: The Unit of the Active Power Value
          type: string
        ActiveTariff:
          description: The Number of the Active Tariff
          format: int32
          type: integer
        AdditionalMeterSerialNumber:
          description: An additional Meter serial number. e.g. the number of a meter a smart-me device is connected to.
          type: string
        AnalogOutput1:
          description: The analog output number 1 (PWM signal) (0 - 32183)
          format: int32
          type: integer
        AnalogOutput2:
          description: The analog output number 2 (PWM signal) (0 - 32183)
          format: int32
          type: integer
        ChargingStationState:
          description: The state of a pico charging station. (Only available for pico charging stations)
          enum:
            - Booting
            - ReadyNoCarConnected
            - ReadyCarConnected
            - StartedWaitForCar
            - Charging
            - Installation
            - Authorize
            - Offline
          type: string
        CounterReading:
          description: The Meter Counter Reading (Total Energy used)
          format: double
          type: number
        CounterReadingExport:
          description: The Meter Counter Reading only export
          format: double
          type: number
        CounterReadingImport:
          description: The Meter Counter Reading only import
          format: double
          type: number
        CounterReadingT1:
          description: The Meter Counter Reading Tariff 1
          format: double
          type: number
        CounterReadingT2:
          description: The Meter Counter Reading Tariff 2
          format: double
          type: number
        CounterReadingT3:
          description: The Meter Counter Reading Tariff 3
          format: double
          type: number
        CounterReadingT4:
          description: The Meter Counter Reading Tariff 4
          format: double
          type: number
        CounterReadingUnit:
          description: The Unit of the Counter Reading
          type: string
        Current:
          description: The Current (in A)
          format: double
          type: number
        CurrentL1:
          description: The Current Phase L1 (in A)
          format: double
          type: number
        CurrentL2:
          description: The Current Phase L2 (in A)
          format: double
          type: number
        CurrentL3:
          description: The Current Phase L3 (in A)
          format: double
          type: number
        DeviceEnergyType:
          description: The Energy Type of this device
          enum:
            - MeterTypeUnknown
            - MeterTypeElectricity
            - MeterTypeWater
            - MeterTypeGas
            - MeterTypeHeat
            - MeterTypeHCA
            - MeterTypeAllMeters
            - MeterTypeTemperature
            - MeterTypeMBusGateway
            - MeterTypeRS485Gateway
            - MeterTypeCustomDevice
            - MeterTypeCompressedAir
            - MeterTypeSolarLog
            - MeterTypeVirtualMeter
            - MeterTypeWMBusGateway
          type: string
        DigitalInput1:
          description: The digital input number 1
          type: boolean
        DigitalInput2:
          description: The digital input number 2
          type: boolean
        DigitalOutput1:
          description: The digital output number 1
          type: boolean
        DigitalOutput2:
          description: The digital output number 2
          type: boolean
        FamilyType:
          description: The Family Type of the device.
          enum:
            - MeterFamilyTypeUnknown
            - MeterFamilyTypeSmartMeConnectV1
            - MeterFamiliyTypeSmartMeMeter
            - MeterFamiliyTypeSmartMeMeterWithSwitch
            - MeterFamilyTypeMBusGatewayV1
            - MeterFamilyTypeRS485GatewayV1
            - MeterFamilyTypeKamstrupModule
            - MeterFamilyTypeSmartMe3PhaseMeter80A
            - MeterFamilyTypeSmartMe3PhaseMeter32A
            - MeterFamilyTypeSmartMe3PhaseTelstarTransformer
            - MeterFamilyTypeLandisGyrModule
            - MeterFamilyTypeFnnOpticalModule
            - MeterFamilyTypeSmartMe3PhaseTelstar80AWiFi
            - MeterFamilyTypeSmartMe3PhaseTelstar80AMobile
            - MeterFamilyTypeSmartMe1PhaseMeter80AV2WiFi
            - MeterFamilyTypeSmartMe1PhaseMeter32AV2WiFi
            - MeterFamilyTypeSmartMe1PhaseMeter80AGprs
            - MeterFamilyTypeSmartMe1PhaseMeter32AGprs
            - MeterFamilyTypeWMBusGatewayV1
            - MeterFamilyTypeSmartMe3PhaseTelstarTransformerMobile
            - MeterFamilyTypeMithralHallV1
            - MeterFamilyTypeRestApiMeter
            - MeterFamilyTypeVirtualBillingMeter
          type: string
        FlowRate:
          description: The current flow rate (e.g. m3/h)
          format: double
          type: number
        Id:
          description: The ID of the device
          type: string
        MeterSubType:
          description: The sub meter type (e.g. warmwater or coldwater)
          enum:
            - MeterSubTypeUnknown
            - MeterSubTypeCold
            - MeterSubTypeHeat
            - MeterSubTypeChargingStation
            - MeterSubTypeElectricity
            - MeterSubTypeWater
            - MeterSubTypeGas
            - MeterSubTypeElectricityHeat
            - MeterSubTypeTemperature
            - MeterSubTypeVirtualBattery
          type: string
        Name:
          description: The Name of the Device
          type: string
        PowerFactor:
          description: "The Power Factor (cos phi). Range: 0 - 1"
          format: double
          type: number
        PowerFactorL1:
          description: "The Power Factor (cos phi) Phase L1. Range: 0 - 1"
          format: double
          type: number
        PowerFactorL2:
          description: "The Power Factor (cos phi) Phase L2. Range: 0 - 1"
          format: double
          type: number
        PowerFactorL3:
          description: "The Power Factor (cos phi) Phase L3. Range: 0 - 1"
          format: double
          type: number
        Serial:
          description: The Serial number
          format: int64
          type: integer
        SwitchOn:
          description: Flag if the Switch is on on this device.
          type: boolean
        SwitchPhaseL1On:
          description: Flag if the Phase L1 is on on this device.
          type: boolean
        SwitchPhaseL2On:
          description: Flag if the Phase L2 is on on this device.
          type: boolean
        SwitchPhaseL3On:
          description: Flag if the Phase L3 is on on this device.
          type: boolean
        Temperature:
          description: The Temperature (in degree celsius)
          format: double
          type: number
        ValueDate:
          description: Time of last successful connection the the smart-me Cloud.
          format: date-time
          type: string
        Voltage:
          description: The Voltage (in V)
          format: double
          type: number
        VoltageL1:
          description: The Voltage Phase L1 (in V)
          format: double
          type: number
        VoltageL2:
          description: The Voltage Phase L2 (in V)
          format: double
          type: number
        VoltageL3:
          description: The Voltage Phase L3 (in V)
          format: double
          type: number
      type: object
    DeviceInPast:
      description: Container Class for the Web API. Conatinas the MeterValues in the Past
      properties:
        CounterReading:
          description: The Meter Counter Reading (Total Energy used)
          format: double
          type: number
        CounterReadingExport:
          description: The Meter Counter Reading Export
          format: double
          type: number
        CounterReadingExportT1:
          description: The Meter Counter Reading Export Tariff 1
          format: double
          type: number
        CounterReadingExportT2:
          description: The Meter Counter Reading Export Tariff 2
          format: double
          type: number
        CounterReadingExportT3:
          description: The Meter Counter Reading Export Tariff 3
          format: double
          type: number
        CounterReadingExportT4:
          description: The Meter Counter Reading Export Tariff 4
          format: double
          type: number
        CounterReadingImport:
          description: The Meter Counter Reading Import
          format: double
          type: number
        CounterReadingImportT1:
          description: The Meter Counter Reading Import Tariff 1
          format: double
          type: number
        CounterReadingImportT2:
          description: The Meter Counter Reading Import Tariff 2
          format: double
          type: number
        CounterReadingImportT3:
          description: The Meter Counter Reading Import Tariff 3
          format: double
          type: number
        CounterReadingImportT4:
          description: The Meter Counter Reading Import Tariff 4
          format: double
          type: number
        CounterReadingT1:
          description: The Meter Counter Reading Tariff 1
          format: double
          type: number
        CounterReadingT2:
          description: The Meter Counter Reading Tariff 2
          format: double
          type: number
        CounterReadingT3:
          description: The Meter Counter Reading Tariff 3
          format: double
          type: number
        CounterReadingT4:
          description: The Meter Counter Reading Tariff 4
          format: double
          type: number
        CounterReadingUnit:
          description: The Unit of the Counter Reading
          type: string
        Date:
          description: The Date of the Values
          format: date-time
          type: string
        Id:
          description: The ID of the device
          type: string
        Serial:
          description: The Serial number
          format: int64
          type: integer
      type: object
    DeviceToPost:
      description: Container Class for the Web API
      properties:
        ActivePower:
          description: The Active Power or current flow rate. In kW or m3/h
          format: double
          type: number
        CounterReading:
          description: The Meter Counter Reading (Total Energy used) in kWh or m3.
          format: double
          type: number
        CounterReadingExport:
          description: The Meter Counter Reading only export
          format: double
          type: number
        CounterReadingExportT1:
          description: The Meter Counter Reading only export (Tariff 1)
          format: double
          type: number
        CounterReadingExportT2:
          description: The Meter Counter Reading only export (Tariff 2)
          format: double
          type: number
        CounterReadingT1:
          description: The Meter Counter Reading Tariff 1 in kWh or m3.
          format: double
          type: number
        CounterReadingT2:
          description: The Meter Counter Reading Tariff 2 in kWh or m3.
          format: double
          type: number
        Current:
          description: The Current (in A)
          format: double
          type: number
        CurrentL1:
          description: The Current Phase L1 (in A)
          format: double
          type: number
        CurrentL2:
          description: The Current Phase L2 (in A)
          format: double
          type: number
        CurrentL3:
          description: The Current Phase L3 (in A)
          format: double
          type: number
        DeviceEnergyType:
          description: The Energy Type of this device
          enum:
            - MeterTypeUnknown
            - MeterTypeElectricity
            - MeterTypeWater
            - MeterTypeGas
            - MeterTypeHeat
            - MeterTypeHCA
            - MeterTypeAllMeters
            - MeterTypeTemperature
            - MeterTypeMBusGateway
            - MeterTypeRS485Gateway
            - MeterTypeCustomDevice
            - MeterTypeCompressedAir
            - MeterTypeSolarLog
            - MeterTypeVirtualMeter
            - MeterTypeWMBusGateway
          type: string
        DigitalInput1:
          description: The digital input number 1
          type: boolean
        Id:
          description: The ID of the device
          type: string
        MeterSubType:
          description: The Sub Type of this Meter.
          enum:
            - MeterSubTypeUnknown
            - MeterSubTypeCold
            - MeterSubTypeHeat
            - MeterSubTypeChargingStation
            - MeterSubTypeElectricity
            - MeterSubTypeWater
            - MeterSubTypeGas
            - MeterSubTypeElectricityHeat
            - MeterSubTypeTemperature
            - MeterSubTypeVirtualBattery
          type: string
        Name:
          description: The Name of the Device
          type: string
        PowerFactor:
          description: "The Power Factor (cos phi). Range: 0 - 1"
          format: double
          type: number
        PowerFactorL1:
          description: "The Power Factor (cos phi) Phase L1. Range: 0 - 1"
          format: double
          type: number
        PowerFactorL2:
          description: "The Power Factor (cos phi) Phase L2. Range: 0 - 1"
          format: double
          type: number
        PowerFactorL3:
          description: "The Power Factor (cos phi) Phase L3. Range: 0 - 1"
          format: double
          type: number
        Serial:
          description: The Serial number
          format: int64
          type: integer
        Temperature:
          description: The Temperature (in degree celsius)
          format: double
          type: number
        ValueDate:
          description: The Date of the Value (in UTC). If this is null the Server Time is used.
          format: date-time
          type: string
        Voltage:
          description: The Voltage (in V)
          format: double
          type: number
        VoltageL1:
          description: The Voltage Phase L1 (in V)
          format: double
          type: number
        VoltageL2:
          description: The Voltage Phase L2 (in V)
          format: double
          type: number
        VoltageL3:
          description: The Voltage Phase L3 (in V)
          format: double
          type: number
      type: object
    FolderData:
      description: Container class for the folder API
      properties:
        ElectricityCounterValue:
          description: The Counter values for electricity (kWh)
          format: double
          type: number
        ElectricityPower:
          description: The Power for electricity (kW)
          format: double
          type: number
        GasCounterValue:
          description: The Counter values for Gas (m3)
          format: double
          type: number
        GasFlowRate:
          description: The Flow Rate for Gas (m3/h)
          format: double
          type: number
        HeatCounterValue:
          description: The Counter values for Heat (kWh)
          format: double
          type: number
        HeatPower:
          description: The Power for Heat (kW)
          format: double
          type: number
        WaterCounterValue:
          description: The Counter values for Water (m3)
          format: double
          type: number
        WaterFlowRate:
          description: The Flow Rate for Water (m3/h)
          format: double
          type: number
      type: object
    FolderMenuConfiguration:
      description: Container Class for the Web API representing a folder menu and it's items
      properties:
        BrowserTimeZoneName:
          description: The time zone name taken from the browser
          type: string
        BrowserUtcTime:
          description: The UTC time taken from the browser
          type: string
        Items:
          items:
            $ref: "#/components/schemas/FolderMenuItem"
          type: array
      type: object
    FolderMenuItem:
      description: A folder menu item
      properties:
        AutoExportSettings:
          $ref: "#/components/schemas/AutoExportSettings"
        Children:
          description: Children folder menu items (sub folder menu items)
          items:
            $ref: "#/components/schemas/FolderMenuItem"
          type: array
        Description:
          description: The Description of the folder
          type: string
        FolderType:
          description: The folder type of the item
          enum:
            - Folder
            - Location
            - Factory
            - House
            - Office
            - Machine
            - VirtualMeter
            - ElecticityFolder
            - WaterFolder
            - HeatFolder
            - GasFolder
            - TemperatureFolder
            - Sun
            - Light
            - Ice
            - Sofa
            - Food
            - Coffee
            - Car
            - ChargingStation
            - Meter
            - User
            - Trash
            - GridPhotovoltaicPowerSystem
          type: string
        Icon:
          description: The path to the Icon of this folder
          type: string
        Id:
          description: The id of the folder menu item
          type: string
        MeterSerialNumber:
          description: "The serial number if the folder menu item is a meter. \r

            \            Serial number is handled as a string, as javascript on client side cannot handle long integers properly."
          type: string
        Name:
          description: The Name of the item
          type: string
        UserId:
          description: The ID of the user of this folder (only for foldertype user)
          type: string
      type: object
    FolderSettings:
      description: Container for the folder settings
      properties:
        Description:
          description: The Description of the folder or meter
          type: string
        Enable:
          description: Flag if the meter is enabled (folder not supported yet)
          type: boolean
        FolderType:
          description: The Type of the folder
          enum:
            - Folder
            - Location
            - Factory
            - House
            - Office
            - Machine
            - VirtualMeter
            - ElecticityFolder
            - WaterFolder
            - HeatFolder
            - GasFolder
            - TemperatureFolder
            - Sun
            - Light
            - Ice
            - Sofa
            - Food
            - Coffee
            - Car
            - ChargingStation
            - Meter
            - User
            - Trash
            - GridPhotovoltaicPowerSystem
          type: string
        Name:
          description: The Name of the folder or meter
          type: string
        ParentFolderId:
          description: The parent folder ID of this item
          type: string
        SerialNumber:
          description: The serial number (meter only)
          format: int64
          type: integer
        UseableForVirtualBillingMeters:
          description: Flag if the meter is usable for virtual billing meters (e.g. washroom)
          type: boolean
        ValueCorrection:
          description: The value correction on this meter
          format: double
          type: number
        ValueCorrectionParentFolder:
          description: The value correction on all parent folders. but not on the meter itself
          format: double
          type: number
        VisualizationName:
          description: The name of the visualization of the folder
          type: string
      type: object
    InputConfigurationContainer:
      description: Configuration for the input of a meter (digital inputs)
      properties:
        Name:
          description: The Name of the Input
          type: string
        Number:
          description: The number of the Input. (1 for Input 1)
          format: int32
          type: integer
        OffText:
          description: The visualization text for an OFF action
          type: string
        OnText:
          description: The visualization text for an ON action
          type: string
        Type:
          description: The Type of the output
          enum:
            - TariffInput
            - DigitalInput
          type: string
      type: object
    InputInformation:
      description: Informations about the Inputs of a Meter or Folder
      properties:
        Name:
          description: The Name of the Input
          type: string
        Number:
          description: The Number of this Input. Use this as ID to switch it on or off.
          format: int32
          type: integer
      type: object
    MBusData:
      properties:
        Date:
          description: The Date of the M-BUS Telegram Readout (in UTC). If this is null the Server Time is used.
          format: date-time
          type: string
        Telegram:
          description: "The M-BUS Telegram as Hex string. \r

            \            Example: 68 1F 1F 68 08 02 72 78 56 34 12 24 40 01 07 55 00 00 00 03 13 15 31 00 DA 02 3B 13 01 8B 60 04 37 18 02 18 16"
          type: string
      type: object
    MeterFolderInformation:
      description: Container Class for the Web API
      properties:
        CommunicationModuleFirmwareVersion:
          description: The Version of the Communication Module (if exists)
          format: int32
          type: integer
        CommunicationModuleHardwareVersion:
          description: The Version of the Communication Module (if exists)
          format: int32
          type: integer
        FirmwareVersion:
          description: The Firmware Version of a Meter
          format: int32
          type: integer
        HardwareVersion:
          description: The Hardware Version of a Meter.
          format: int32
          type: integer
        InputInformations:
          description: Informations about the available Inputs
          items:
            $ref: "#/components/schemas/InputInformation"
          type: array
        IsFolder:
          description: Flag if it's a Folder or a Meter
          type: boolean
        Name:
          description: Name of the Meter or Folder
          type: string
        OutputInformations:
          description: Informations about the available Outputs
          items:
            $ref: "#/components/schemas/OutputInformation"
          type: array
      type: object
    MeterFolderInformationToPost:
      description: Container for a Meter or Folder Information to Post
      properties:
        Id:
          description: The ID of the device or folder
          type: string
        Name:
          description: Name of the Meter or Folder
          type: string
      type: object
    Object:
      properties: {}
      type: object
    OutputConfigurationContainer:
      description: Configuration for the outputs of a meter (analog/digital outputs)
      properties:
        DigitalOutputNoConnectionAction:
          description: The Action when the device has lost the connection
          enum:
            - Nothing
            - TurnOff
            - TurnOn
            - SetPwmValue
          type: string
        Name:
          description: The Name of the Output
          type: string
        Number:
          description: The number of the Output. (1 for Output 1, 2 for Output 2)
          format: int32
          type: integer
        S0PulseValue:
          description: The S0 Pulse Value
          enum:
            - PulseValue1000Kwh
            - PulseValue10000Kwh
          type: string
        Type:
          description: The Type of the output
          enum:
            - ImpulseOutputActiveEnergy
            - ImpulseOutputActiveEnergyImport
            - ImpulseOutputActiveEnergyExport
            - ImpulseOutputReactiveEnergy
            - DigitalOutput
            - AnalogPwmSignalOutput
            - Disabled
          type: string
      type: object
    OutputInformation:
      description: Informations about the Outputs of a Meter or Folder
      properties:
        ActionType:
          description: The type of the Output
          enum:
            - OnOffAction
            - AnalogAction
          type: string
        Name:
          description: The Name of the Output
          type: string
        Number:
          description: The Number of this Output. Use this as ID to switch it on or off.
          format: int32
          type: integer
        ObisCode:
          description: The Obis Code for this Output
          type: string
      type: object
    PicoChargingData:
      description: Container class for the pico charging station API
      properties:
        ActiveChargingEnergy:
          description: The energy used by this active charging (in kWh)
          format: double
          type: number
        ActiveChargingPower:
          description: The power of the active charging (in kW)
          format: double
          type: number
        ConnectionMode:
          description: The mode how this station is connected to the cloud
          enum:
            - NetworkToCloudConnectionMode_NoConnection
            - NetworkToCloudConnectionMode_DirectWiFiConnection
            - NetworkToCloudConnectionMode_GPRSConnection
            - NetworkToCloudConnectionMode_NBIotConnection
            - NetworkToCloudConnectionMode_LteCatM1Connection
            - NetworkToCloudConnectionMode_MeshWiFiConnection
            - NetworkToCloudConnectionMode_MeshMobileConnection
          type: string
        Duration:
          description: The duration of this charging in seconds
          format: int32
          type: integer
        LastWarningOrError:
          description: The last warning or error of the station. This message is only shown if the warning or error happend in the last 5 minutes.
          enum:
            - MeterDataloggerEvent
            - MeterRestart
            - PowerDown
            - MissingPhaseL1
            - MissingPhaseL2
            - MissingPhaseL3
            - TamperDetectionCover
            - MagneticFieldDetection
            - ClockAdjusted
            - Overvoltage
            - Undervoltage
            - OvervoltageL1
            - OvervoltageL2
            - OvervoltageL3
            - ChargingTransaction
            - PicoErrorControllerPanic
            - PicoErrorMidServicePanic
            - PicoWarningRcdTriggered
            - PicoWarningCableLockError
            - PicoWarningDiodeFailure
            - PicoWarningOverload
            - PicoWarningHighTemperature
          type: string
        LastWarningOrErrorMessage:
          description: The message of the last warning or error of the station.
          type: string
        LastWarningOrErrorTime:
          description: The time when the LastWarningOrError happend
          format: date-time
          type: string
        LoadSheddingState:
          description: Max. dynamic current (e.g. set over API or Modbus TCP) of this station or the loadmanagement group of the station if the station is in a group. in A
          enum:
            - MaxCurrent
            - HalfCurrent
            - MinCurrent
            - NoCurrent
          type: string
        LoadmanagementGroupName:
          description: The name of the loadmanagement group. Or string.empty if the station is not in a group
          type: string
        MaxAllowedChargingCurrent:
          description: Max allowed charging current in A
          format: int32
          type: integer
        MaxDynamicCurrent:
          description: Max. dynamic current (e.g. set over API or Modbus TCP) of this station or the loadmanagement group of the station if the station is in a group. in A
          format: int32
          type: integer
        MaxLoadmanagementGroupCurrent:
          description: Max. current of the loadmanagement group of this station (if there is any) in A
          format: int32
          type: integer
        MaxStationCurrent:
          description: Max. current of the station in A
          format: int32
          type: integer
        MinStationCurrent:
          description: Min. current of the station in A
          format: int32
          type: integer
        State:
          description: The state of the charging station
          enum:
            - Booting
            - ReadyNoCarConnected
            - ReadyCarConnected
            - StartedWaitForCar
            - Charging
            - Installation
            - Authorize
            - Offline
          readOnly: true
          type: string
        ValueDate:
          description: The date of this values
          format: date-time
          type: string
      type: object
    PicoChargingHistoryData:
      description: Api container for the charging station history
      properties:
        Duration:
          description: The duration in seconds
          format: int32
          type: integer
        EnergyUsed:
          description: The energy used (in kWh)
          format: double
          type: number
        StartTime:
          description: The starttime of the charging (in UTC)
          format: date-time
          type: string
      type: object
    PicoLoadmanagementGroupDto:
      description: DTO for the pico loadmanagement group
      properties:
        Id:
          description: The ID of the loadmanagement group
          type: string
        MaxCurrent:
          description: The max current of this loadmanagement group
          format: double
          type: number
        Name:
          description: The name of the station
          type: string
        NumberOfStations:
          description: The number of assigned stations
          format: int32
          type: integer
      type: object
    PicoSettingsDto:
      description: DTO for the pico charging station settings
      properties:
        AuthenticationType:
          description: The authentication type
          enum:
            - None
            - Backend
          type: string
        CarIdDetection:
          description: Flag if the car id detection is enabled
          type: boolean
        DisplayBrightness:
          description: The Brightness of the LCD Matrix display. 0 = minimum, 255 = maximum
          format: byte
          type: string
        DnsName:
          description: The DNS name of the pico's internal ip
          type: string
        FixCableLockEnable:
          description: Enable the fix lock of the charging cable
          type: boolean
        IdleImageUrl:
          description: The url of the idle image
          type: string
        InternalIp:
          description: The internal IP address
          type: string
        LoadmanagementGroupId:
          description: The ID of the loadmanagement group
          type: string
        MaxCurrent:
          description: The max current of this station (in A)
          format: int32
          type: integer
        MinCurrent:
          description: The max current of this station (in A)
          format: int32
          type: integer
        ModbusTcp:
          description: Flag if ModbusTcp is enabled
          type: boolean
        Name:
          description: The name of the station
          type: string
        SerialNumber:
          description: The Serial number of the station
          type: string
      type: object
    RegisterRealtimeApiData:
      description: Container class for the register realtime API API
      properties:
        ApiUrl:
          description: The URL of your endpoint. To this endpoint all the values are send to.
          type: string
        BasicAuthPassword:
          description: The Password (basic auth) of your endpoint. Leave empty of none.
          type: string
        BasicAuthUsername:
          description: The Username (basic auth) of your endpoint. Leave empty of none.
          type: string
        Id:
          description: The ID of the registration
          type: string
        MeterId:
          description: The ID of the Meter. Just used if the RegistrationType is "SingleMeterRegistration".
          type: string
        RegistrationType:
          description: The Type of this registration (per meter, per user, ...)
          enum:
            - Disabled
            - SingleMeterRegistration
            - UserRegistration
          type: string
        SerialNumber:
          description: "The serial number of the Meter. Just used if the RegistrationType is \"SingleMeterRegistration\" and the MeterId is null. \r

            \            Example: 1 SME 01 63000000 or 6300000"
          type: string
      type: object
    SmartMeDeviceConfigurationContainer:
      description: API Container class for the meter configuration
      properties:
        DeviceEncryptionKey:
          description: The encryption key used to decrypt messages received from an external meter (used only for the smart-me modules)
          type: string
        DevicePinCode:
          description: PIN code to enter on a external meter (e.g. for the FNN meters)
          type: string
        DnsUpdateState:
          description: "Configuration of the dynamic DNS service. More information: http://wiki.smart-me.com/index.php/Dynamisches_DNS"
          enum:
            - NoUpdate
            - DnsUpdatePublicIp
            - DnsUpdateInternalIp
          type: string
        EnableModbusTcp:
          description: Enables or disables Modbus TCP (if the meter supports it).
          type: boolean
        Id:
          description: The ID of the device
          type: string
        InputConfiguration:
          description: The configuration for the intput outputs
          items:
            $ref: "#/components/schemas/InputConfigurationContainer"
          type: array
        OutputConfiguration:
          description: The configuration for the external outputs
          items:
            $ref: "#/components/schemas/OutputConfigurationContainer"
          type: array
        ShowReactiveEnergy:
          description: Shows the reactive energy values (if the meter supports it).
          type: boolean
        SwitchConfiguration:
          description: The configuration for the phase switches
          items:
            $ref: "#/components/schemas/SwitchConfigurationContainer"
          type: array
        UploadInterval:
          description: Number of seconds the device will upload the data. For smaller values maybe a professional license is needed.
          enum:
            - UploadInterval_1s
            - UploadInterval_5s
            - UploadInterval_10s
            - UploadInterval_30s
            - UploadInterval_60s
            - UploadInterval_5min
            - UploadInterval_15min
            - UploadInterval_30min
            - UploadInterval_60min
            - UploadInterval_6h
            - UploadInterval_12h
            - UploadInterval_24h
          type: string
      type: object
    SubUserData:
      description: Container data for the sub user
      properties:
        AccessEndDate:
          description: The end date. until this date the user has access
          format: date-time
          type: string
        AccessTimeStartDate:
          description: The start date. From this date the user has access
          format: date-time
          type: string
        Email:
          description: The Email adress
          type: string
        Id:
          description: The ID of the user
          type: string
        NewPassword:
          description: If set this is used a new password
          type: string
        PermissionLevel:
          description: The permission level of the user
          enum:
            - SelectedFolderAndSubfoldersMeters
            - SelectedFolderOnly
          type: string
        Username:
          description: The username
          type: string
      type: object
    SwitchConfigurationContainer:
      description: The configuration for a phase switch
      properties:
        CanSwitchOff:
          description: Flag if the switch can be turned off or is always on.
          type: boolean
        Number:
          description: The number of the phase. (e.g. 1 for Phase L1)
          format: int32
          type: integer
      type: object
    User:
      description: Container Class for the Web API
      properties:
        ChildUsers:
          description: The Users created by this users.
          items:
            $ref: "#/components/schemas/User"
          type: array
        Email:
          description: The EMail Address of the User
          type: string
        Id:
          description: The ID of the User
          format: int64
          type: integer
        IdAsString:
          description: The ID of the user as string
          type: string
        IsAdmin:
          description: Flag if this User is an Admin User
          type: boolean
        Permissions:
          description: Additional Permissions
          items:
            type: string
          type: array
        Username:
          description: The Username of the User
          type: string
      type: object
    VMeterToActivate:
      description: Actives a virtual Meter
      properties:
        SerialNumber:
          description: The Serialnumber of the Meter to activate.
          type: string
      type: object
    VMeterToDeactivate:
      description: Deactivates a virtual Meter
      properties:
        ID:
          description: The ID of the Virtual meter to deactivate
          type: string
      type: object
    ValueData:
      description: API Container for a (Device) Value
      properties:
        Obis:
          description: "The Obis code of this value. \r

            \            A description you can find here:\r

            \            http://wiki.smart-me.com/index.php/Obis_codes"
          type: string
        Value:
          description: The Value
          format: double
          type: number
      type: object
    ValuesData:
      description: API Container for a Meter Value
      properties:
        Date:
          description: The Date of the Value
          format: date-time
          type: string
        DeviceId:
          description: The ID of the device
          type: string
        Values:
          description: All values
          items:
            $ref: "#/components/schemas/ValueData"
          type: array
      type: object
    VirtualTariff:
      properties:
        Factor:
          description: Says how many of the active power is used in this tariff. This is calculated from the last meter values.
          format: double
          type: number
        Id:
          type: string
        Name:
          type: string
        Type:
          enum:
            - Battery
            - Solar
            - Normal
          type: string
        Unit:
          type: string
        Value:
          description: The Counter Value of this tariff
          format: double
          type: number
      type: object
    VirtualTariffConsumptionData:
      description: Container class for the virtual tariff consumption
      properties:
        Consumption:
          description: The consumption (e.g. kWh) of this tariff
          format: double
          type: number
        Currency:
          description: The currency of the price
          type: string
        Name:
          description: The Name of this virtual tariff
          type: string
        Price:
          description: The price of the energy in this timerange
          format: double
          type: number
        TariffType:
          description: The type of the virtual tariff (e.g. solar)
          enum:
            - Battery
            - Solar
            - Normal
          type: string
      type: object
    VirtualTariffsOfFolder:
      properties:
        Date:
          description: The DateTime (UTC) of this virtual tarfifs
          format: date-time
          readOnly: true
          type: string
        FolderId:
          readOnly: true
          type: string
        Name:
          description: The name of this folder
          readOnly: true
          type: string
        VirtualTariffs:
          items:
            $ref: "#/components/schemas/VirtualTariff"
          readOnly: true
          type: array
      type: object
  securitySchemes:
    basic:
      description: Basic HTTP Authentication
      scheme: basic
      type: http
