Server

<back to all web services

GetDevice

Devices
Requires Authentication
The following routes are available for this service:
GET/api/v1/devices/{Guid}
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Get
Imports Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Models
Imports Eras2Web.Service.Desktop.Server.ServiceModel.Enums
Imports Eras2Web.Service.Desktop.Server.ServiceModel.Stammdaten

Namespace Global

    Namespace Eras2Web.Service.Desktop.Server.ServiceModel.Enums

        Public Enum DeviceReadingKind
            ZA
            HA
            MO
            EB
            AB
        End Enum

        Public Enum EinheitType
            L
            Kg
            CBM
            Stck
            KWH
            MWH
            GWH
            T
            RM
            Einheit
            Qm
            GJ
            MJ
            Null
            St
            Srm
            Wh
        End Enum
    End Namespace

    Namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Get

        Public Partial Class GetDevice
            Implements IHasBearerToken
            <ApiMember(IsRequired:=true, ParameterType:="query")>
            Public Overridable Property BearerToken As String

            <ApiMember(IsRequired:=true, ParameterType:="path")>
            Public Overridable Property Guid As Guid
        End Class

        Public Partial Class GetDeviceResponse
            Public Overridable Property Device As Device
            Public Overridable Property ResponseStatus As ResponseStatus
        End Class
    End Namespace

    Namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Models

        <DataContract>
        Public Partial Class Device
            Public Sub New()
                DeviceConsumptions = New List(Of DeviceConsumption)
            End Sub

            <DataMember>
            Public Overridable Property Guid As Guid

            <DataMember>
            Public Overridable Property Number As String

            <DataMember>
            Public Overridable Property Label As String

            <DataMember>
            Public Overridable Property Description As String

            <DataMember>
            Public Overridable Property InstallationDate As Date

            <DataMember>
            Public Overridable Property DeinstallationDate As Nullable(Of Date)

            <DataMember>
            Public Overridable Property CalibrationDate As Nullable(Of Date)

            <DataMember>
            Public Overridable Property Unit As EinheitType

            <DataMember>
            Public Overridable Property Note As String

            <DataMember>
            Public Overridable Property DeviceCatalog As DeviceCatalog

            <DataMember>
            Public Overridable Property DeviceConsumptions As List(Of DeviceConsumption)
        End Class

        <DataContract>
        Public Partial Class DeviceConsumption
            <DataMember>
            Public Overridable Property Guid As Guid

            <DataMember>
            Public Overridable Property DeviceReading As Nullable(Of Double)

            <DataMember>
            Public Overridable Property DeviceReadingDate As Nullable(Of Date)

            <DataMember>
            Public Overridable Property DeviceReadingKind As DeviceReadingKind

            <DataMember>
            Public Overridable Property ChangeDate As Nullable(Of Date)

            <DataMember>
            Public Overridable Property Note As String

            <DataMember>
            Public Overridable Property AmpouleColour As String

            <DataMember>
            Public Overridable Property DeviceGuid As String
        End Class
    End Namespace

    Namespace Eras2Web.Service.Desktop.Server.ServiceModel.Stammdaten

        <DataContract>
        Public Partial Class DeviceCatalog
            <DataMember(Name:="Guid")>
            Public Overridable Property Guid As String

            <DataMember(Name:="TypKurz")>
            Public Overridable Property TypeShort As String

            <DataMember(Name:="TypLang")>
            Public Overridable Property TypeLong As String

            <DataMember(Name:="Ablesbar")>
            Public Overridable Property Readable As Boolean

            <DataMember(Name:="Klasse")>
            Public Overridable Property [Class] As String

            <DataMember(Name:="Abzug")>
            Public Overridable Property Subtraction As Boolean

            <DataMember(Name:="Hkvv")>
            Public Overridable Property Hkvv As Boolean

            <DataMember(Name:="Funk")>
            Public Overridable Property Radio As Boolean
        End Class
    End Namespace
End Namespace

VB.NET GetDevice DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /api/v1/devices/{Guid} HTTP/1.1 
Host: faabrechnungen-servdesk.eras-online.de 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	device: 
	{
		guid: 00000000000000000000000000000000,
		number: String,
		label: String,
		description: String,
		installationDate: 0001-01-01T00:00:00Z,
		deinstallationDate: 0001-01-01T00:00:00Z,
		calibrationDate: 0001-01-01T00:00:00Z,
		unit: L,
		note: String,
		deviceCatalog: 
		{
			Guid: String,
			TypKurz: String,
			TypLang: String,
			Ablesbar: False,
			Klasse: String,
			Abzug: False,
			Hkvv: False,
			Funk: False
		},
		deviceConsumptions: 
		[
			{
				guid: 00000000000000000000000000000000,
				deviceReading: 0,
				deviceReadingDate: 0001-01-01T00:00:00Z,
				deviceReadingKind: ZA,
				changeDate: 0001-01-01T00:00:00Z,
				note: String,
				ampouleColour: String,
				deviceGuid: String
			}
		]
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}