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: digiofficeapigateway.deltares.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 }