Server

<back to all web services

GetDevice

Devices
Requires Authentication
The following routes are available for this service:
GET/api/v1/devices/{Guid}
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Enums

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    type EinheitType =
        | L = 0
        | Kg = 1
        | CBM = 2
        | Stck = 3
        | KWH = 4
        | MWH = 5
        | GWH = 6
        | T = 7
        | RM = 8
        | Einheit = 9
        | Qm = 10
        | GJ = 11
        | MJ = 12
        | Null = 13
        | St = 14
        | Srm = 15
        | Wh = 16

    [<DataContract>]
    [<AllowNullLiteral>]
    type DeviceCatalog() = 
        [<DataMember(Name="Guid")>]
        member val Guid:String = null with get,set

        [<DataMember(Name="TypKurz")>]
        member val TypeShort:String = null with get,set

        [<DataMember(Name="TypLang")>]
        member val TypeLong:String = null with get,set

        [<DataMember(Name="Ablesbar")>]
        member val Readable:Boolean = new Boolean() with get,set

        [<DataMember(Name="Klasse")>]
        member val Class:String = null with get,set

        [<DataMember(Name="Abzug")>]
        member val Subtraction:Boolean = new Boolean() with get,set

        [<DataMember(Name="Hkvv")>]
        member val Hkvv:Boolean = new Boolean() with get,set

        [<DataMember(Name="Funk")>]
        member val Radio:Boolean = new Boolean() with get,set

    type DeviceReadingKind =
        | ZA = 0
        | HA = 1
        | MO = 2
        | EB = 3
        | AB = 4

    [<DataContract>]
    [<AllowNullLiteral>]
    type DeviceConsumption() = 
        [<DataMember>]
        member val Guid:Guid = new Guid() with get,set

        [<DataMember>]
        member val DeviceReading:Nullable<Double> = new Nullable<Double>() with get,set

        [<DataMember>]
        member val DeviceReadingDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val DeviceReadingKind:DeviceReadingKind = new DeviceReadingKind() with get,set

        [<DataMember>]
        member val ChangeDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val Note:String = null with get,set

        [<DataMember>]
        member val AmpouleColour:String = null with get,set

        [<DataMember>]
        member val DeviceGuid:String = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type Device() = 
        [<DataMember>]
        member val Guid:Guid = new Guid() with get,set

        [<DataMember>]
        member val Number:String = null with get,set

        [<DataMember>]
        member val Label:String = null with get,set

        [<DataMember>]
        member val Description:String = null with get,set

        [<DataMember>]
        member val InstallationDate:DateTime = new DateTime() with get,set

        [<DataMember>]
        member val DeinstallationDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val CalibrationDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val Unit:EinheitType = new EinheitType() with get,set

        [<DataMember>]
        member val Note:String = null with get,set

        [<DataMember>]
        member val DeviceCatalog:DeviceCatalog = null with get,set

        [<DataMember>]
        member val DeviceConsumptions:ResizeArray<DeviceConsumption> = new ResizeArray<DeviceConsumption>() with get,set

    [<AllowNullLiteral>]
    type GetDeviceResponse() = 
        member val Device:Device = null with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type GetDevice() = 
        [<ApiMember(IsRequired=true, ParameterType="query")>]
        member val BearerToken:String = null with get,set

        [<ApiMember(IsRequired=true, ParameterType="path")>]
        member val Guid:Guid = new Guid() with get,set

F# 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: plasa-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
		}
	}
}