Trendsic Platform Service

<back to all web services

MessagingWorkflowActionRequest

Requires Authentication
The following routes are available for this service:
POST/v1/messaging/workflows/{WorkflowId}/replace
POST/v1/messaging/workflows/{WorkflowId}/keep
import 'package:servicestack/servicestack.dart';

class CompileResult implements IConvertible
{
    String? RuleKey;
    String? BranchId;
    String? LineId;
    String? StepId;
    int? WorkflowId;
    int? VersionNum;
    String? Action;
    String? Name;
    String? Note;
    bool? Customized;

    CompileResult({this.RuleKey,this.BranchId,this.LineId,this.StepId,this.WorkflowId,this.VersionNum,this.Action,this.Name,this.Note,this.Customized});
    CompileResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RuleKey = json['RuleKey'];
        BranchId = json['BranchId'];
        LineId = json['LineId'];
        StepId = json['StepId'];
        WorkflowId = json['WorkflowId'];
        VersionNum = json['VersionNum'];
        Action = json['Action'];
        Name = json['Name'];
        Note = json['Note'];
        Customized = json['Customized'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RuleKey': RuleKey,
        'BranchId': BranchId,
        'LineId': LineId,
        'StepId': StepId,
        'WorkflowId': WorkflowId,
        'VersionNum': VersionNum,
        'Action': Action,
        'Name': Name,
        'Note': Note,
        'Customized': Customized
    };

    getTypeName() => "CompileResult";
    TypeContext? context = _ctx;
}

class MessagingCompileResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<CompileResult>? Results = [];

    MessagingCompileResponse({this.ResponseStatus,this.Results});
    MessagingCompileResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Results = JsonConverters.fromJson(json['Results'],'List<CompileResult>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Results': JsonConverters.toJson(Results,'List<CompileResult>',context!)
    };

    getTypeName() => "MessagingCompileResponse";
    TypeContext? context = _ctx;
}

class MessagingWorkflowActionRequest implements IConvertible
{
    int? WorkflowId;

    MessagingWorkflowActionRequest({this.WorkflowId});
    MessagingWorkflowActionRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        WorkflowId = json['WorkflowId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'WorkflowId': WorkflowId
    };

    getTypeName() => "MessagingWorkflowActionRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CompileResult': TypeInfo(TypeOf.Class, create:() => CompileResult()),
    'MessagingCompileResponse': TypeInfo(TypeOf.Class, create:() => MessagingCompileResponse()),
    'List<CompileResult>': TypeInfo(TypeOf.Class, create:() => <CompileResult>[]),
    'MessagingWorkflowActionRequest': TypeInfo(TypeOf.Class, create:() => MessagingWorkflowActionRequest()),
});

Dart MessagingWorkflowActionRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/messaging/workflows/{WorkflowId}/replace HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	WorkflowId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	Results: 
	[
		{
			RuleKey: String,
			BranchId: 00000000000000000000000000000000,
			LineId: 00000000000000000000000000000000,
			StepId: String,
			WorkflowId: 0,
			VersionNum: 0,
			Action: String,
			Name: String,
			Note: String,
			Customized: False
		}
	]
}