Platform API

<back to all web services

GetObjectSubscriptions

Get object subscriptions for the specified object

Requires Authentication
The following routes are available for this service:
All Verbs/api/objectsubscriptions/{ObjectId}
import 'package:servicestack/servicestack.dart';

class ObjectSubscriptionDetailModel implements IConvertible
{
    /**
    * ID for the objectSubscription record.
    */
    // @ApiMember(Description="ID for the objectSubscription record.", Name="ObjectSubscriptionId")
    String? ObjectSubscriptionId;

    /**
    * Id of the Suite DataSource Instance Id.
    */
    // @ApiMember(Description="Id of the Suite DataSource Instance Id.", Name="SuiteDataSourceInstanceId")
    String? SuiteDataSourceInstanceId;

    /**
    * Suite DataSource Instance Name.
    */
    // @ApiMember(Description="Suite DataSource Instance Name.", Name="SuiteDataSourceName")
    String? SuiteDataSourceName;

    /**
    * Id indicating the RmsTableCtx of the object.
    */
    // @ApiMember(Description="Id indicating the RmsTableCtx of the object.", Name="RmsTableContextId")
    String? RmsTableContextId;

    /**
    * Id of the integrated object.
    */
    // @ApiMember(Description="Id of the integrated object.", Name="ObjectId")
    String? ObjectId;

    /**
    * Unique Key of this object in the external Data Source.
    */
    // @ApiMember(Description="Unique Key of this object in the external Data Source.", Name="AlternateKey")
    String? AlternateKey;

    /**
    * Date the object was integrated.
    */
    // @ApiMember(Description="Date the object was integrated.", Name="CreatedAt")
    DateTime? CreatedAt;

    /**
    * Record Status of the object subscription.
    */
    // @ApiMember(Description="Record Status of the object subscription.", Name="RecordStatus")
    String? RecordStatus;

    /**
    * Id of the Suite Instance.
    */
    // @ApiMember(Description="Id of the Suite Instance.", Name="SuiteInstanceId")
    String? SuiteInstanceId;

    /**
    * Suite Instance Name.
    */
    // @ApiMember(Description="Suite Instance Name.", Name="SuiteInstanceName")
    String? SuiteInstanceName;

    ObjectSubscriptionDetailModel({this.ObjectSubscriptionId,this.SuiteDataSourceInstanceId,this.SuiteDataSourceName,this.RmsTableContextId,this.ObjectId,this.AlternateKey,this.CreatedAt,this.RecordStatus,this.SuiteInstanceId,this.SuiteInstanceName});
    ObjectSubscriptionDetailModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ObjectSubscriptionId = json['ObjectSubscriptionId'];
        SuiteDataSourceInstanceId = json['SuiteDataSourceInstanceId'];
        SuiteDataSourceName = json['SuiteDataSourceName'];
        RmsTableContextId = json['RmsTableContextId'];
        ObjectId = json['ObjectId'];
        AlternateKey = json['AlternateKey'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        RecordStatus = json['RecordStatus'];
        SuiteInstanceId = json['SuiteInstanceId'];
        SuiteInstanceName = json['SuiteInstanceName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ObjectSubscriptionId': ObjectSubscriptionId,
        'SuiteDataSourceInstanceId': SuiteDataSourceInstanceId,
        'SuiteDataSourceName': SuiteDataSourceName,
        'RmsTableContextId': RmsTableContextId,
        'ObjectId': ObjectId,
        'AlternateKey': AlternateKey,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'RecordStatus': RecordStatus,
        'SuiteInstanceId': SuiteInstanceId,
        'SuiteInstanceName': SuiteInstanceName
    };

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

// @ApiResponse(Description="List of object subscriptions")
class GetObjectSubscriptionsResponse implements IConvertible
{
    List<ObjectSubscriptionDetailModel>? ObjectSubscriptions;
    ResponseStatus? ResponseStatus;

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

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

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

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

/**
* Get object subscriptions for the specified object
*/
// @Api(Description="Get object subscriptions for the specified object")
class GetObjectSubscriptions implements IConvertible
{
    /**
    * Get active/inactive object subscriptions for the specified object
    */
    // @ApiMember(Description="Get active/inactive object subscriptions for the specified object", IsRequired=true, Name="ObjectId")
    String? ObjectId;

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

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

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

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

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

Dart GetObjectSubscriptions 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.

POST /api/objectsubscriptions/{ObjectId} HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"ObjectId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ObjectSubscriptions":[{"ObjectSubscriptionId":"00000000-0000-0000-0000-000000000000","SuiteDataSourceInstanceId":"00000000-0000-0000-0000-000000000000","SuiteDataSourceName":"String","RmsTableContextId":"00000000-0000-0000-0000-000000000000","ObjectId":"00000000-0000-0000-0000-000000000000","AlternateKey":"String","CreatedAt":"0001-01-01T00:00:00.0000000","RecordStatus":"String","SuiteInstanceId":"00000000-0000-0000-0000-000000000000","SuiteInstanceName":"String"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}