POST | /Alarm | ||
---|---|---|---|
GET POST | /CreateAlarm |
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Trackunit.API;
namespace Trackunit.API
{
[DataContract]
public partial class ADVoltageAlarmLimits
{
[DataMember]
public virtual double? ADVoltageLowerLimit { get; set; }
[DataMember]
public virtual double? ADVoltageUpperLimit { get; set; }
}
[DataContract]
public partial class CreateAlarm
{
[DataMember]
public virtual string Name { get; set; }
[DataMember]
public virtual string Type { get; set; }
[DataMember]
public virtual bool? Enabled { get; set; }
[DataMember]
public virtual bool? AllUnits { get; set; }
[DataMember]
public virtual string[] Units { get; set; }
[DataMember]
public virtual string[] Groups { get; set; }
[DataMember]
public virtual string[] EmailRecipients { get; set; }
[DataMember]
public virtual string[] SystemRecipients { get; set; }
[DataMember]
public virtual string[] SmsRecipients { get; set; }
[DataMember]
public virtual TemperatureAlarmLimits TemperatureLimits { get; set; }
[DataMember]
public virtual ADVoltageAlarmLimits ADVoltageLimits { get; set; }
[DataMember]
public virtual int? ADVoltageInputIndex { get; set; }
[DataMember]
public virtual double? Threshold { get; set; }
[DataMember]
public virtual double? BatteryLevel { get; set; }
[DataMember]
public virtual Location Location { get; set; }
[DataMember]
public virtual double? Radius { get; set; }
[DataMember]
public virtual int? InputIndex { get; set; }
[DataMember]
public virtual double? Interval { get; set; }
[DataMember]
public virtual string PointId { get; set; }
[DataMember]
public virtual DateTime? ExpectedArrivalTime { get; set; }
[DataMember]
public virtual double? PowerLevel { get; set; }
[DataMember]
public virtual string[] Weekdays { get; set; }
[DataMember]
public virtual TimeOfDay TimeStart { get; set; }
[DataMember]
public virtual TimeOfDay TimeEnd { get; set; }
[DataMember]
public virtual string ZoneId { get; set; }
}
[DataContract]
public partial class CreateAlarmResponse
{
[DataMember]
public virtual string Id { get; set; }
[DataMember]
public virtual ResponseStatus ResponseStatus { get; set; }
}
[DataContract]
public partial class Location
{
[DataMember]
public virtual double Latitude { get; set; }
[DataMember]
public virtual double Longitude { get; set; }
}
[DataContract]
public partial class TemperatureAlarmLimits
{
[DataMember]
public virtual double? Temperature1LowerLimit { get; set; }
[DataMember]
public virtual double? Temperature1UpperLimit { get; set; }
[DataMember]
public virtual double? Temperature2LowerLimit { get; set; }
[DataMember]
public virtual double? Temperature2UpperLimit { get; set; }
}
[DataContract]
public partial class TimeOfDay
{
[DataMember]
public virtual int Hour { get; set; }
[DataMember]
public virtual int Minute { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Alarm HTTP/1.1
Host: api.trackunit.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"name":"String","type":"String","enabled":false,"allUnits":false,"units":["String"],"groups":["String"],"emailRecipients":["String"],"systemRecipients":["String"],"smsRecipients":["String"],"temperatureLimits":{"temperature1LowerLimit":0,"temperature1UpperLimit":0,"temperature2LowerLimit":0,"temperature2UpperLimit":0},"adVoltageLimits":{"adVoltageLowerLimit":0,"adVoltageUpperLimit":0},"adVoltageInputIndex":0,"threshold":0,"batteryLevel":0,"location":{"latitude":0,"longitude":0},"radius":0,"inputIndex":0,"interval":0,"pointId":"String","expectedArrivalTime":"0001-01-01T00:00:00.0000000Z","powerLevel":0,"weekdays":["String"],"timeStart":{"hour":0,"minute":0},"timeEnd":{"hour":0,"minute":0},"zoneId":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"id":"String","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}