| GET,POST | /measurements/{Keys}/metadata |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ReadMeasurementMetaData(IPost):
keys: Optional[List[str]] = None
max_results: Optional[int] = None
Python ReadMeasurementMetaData DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /measurements/{Keys}/metadata HTTP/1.1
Host: monitoring.ox2.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
keys:
[
String
],
maxResults: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
[
{
id: 0,
accessType: Read,
attributes: String,
coerceType: None,
description: String,
deviceId: 0,
driverSource: String,
engineDeadBand: 0,
engineId: 0,
euFullScale: 0,
euZeroScale: 0,
initialNumericValue: 0,
initialStringValue: String,
inverted: False,
ioDataType: Default,
ioServerId: 0,
itemId: 0,
libraryId: 0,
logData: False,
logDeadBand: 0,
logResolution: String,
logType: Always,
memoryDataType: Default,
originalName: String,
parameterTypeId: 0,
rawFullScale: 0,
rawZeroScale: 0,
scaleEquation: String,
scaleType: None,
setInitialValue: False,
tagId: 0,
tagName: String,
tagStatus: String,
tagType: NON_CONTROL,
unitId: 0,
unitName: String,
update: 0,
userId: 0,
createdOn: 0001-01-01,
databaseId: 0,
deviceGuid: 00000000-0000-0000-0000-000000000000,
systemAttributes: String,
disabled: False
}
]