Server

<back to all web services

GetLobaroDefaultDeviceParsedData

External
Requires Authentication
The following routes are available for this service:
POST/api/v1/external/lobaro
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Lobaro

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

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

    [<AllowNullLiteral>]
    type Pagination() = 
        member val Limit:Int32 = new Int32() with get,set
        member val Total:Int32 = new Int32() with get,set
        member val Offset:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type History() = 
        member val Time:String = null with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type CompactProfile() = 
        member val History:ResizeArray<History> = new ResizeArray<History>() with get,set

    [<AllowNullLiteral>]
    type MbusBodyDataRecords() = 
        member val VifUnit:String = null with get,set
        member val VifQuantity:String = null with get,set
        member val ValueScaled:Double = new Double() with get,set
        member val VifExponent:String = null with get,set
        member val ValueString:String = null with get,set
        member val Value:String = null with get,set
        member val DifFunctionString:String = null with get,set
        member val StorageNo:String = null with get,set
        member val CompactProfile:CompactProfile = null with get,set

    [<AllowNullLiteral>]
    type MbusBody() = 
        member val DataRecords:ResizeArray<MbusBodyDataRecords> = new ResizeArray<MbusBodyDataRecords>() with get,set

    [<AllowNullLiteral>]
    type Header() = 
        member val IdString:Int32 = new Int32() with get,set
        member val DeviceString:String = null with get,set

    [<AllowNullLiteral>]
    type DeviceMbusData() = 
        member val IdString:Int32 = new Int32() with get,set
        member val DeviceString:String = null with get,set
        member val Body:MbusBody = null with get,set
        member val Header:Header = null with get,set

    [<AllowNullLiteral>]
    type DeviceData() = 
        member val Mbus:DeviceMbusData = null with get,set

    [<AllowNullLiteral>]
    type LobaroData() = 
        member val Id:Int32 = new Int32() with get,set
        member val DeviceId:Int32 = new Int32() with get,set
        member val CreatedAt:DateTime = new DateTime() with get,set
        member val UpdatedAt:DateTime = new DateTime() with get,set
        member val Data:DeviceData = null with get,set

    [<AllowNullLiteral>]
    type GetLobaroDefaultDeviceParsedData() = 
        [<ApiMember(IsRequired=true, ParameterType="body")>]
        member val Pagination:Pagination = null with get,set

        [<ApiMember(IsRequired=true, ParameterType="body")>]
        member val Data:ResizeArray<LobaroData> = new ResizeArray<LobaroData>() with get,set

F# GetLobaroDefaultDeviceParsedData 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.

POST /api/v1/external/lobaro HTTP/1.1 
Host: brendle-schneider-servdesk.eras-online.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	pagination: 
	{
		limit: 0,
		total: 0,
		offset: 0
	},
	data: 
	[
		{
			id: 0,
			deviceId: 0,
			createdAt: 0001-01-01T00:00:00Z,
			updatedAt: 0001-01-01T00:00:00Z,
			data: 
			{
				mbus: 
				{
					idString: 0,
					deviceString: String,
					body: 
					{
						dataRecords: 
						[
							{
								vifUnit: String,
								vifQuantity: String,
								valueScaled: 0,
								vifExponent: String,
								valueString: String,
								value: String,
								difFunctionString: String,
								storageNo: String,
								compactProfile: 
								{
									history: 
									[
										{
											time: String,
											value: String
										}
									]
								}
							}
						]
					},
					header: 
					{
						idString: 0,
						deviceString: String
					}
				}
			}
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}