Platform API

<back to all web services

GetAutomationTypesByObjectType

Get automation types available for the specified object type (rmsTableCtxId)

Requires Authentication
The following routes are available for this service:
GET/api/automation/availabletypes/{RmsTableCtxId}
import 'package:servicestack/servicestack.dart';

class ListItemModel implements IConvertible
{
    String? ListItemId;
    String? Name;
    String? Description;
    String? ShortName;
    bool? IsDefault;
    int? Order;
    String? ListItemTrafficLightId;
    String? PrimaryListItemImageId;
    String? PrimaryListItemImageUrl;
    String? PrimaryImageThumbnailUrl;
    String? OwnerContactId;
    String? RecordStatus;

    ListItemModel({this.ListItemId,this.Name,this.Description,this.ShortName,this.IsDefault,this.Order,this.ListItemTrafficLightId,this.PrimaryListItemImageId,this.PrimaryListItemImageUrl,this.PrimaryImageThumbnailUrl,this.OwnerContactId,this.RecordStatus});
    ListItemModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ListItemId = json['ListItemId'];
        Name = json['Name'];
        Description = json['Description'];
        ShortName = json['ShortName'];
        IsDefault = json['IsDefault'];
        Order = json['Order'];
        ListItemTrafficLightId = json['ListItemTrafficLightId'];
        PrimaryListItemImageId = json['PrimaryListItemImageId'];
        PrimaryListItemImageUrl = json['PrimaryListItemImageUrl'];
        PrimaryImageThumbnailUrl = json['PrimaryImageThumbnailUrl'];
        OwnerContactId = json['OwnerContactId'];
        RecordStatus = json['RecordStatus'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ListItemId': ListItemId,
        'Name': Name,
        'Description': Description,
        'ShortName': ShortName,
        'IsDefault': IsDefault,
        'Order': Order,
        'ListItemTrafficLightId': ListItemTrafficLightId,
        'PrimaryListItemImageId': PrimaryListItemImageId,
        'PrimaryListItemImageUrl': PrimaryListItemImageUrl,
        'PrimaryImageThumbnailUrl': PrimaryImageThumbnailUrl,
        'OwnerContactId': OwnerContactId,
        'RecordStatus': RecordStatus
    };

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

// @ApiResponse(Description="A list of automation types assignable to a particular object type")
class GetAutomationTypesByObjectTypeResponse implements IConvertible
{
    /**
    * List of applicable automation types.
    */
    // @ApiMember(Description="List of applicable automation types.")
    List<ListItemModel>? AutomationTypes;

    ResponseStatus? ResponseStatus;

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

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

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

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

/**
* Get automation types available for the specified object type (rmsTableCtxId)
*/
// @Api(Description="Get automation types available for the specified object type (rmsTableCtxId)")
class GetAutomationTypesByObjectType implements IConvertible
{
    /**
    * RmsTableCtx Id to filter available automation types by
    */
    // @ApiMember(Description="RmsTableCtx Id to filter available automation types by", ParameterType="path")
    String? RmsTableCtxId;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
    'ListItemModel': TypeInfo(TypeOf.Class, create:() => ListItemModel()),
    'GetAutomationTypesByObjectTypeResponse': TypeInfo(TypeOf.Class, create:() => GetAutomationTypesByObjectTypeResponse()),
    'List<ListItemModel>': TypeInfo(TypeOf.Class, create:() => <ListItemModel>[]),
    'GetAutomationTypesByObjectType': TypeInfo(TypeOf.Class, create:() => GetAutomationTypesByObjectType()),
});

Dart GetAutomationTypesByObjectType DTOs

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

HTTP + CSV

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

GET /api/automation/availabletypes/{RmsTableCtxId} HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"AutomationTypes":[{"ListItemId":"00000000-0000-0000-0000-000000000000","Name":"String","Description":"String","ShortName":"String","IsDefault":false,"Order":0,"ListItemTrafficLightId":"00000000-0000-0000-0000-000000000000","PrimaryListItemImageId":"00000000-0000-0000-0000-000000000000","PrimaryListItemImageUrl":"String","PrimaryImageThumbnailUrl":"String","OwnerContactId":"00000000-0000-0000-0000-000000000000","RecordStatus":"String"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}