| POST | /JobHeartbeat |
|---|
import Foundation
import ServiceStack
public class JobHeartbeatReportRequest : Codable
{
public var jobName:String?
public var phase:String?
public var expectedIntervalMinutes:Int?
public var Description:String?
public var itemsProcessed:Int?
public var resultJson:String?
required public init(){}
}
public class JobHeartbeatResult : Codable
{
public var item:JobHeartbeat?
public var statusCode:Int?
public var message:String?
required public init(){}
}
public class JobHeartbeat : Codable
{
// @StringLength(100)
public var jobName:String?
// @StringLength(400)
public var Description:String?
public var expectedIntervalMinutes:Int?
public var lastRunAt:Date?
public var lastOkAt:Date?
// @StringLength(Int32.max)
public var lastResultJson:String?
public var itemsProcessed:Int?
public var consecutiveFailures:Int?
public var enabled:Bool?
public var updatedAt:Date?
required public init(){}
}
Swift JobHeartbeatReportRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /JobHeartbeat HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<JobHeartbeatReportRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Description>String</Description>
<ExpectedIntervalMinutes>0</ExpectedIntervalMinutes>
<ItemsProcessed>0</ItemsProcessed>
<JobName>String</JobName>
<Phase>String</Phase>
<ResultJson>String</ResultJson>
</JobHeartbeatReportRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<JobHeartbeatResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<Item xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
<d2p1:ConsecutiveFailures>0</d2p1:ConsecutiveFailures>
<d2p1:Description>String</d2p1:Description>
<d2p1:Enabled>false</d2p1:Enabled>
<d2p1:ExpectedIntervalMinutes>0</d2p1:ExpectedIntervalMinutes>
<d2p1:ItemsProcessed>0</d2p1:ItemsProcessed>
<d2p1:JobName>String</d2p1:JobName>
<d2p1:LastOkAt>0001-01-01T00:00:00</d2p1:LastOkAt>
<d2p1:LastResultJson>String</d2p1:LastResultJson>
<d2p1:LastRunAt>0001-01-01T00:00:00</d2p1:LastRunAt>
<d2p1:UpdatedAt>0001-01-01T00:00:00</d2p1:UpdatedAt>
</Item>
<Message>String</Message>
<StatusCode>0</StatusCode>
</JobHeartbeatResult>