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 WorkflowTaskAction:
id: Optional[int] = None
title: Optional[str] = None
type: Optional[str] = None
use_dialog: Optional[bool] = None
connection_i_d: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class WorkflowTask:
id: Optional[int] = None
document_i_d: Optional[str] = None
title: Optional[str] = None
description: Optional[str] = None
context_title: Optional[str] = None
project: Optional[str] = None
relation: Optional[str] = None
image_key: Optional[str] = None
urgent: Optional[bool] = None
is_read: Optional[bool] = None
assignment_date: Optional[datetime.datetime] = None
completion_date: Optional[datetime.datetime] = None
number_of_comments: Optional[int] = None
extra_field: Optional[str] = None
has_preview: Optional[bool] = None
extension: Optional[str] = None
is_informative: Optional[bool] = None
has_pending_side_steps: Optional[bool] = None
actions: Optional[List[WorkflowTaskAction]] = None
can_accept: Optional[bool] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetWorkflowTask(IHasVersion):
id: Optional[int] = None
version: Optional[int] = None
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 /json/reply/GetWorkflowTask HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: application/json
Content-Type: application/json
Content-Length: length
{"ID":0,"Version":0}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"ID":0,"DocumentID":"00000000-0000-0000-0000-000000000000","Title":"String","Description":"String","ContextTitle":"String","Project":"String","Relation":"String","ImageKey":"String","Urgent":false,"IsRead":false,"AssignmentDate":"0001-01-01T00:00:00.0000000","CompletionDate":"0001-01-01T00:00:00.0000000","NumberOfComments":0,"ExtraField":"String","HasPreview":false,"Extension":"String","IsInformative":false,"HasPendingSideSteps":false,"Actions":[{"ID":0,"Title":"String","Type":"String","UseDialog":false,"ConnectionID":"00000000-0000-0000-0000-000000000000"}],"CanAccept":false}