import Foundation
import ServiceStack
public class GetWorkflowTask : IHasVersion, Codable
{
public var id:Int
public var version:Int
required public init(){}
}
// @DataContract
public class WorkflowTask : Codable
{
// @DataMember
public var id:Int
// @DataMember
public var documentID:String
// @DataMember
public var title:String
// @DataMember
public var Description:String
// @DataMember
public var contextTitle:String
// @DataMember
public var project:String
// @DataMember
public var relation:String
// @DataMember
public var imageKey:String
// @DataMember
public var urgent:Bool
// @DataMember
public var isRead:Bool
// @DataMember
public var assignmentDate:Date?
// @DataMember
public var completionDate:Date?
// @DataMember
public var numberOfComments:Int
// @DataMember
public var extraField:String
// @DataMember
public var hasPreview:Bool
// @DataMember
public var `extension`:String
// @DataMember
public var isInformative:Bool
// @DataMember
public var hasPendingSideSteps:Bool
// @DataMember
public var actions:[WorkflowTaskAction] = []
// @DataMember
public var canAccept:Bool
required public init(){}
}
public class WorkflowTaskAction : Codable
{
public var id:Int
public var title:String
public var type:String
public var useDialog:Bool
public var connectionID:String
required public init(){}
}
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 /jsv/reply/GetWorkflowTask HTTP/1.1
Host: doapigw.baasbv.nl
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ID: 0,
Version: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
ID: 0,
Title: String,
Description: String,
ContextTitle: String,
Project: String,
Relation: String,
ImageKey: String,
Urgent: False,
IsRead: False,
AssignmentDate: 0001-01-01,
CompletionDate: 0001-01-01,
NumberOfComments: 0,
ExtraField: String,
HasPreview: False,
Extension: String,
IsInformative: False,
HasPendingSideSteps: False,
Actions:
[
{
ID: 0,
Title: String,
Type: String,
UseDialog: False
}
],
CanAccept: False
}