Platform API

<back to all web services

GetQuadrant

Get quadrant data for the perspective session id specified in the authentication token

Requires Authentication
The following routes are available for this service:
All Verbs/api/quadrant
All Verbs/api/core/quadrant
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;
}

class ProfileLicenseeRoleView implements IConvertible
{
    String? ApplianceId;
    String? ApplianceName;
    String? ProfileId;
    String? ProfileName;
    bool? IsDefaultProfile;
    String? ContactId;
    String? ContactName;
    String? ContactTypeId;
    String? LicenseeContactRoleConnectionId;
    String? UserContactRoleConnectionId;
    String? RoleId;
    String? RoleName;
    String? LicenseeContactId;
    String? LicenseeContactName;
    int? RoleOrder;
    String? ProfileImageUrl;
    String? ProfileThumbnailImageUrl;
    bool? IsLicenseeRole;
    bool? IsManageContactsRole;
    bool? IsPlatformRole;
    bool? IsDefault;

    ProfileLicenseeRoleView({this.ApplianceId,this.ApplianceName,this.ProfileId,this.ProfileName,this.IsDefaultProfile,this.ContactId,this.ContactName,this.ContactTypeId,this.LicenseeContactRoleConnectionId,this.UserContactRoleConnectionId,this.RoleId,this.RoleName,this.LicenseeContactId,this.LicenseeContactName,this.RoleOrder,this.ProfileImageUrl,this.ProfileThumbnailImageUrl,this.IsLicenseeRole,this.IsManageContactsRole,this.IsPlatformRole,this.IsDefault});
    ProfileLicenseeRoleView.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ApplianceId = json['ApplianceId'];
        ApplianceName = json['ApplianceName'];
        ProfileId = json['ProfileId'];
        ProfileName = json['ProfileName'];
        IsDefaultProfile = json['IsDefaultProfile'];
        ContactId = json['ContactId'];
        ContactName = json['ContactName'];
        ContactTypeId = json['ContactTypeId'];
        LicenseeContactRoleConnectionId = json['LicenseeContactRoleConnectionId'];
        UserContactRoleConnectionId = json['UserContactRoleConnectionId'];
        RoleId = json['RoleId'];
        RoleName = json['RoleName'];
        LicenseeContactId = json['LicenseeContactId'];
        LicenseeContactName = json['LicenseeContactName'];
        RoleOrder = json['RoleOrder'];
        ProfileImageUrl = json['ProfileImageUrl'];
        ProfileThumbnailImageUrl = json['ProfileThumbnailImageUrl'];
        IsLicenseeRole = json['IsLicenseeRole'];
        IsManageContactsRole = json['IsManageContactsRole'];
        IsPlatformRole = json['IsPlatformRole'];
        IsDefault = json['IsDefault'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ApplianceId': ApplianceId,
        'ApplianceName': ApplianceName,
        'ProfileId': ProfileId,
        'ProfileName': ProfileName,
        'IsDefaultProfile': IsDefaultProfile,
        'ContactId': ContactId,
        'ContactName': ContactName,
        'ContactTypeId': ContactTypeId,
        'LicenseeContactRoleConnectionId': LicenseeContactRoleConnectionId,
        'UserContactRoleConnectionId': UserContactRoleConnectionId,
        'RoleId': RoleId,
        'RoleName': RoleName,
        'LicenseeContactId': LicenseeContactId,
        'LicenseeContactName': LicenseeContactName,
        'RoleOrder': RoleOrder,
        'ProfileImageUrl': ProfileImageUrl,
        'ProfileThumbnailImageUrl': ProfileThumbnailImageUrl,
        'IsLicenseeRole': IsLicenseeRole,
        'IsManageContactsRole': IsManageContactsRole,
        'IsPlatformRole': IsPlatformRole,
        'IsDefault': IsDefault
    };

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

class QuadrantModel implements IConvertible
{
    List<ListItemModel>? Appliances;
    String? UserProfileId;
    String? RoleConnectionId;
    String? LicenseeContactId;
    String? LicenseeContactName;
    String? ApplianceId;
    String? FullName;
    String? ImpersonatingUserProfileId;
    List<ProfileLicenseeRoleView>? Connections;

    QuadrantModel({this.Appliances,this.UserProfileId,this.RoleConnectionId,this.LicenseeContactId,this.LicenseeContactName,this.ApplianceId,this.FullName,this.ImpersonatingUserProfileId,this.Connections});
    QuadrantModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Appliances = JsonConverters.fromJson(json['Appliances'],'List<ListItemModel>',context!);
        UserProfileId = json['UserProfileId'];
        RoleConnectionId = json['RoleConnectionId'];
        LicenseeContactId = json['LicenseeContactId'];
        LicenseeContactName = json['LicenseeContactName'];
        ApplianceId = json['ApplianceId'];
        FullName = json['FullName'];
        ImpersonatingUserProfileId = json['ImpersonatingUserProfileId'];
        Connections = JsonConverters.fromJson(json['Connections'],'List<ProfileLicenseeRoleView>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Appliances': JsonConverters.toJson(Appliances,'List<ListItemModel>',context!),
        'UserProfileId': UserProfileId,
        'RoleConnectionId': RoleConnectionId,
        'LicenseeContactId': LicenseeContactId,
        'LicenseeContactName': LicenseeContactName,
        'ApplianceId': ApplianceId,
        'FullName': FullName,
        'ImpersonatingUserProfileId': ImpersonatingUserProfileId,
        'Connections': JsonConverters.toJson(Connections,'List<ProfileLicenseeRoleView>',context!)
    };

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

class GetQuadrantResponse implements IConvertible
{
    QuadrantModel? Quadrant;
    List<String>? Permissions;
    ResponseStatus? ResponseStatus;

    GetQuadrantResponse({this.Quadrant,this.Permissions,this.ResponseStatus});
    GetQuadrantResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

/**
* Get quadrant data for the perspective session id specified in the authentication token
*/
// @Api(Description="Get quadrant data for the perspective session id specified in the authentication token")
class GetQuadrant implements IConvertible
{
    String? PerspectiveSessionId;

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

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

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

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

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

Dart GetQuadrant 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 /api/quadrant HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

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

{
	Quadrant: 
	{
		Appliances: 
		[
			{
				Name: String,
				Description: String,
				ShortName: String,
				IsDefault: False,
				Order: 0,
				PrimaryListItemImageUrl: String,
				PrimaryImageThumbnailUrl: String,
				RecordStatus: String
			}
		],
		LicenseeContactName: String,
		FullName: String,
		Connections: 
		[
			{
				ApplianceName: String,
				ProfileName: String,
				IsDefaultProfile: False,
				ContactName: String,
				RoleName: String,
				LicenseeContactName: String,
				RoleOrder: 0,
				ProfileImageUrl: String,
				ProfileThumbnailImageUrl: String,
				IsLicenseeRole: False,
				IsManageContactsRole: False,
				IsPlatformRole: False,
				IsDefault: False
			}
		]
	},
	Permissions: 
	[
		00000000-0000-0000-0000-000000000000
	],
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}