| GET | /api/automation/{AutomationId}/documentation |
|---|
import 'package:servicestack/servicestack.dart';
class AutomationModel implements IConvertible
{
/**
* The unique automation Id
*/
// @ApiMember(Description="The unique automation Id", ParameterType="query")
String? AutomationId;
/**
* The automation type Id
*/
// @ApiMember(Description="The automation type Id", ParameterType="query")
String? AutomationTypeId;
/**
* The automation type
*/
// @ApiMember(Description="The automation type", ParameterType="query")
String? AutomationType;
/**
* The object this automation applies to
*/
// @ApiMember(Description="The object this automation applies to", ParameterType="query")
String? ObjectId;
/**
* The object name this automation applies to
*/
// @ApiMember(Description="The object name this automation applies to", ParameterType="query")
String? ObjectName;
/**
* The Id of the object type that this automation applies to.
*/
// @ApiMember(Description="The Id of the object type that this automation applies to. ", ParameterType="query")
String? RmsTableCtxIdObject;
/**
* The name of the object type that this automation applies to.
*/
// @ApiMember(Description="The name of the object type that this automation applies to.", ParameterType="query")
String? RmsTableCtxName;
/**
* A guid list containing the selected system action Id's that trigger this automation.
*/
// @ApiMember(Description="A guid list containing the selected system action Id's that trigger this automation.", ParameterType="query")
List<String>? ActionList;
/**
* A comma separated string of the selected system action names that trigger this automation.
*/
// @ApiMember(Description="A comma separated string of the selected system action names that trigger this automation.", ParameterType="query")
String? Actions;
/**
* Name of the automation.
*/
// @ApiMember(Description="Name of the automation.", ParameterType="query")
String? Name;
/**
* Description of the automation
*/
// @ApiMember(Description="Description of the automation", ParameterType="query")
String? Description;
/**
* Owner Contact Id
*/
// @ApiMember(Description="Owner Contact Id", ParameterType="query")
String? OwnerContactId;
/**
* Record Status of the automation.
*/
// @ApiMember(Description="Record Status of the automation.", ParameterType="query")
String? RecordStatus;
AutomationModel({this.AutomationId,this.AutomationTypeId,this.AutomationType,this.ObjectId,this.ObjectName,this.RmsTableCtxIdObject,this.RmsTableCtxName,this.ActionList,this.Actions,this.Name,this.Description,this.OwnerContactId,this.RecordStatus});
AutomationModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
AutomationId = json['AutomationId'];
AutomationTypeId = json['AutomationTypeId'];
AutomationType = json['AutomationType'];
ObjectId = json['ObjectId'];
ObjectName = json['ObjectName'];
RmsTableCtxIdObject = json['RmsTableCtxIdObject'];
RmsTableCtxName = json['RmsTableCtxName'];
ActionList = JsonConverters.fromJson(json['ActionList'],'List<String>',context!);
Actions = json['Actions'];
Name = json['Name'];
Description = json['Description'];
OwnerContactId = json['OwnerContactId'];
RecordStatus = json['RecordStatus'];
return this;
}
Map<String, dynamic> toJson() => {
'AutomationId': AutomationId,
'AutomationTypeId': AutomationTypeId,
'AutomationType': AutomationType,
'ObjectId': ObjectId,
'ObjectName': ObjectName,
'RmsTableCtxIdObject': RmsTableCtxIdObject,
'RmsTableCtxName': RmsTableCtxName,
'ActionList': JsonConverters.toJson(ActionList,'List<String>',context!),
'Actions': Actions,
'Name': Name,
'Description': Description,
'OwnerContactId': OwnerContactId,
'RecordStatus': RecordStatus
};
getTypeName() => "AutomationModel";
TypeContext? context = _ctx;
}
class AutoDocumentationModel extends AutomationModel implements IConvertible
{
/**
* Report Id
*/
// @ApiMember(Description="Report Id", ParameterType="query")
String? ReportId;
/**
* Report Name
*/
// @ApiMember(Description="Report Name", ParameterType="query")
String? Report;
/**
* Document Type Id
*/
// @ApiMember(Description="Document Type Id", ParameterType="query")
String? DocumentTypeId;
/**
* Document Type
*/
// @ApiMember(Description="Document Type", ParameterType="query")
String? DocumentType;
/**
* Document Status Id
*/
// @ApiMember(Description="Document Status Id", ParameterType="query")
String? DocumentStatusId;
/**
* The Document Status
*/
// @ApiMember(Description="The Document Status", ParameterType="query")
String? DocumentStatus;
AutoDocumentationModel({this.ReportId,this.Report,this.DocumentTypeId,this.DocumentType,this.DocumentStatusId,this.DocumentStatus});
AutoDocumentationModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
ReportId = json['ReportId'];
Report = json['Report'];
DocumentTypeId = json['DocumentTypeId'];
DocumentType = json['DocumentType'];
DocumentStatusId = json['DocumentStatusId'];
DocumentStatus = json['DocumentStatus'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'ReportId': ReportId,
'Report': Report,
'DocumentTypeId': DocumentTypeId,
'DocumentType': DocumentType,
'DocumentStatusId': DocumentStatusId,
'DocumentStatus': DocumentStatus
});
getTypeName() => "AutoDocumentationModel";
TypeContext? context = _ctx;
}
// @ApiResponse(Description="Returns a documentation automation")
class GetDocumentationAutomationResponse implements IConvertible
{
/**
* Documentation Automation
*/
// @ApiMember(Description="Documentation Automation")
AutoDocumentationModel? Automation;
ResponseStatus? ResponseStatus;
GetDocumentationAutomationResponse({this.Automation,this.ResponseStatus});
GetDocumentationAutomationResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Automation = JsonConverters.fromJson(json['Automation'],'AutoDocumentationModel',context!);
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Automation': JsonConverters.toJson(Automation,'AutoDocumentationModel',context!),
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetDocumentationAutomationResponse";
TypeContext? context = _ctx;
}
/**
* Get details of a specific documentation automation
*/
// @Api(Description="Get details of a specific documentation automation")
class GetDocumentationAutomation implements IConvertible
{
/**
* Automation Id.
*/
// @ApiMember(Description="Automation Id.", ParameterType="path")
String? AutomationId;
GetDocumentationAutomation({this.AutomationId});
GetDocumentationAutomation.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
AutomationId = json['AutomationId'];
return this;
}
Map<String, dynamic> toJson() => {
'AutomationId': AutomationId
};
getTypeName() => "GetDocumentationAutomation";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
'AutomationModel': TypeInfo(TypeOf.Class, create:() => AutomationModel()),
'AutoDocumentationModel': TypeInfo(TypeOf.Class, create:() => AutoDocumentationModel()),
'GetDocumentationAutomationResponse': TypeInfo(TypeOf.Class, create:() => GetDocumentationAutomationResponse()),
'GetDocumentationAutomation': TypeInfo(TypeOf.Class, create:() => GetDocumentationAutomation()),
});
Dart GetDocumentationAutomation DTOs
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.
GET /api/automation/{AutomationId}/documentation HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Automation:
{
Report: String,
DocumentType: String,
DocumentStatus: String,
AutomationType: String,
ObjectName: String,
RmsTableCtxName: String,
ActionList:
[
00000000-0000-0000-0000-000000000000
],
Actions: String,
Name: String,
Description: String,
RecordStatus: String
},
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}