/* Options: Date: 2026-04-04 01:22:10 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetConnectionsToContact.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum SortOrder { Ascending, Descending, } class PagedModel implements IConvertible { /** * Page Number to retrieve */ // @ApiMember(DataType="int", Description="Page Number to retrieve", Name="PageNumber") int? PageNumber; /** * Number of records to retrieve */ // @ApiMember(DataType="int", Description="Number of records to retrieve", Name="PageSize") int? PageSize; /** * Index of field to sort results by */ // @ApiMember(DataType="int", Description="Index of field to sort results by", Name="SortIndex") int? SortIndex; /** * Sort Order - Ascending or Descending */ // @ApiMember(DataType="int", Description="Sort Order - Ascending or Descending", Name="SortOrder") SortOrder? SortOrder; PagedModel({this.PageNumber,this.PageSize,this.SortIndex,this.SortOrder}); PagedModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PageNumber = json['PageNumber']; PageSize = json['PageSize']; SortIndex = json['SortIndex']; SortOrder = JsonConverters.fromJson(json['SortOrder'],'SortOrder',context!); return this; } Map toJson() => { 'PageNumber': PageNumber, 'PageSize': PageSize, 'SortIndex': SortIndex, 'SortOrder': JsonConverters.toJson(SortOrder,'SortOrder',context!) }; getTypeName() => "PagedModel"; TypeContext? context = _ctx; } class ContactSummaryModel implements IConvertible { /** * Contact linked to the profile */ // @ApiMember(DataType="Guid", Description="Contact linked to the profile", Name="ContactId") String? ContactId; /** * Full name of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Full name of the contact linked to the profile", Name="ContactFullName") String? ContactFullName; /** * Email Address of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Email Address of the contact linked to the profile", Name="EmailAddress") String? EmailAddress; /** * Mobile Number of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Mobile Number of the contact linked to the profile", Name="MobileNumber") String? MobileNumber; /** * Primary Phone Number of the contact linked to the profile */ // @ApiMember(DataType="string", Description="Primary Phone Number of the contact linked to the profile", Name="PhoneNumber") String? PhoneNumber; /** * Type of contact (person, organisation etc.) linked to the profile */ // @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeId") String? ContactTypeId; /** * Profile photo of contact linked to the profile */ // @ApiMember(DataType="string", Description="Profile photo of contact linked to the profile", Name="ProfilePhotoUrl") String? ProfilePhotoUrl; /** * Thumbnail photo of contact linked to the profile */ // @ApiMember(DataType="string", Description="Thumbnail photo of contact linked to the profile", Name="ProfilePhotoThumbnailUrl") String? ProfilePhotoThumbnailUrl; /** * Profile description */ // @ApiMember(DataType="string", Description="Profile description", Name="Description") String? Description; /** * Employment Industry */ // @ApiMember(DataType="string", Description="Employment Industry", Name="EmploymentIndustry") String? EmploymentIndustry; /** * Employment Role */ // @ApiMember(DataType="string", Description="Employment Role", Name="EmploymentRole") String? EmploymentRole; /** * Areas of Work */ // @ApiMember(DataType="string", Description="Areas of Work", Name="EmploymentGeographicArea") String? EmploymentGeographicArea; /** * Timezone Name */ // @ApiMember(DataType="string", Description="Timezone Name", Name="TimezoneName", ParameterType="query") String? TimezoneName; /** * The primary address of the contact */ // @ApiMember(DataType="string", Description="The primary address of the contact", Name="PrimaryAddress", ParameterType="query") String? PrimaryAddress; /** * Have all connections to the contact been removed? */ // @ApiMember(DataType="bool", Description="Have all connections to the contact been removed?", Name="IsRemovedContact") bool? IsRemovedContact; ContactSummaryModel({this.ContactId,this.ContactFullName,this.EmailAddress,this.MobileNumber,this.PhoneNumber,this.ContactTypeId,this.ProfilePhotoUrl,this.ProfilePhotoThumbnailUrl,this.Description,this.EmploymentIndustry,this.EmploymentRole,this.EmploymentGeographicArea,this.TimezoneName,this.PrimaryAddress,this.IsRemovedContact}); ContactSummaryModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ContactId = json['ContactId']; ContactFullName = json['ContactFullName']; EmailAddress = json['EmailAddress']; MobileNumber = json['MobileNumber']; PhoneNumber = json['PhoneNumber']; ContactTypeId = json['ContactTypeId']; ProfilePhotoUrl = json['ProfilePhotoUrl']; ProfilePhotoThumbnailUrl = json['ProfilePhotoThumbnailUrl']; Description = json['Description']; EmploymentIndustry = json['EmploymentIndustry']; EmploymentRole = json['EmploymentRole']; EmploymentGeographicArea = json['EmploymentGeographicArea']; TimezoneName = json['TimezoneName']; PrimaryAddress = json['PrimaryAddress']; IsRemovedContact = json['IsRemovedContact']; return this; } Map toJson() => { 'ContactId': ContactId, 'ContactFullName': ContactFullName, 'EmailAddress': EmailAddress, 'MobileNumber': MobileNumber, 'PhoneNumber': PhoneNumber, 'ContactTypeId': ContactTypeId, 'ProfilePhotoUrl': ProfilePhotoUrl, 'ProfilePhotoThumbnailUrl': ProfilePhotoThumbnailUrl, 'Description': Description, 'EmploymentIndustry': EmploymentIndustry, 'EmploymentRole': EmploymentRole, 'EmploymentGeographicArea': EmploymentGeographicArea, 'TimezoneName': TimezoneName, 'PrimaryAddress': PrimaryAddress, 'IsRemovedContact': IsRemovedContact }; getTypeName() => "ContactSummaryModel"; TypeContext? context = _ctx; } class ContactConnectionModel implements IConvertible { /** * Connection Id (if applicable) */ // @ApiMember(DataType="Guid?", Description="Connection Id (if applicable)", Name="ConnectionId") String? ConnectionId; /** * Connection Request Id (if applicable) */ // @ApiMember(DataType="Guid?", Description="Connection Request Id (if applicable)", Name="ConnectionRequestId") String? ConnectionRequestId; /** * Details of the contact */ // @ApiMember(DataType="ContactSummaryModel", Description="Details of the contact", IsRequired=true, Name="Contact") ContactSummaryModel? Contact; /** * Contact's role Id in the connection */ // @ApiMember(DataType="Guid", Description="Contact's role Id in the connection", IsRequired=true, Name="ContactRoleId") String? ContactRoleId; /** * Contact's role name in the connection */ // @ApiMember(DataType="string", Description="Contact's role name in the connection", Name="ContactRoleName") String? ContactRoleName; /** * Requestor Contact Id */ // @ApiMember(DataType="Guid", Description="Requestor Contact Id", IsRequired=true, Name="RequestorContactId") String? RequestorContactId; /** * Requestor Contact Name */ // @ApiMember(DataType="Guid", Description="Requestor Contact Name", Name="RequestorContactName") String? RequestorContactName; /** * Requestor contact's role Id in the connection */ // @ApiMember(DataType="Guid", Description="Requestor contact's role Id in the connection", IsRequired=true, Name="RequestorRoleId") String? RequestorRoleId; /** * Requestor's role name in the connection */ // @ApiMember(DataType="string", Description="Requestor's role name in the connection", Name="RequestorRoleName") String? RequestorRoleName; /** * Primary role in the connection to display */ // @ApiMember(DataType="string", Description="Primary role in the connection to display", Name="PrimaryRoleName") String? PrimaryRoleName; /** * Connection Status Id */ // @ApiMember(DataType="Guid", Description="Connection Status Id", IsRequired=true, Name="ConnectionStatusId") String? ConnectionStatusId; /** * Connection Status Name */ // @ApiMember(DataType="string", Description="Connection Status Name", Name="ConnectionStatusName") String? ConnectionStatusName; /** * Is this a pending connection request? */ // @ApiMember(DataType="bool", Description="Is this a pending connection request?", Name="IsConnectionRequest") bool? IsConnectionRequest; /** * Is this an incoming connection request? */ // @ApiMember(DataType="bool", Description="Is this an incoming connection request?", Name="IsIncoming") bool? IsIncoming; DateTime? FromDate; /** * Details of the contact suggesting this connection */ // @ApiMember(DataType="ContactSummaryModel", Description="Details of the contact suggesting this connection", IsRequired=true, Name="SuggesterContact") ContactSummaryModel? SuggesterContact; /** * Can this connection be cancelled? */ // @ApiMember(DataType="bool", Description="Can this connection be cancelled?", Name="AllowCancel") bool? AllowCancel; /** * Can this connection be removed? */ // @ApiMember(DataType="bool", Description="Can this connection be removed?", Name="AllowRemove") bool? AllowRemove; ContactConnectionModel({this.ConnectionId,this.ConnectionRequestId,this.Contact,this.ContactRoleId,this.ContactRoleName,this.RequestorContactId,this.RequestorContactName,this.RequestorRoleId,this.RequestorRoleName,this.PrimaryRoleName,this.ConnectionStatusId,this.ConnectionStatusName,this.IsConnectionRequest,this.IsIncoming,this.FromDate,this.SuggesterContact,this.AllowCancel,this.AllowRemove}); ContactConnectionModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ConnectionId = json['ConnectionId']; ConnectionRequestId = json['ConnectionRequestId']; Contact = JsonConverters.fromJson(json['Contact'],'ContactSummaryModel',context!); ContactRoleId = json['ContactRoleId']; ContactRoleName = json['ContactRoleName']; RequestorContactId = json['RequestorContactId']; RequestorContactName = json['RequestorContactName']; RequestorRoleId = json['RequestorRoleId']; RequestorRoleName = json['RequestorRoleName']; PrimaryRoleName = json['PrimaryRoleName']; ConnectionStatusId = json['ConnectionStatusId']; ConnectionStatusName = json['ConnectionStatusName']; IsConnectionRequest = json['IsConnectionRequest']; IsIncoming = json['IsIncoming']; FromDate = JsonConverters.fromJson(json['FromDate'],'DateTime',context!); SuggesterContact = JsonConverters.fromJson(json['SuggesterContact'],'ContactSummaryModel',context!); AllowCancel = json['AllowCancel']; AllowRemove = json['AllowRemove']; return this; } Map toJson() => { 'ConnectionId': ConnectionId, 'ConnectionRequestId': ConnectionRequestId, 'Contact': JsonConverters.toJson(Contact,'ContactSummaryModel',context!), 'ContactRoleId': ContactRoleId, 'ContactRoleName': ContactRoleName, 'RequestorContactId': RequestorContactId, 'RequestorContactName': RequestorContactName, 'RequestorRoleId': RequestorRoleId, 'RequestorRoleName': RequestorRoleName, 'PrimaryRoleName': PrimaryRoleName, 'ConnectionStatusId': ConnectionStatusId, 'ConnectionStatusName': ConnectionStatusName, 'IsConnectionRequest': IsConnectionRequest, 'IsIncoming': IsIncoming, 'FromDate': JsonConverters.toJson(FromDate,'DateTime',context!), 'SuggesterContact': JsonConverters.toJson(SuggesterContact,'ContactSummaryModel',context!), 'AllowCancel': AllowCancel, 'AllowRemove': AllowRemove }; getTypeName() => "ContactConnectionModel"; TypeContext? context = _ctx; } // @ApiResponse(Description="Connections to the specified contact for the requestor contact") class GetConnectionsToContactResponse implements IConvertible { List? Connections; int? TotalConnections; ResponseStatus? ResponseStatus; GetConnectionsToContactResponse({this.Connections,this.TotalConnections,this.ResponseStatus}); GetConnectionsToContactResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Connections = JsonConverters.fromJson(json['Connections'],'List',context!); TotalConnections = json['TotalConnections']; ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Connections': JsonConverters.toJson(Connections,'List',context!), 'TotalConnections': TotalConnections, 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "GetConnectionsToContactResponse"; TypeContext? context = _ctx; } /** * Get connections to the specified contact for the requestor contact */ // @Route("/contacts/{ContactId}/connections") // @Api(Description="Get connections to the specified contact for the requestor contact") class GetConnectionsToContact extends PagedModel implements IReturn, IConvertible, IGet { /** * Contact Id to get connections for */ // @ApiMember(DataType="Guid", Description="Contact Id to get connections for", IsRequired=true, Name="ContactId") String? ContactId; /** * Type of the contact to get connections for (i.e. Real/ virtual Person/ Organisation) */ // @ApiMember(DataType="Guid", Description="Type of the contact to get connections for (i.e. Real/ virtual Person/ Organisation)", IsRequired=true, Name="ContactTypeId") String? ContactTypeId; /** * Contact Id requesting the details - Current user or licensee */ // @ApiMember(DataType="Guid", Description="Contact Id requesting the details - Current user or licensee", IsRequired=true, Name="RequestorContactId") String? RequestorContactId; /** * Return all connections or paged results? */ // @ApiMember(Description="Return all connections or paged results?", Name="IsPagedMode") bool? IsPagedMode; /** * Option to return removed connections */ // @ApiMember(Description="Option to return removed connections", Name="IncludeRemoved") bool? IncludeRemoved; GetConnectionsToContact({this.ContactId,this.ContactTypeId,this.RequestorContactId,this.IsPagedMode,this.IncludeRemoved}); GetConnectionsToContact.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ContactId = json['ContactId']; ContactTypeId = json['ContactTypeId']; RequestorContactId = json['RequestorContactId']; IsPagedMode = json['IsPagedMode']; IncludeRemoved = json['IncludeRemoved']; return this; } Map toJson() => super.toJson()..addAll({ 'ContactId': ContactId, 'ContactTypeId': ContactTypeId, 'RequestorContactId': RequestorContactId, 'IsPagedMode': IsPagedMode, 'IncludeRemoved': IncludeRemoved }); createResponse() => GetConnectionsToContactResponse(); getResponseTypeName() => "GetConnectionsToContactResponse"; getTypeName() => "GetConnectionsToContact"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: { 'SortOrder': TypeInfo(TypeOf.Enum, enumValues:SortOrder.values), 'PagedModel': TypeInfo(TypeOf.Class, create:() => PagedModel()), 'ContactSummaryModel': TypeInfo(TypeOf.Class, create:() => ContactSummaryModel()), 'ContactConnectionModel': TypeInfo(TypeOf.Class, create:() => ContactConnectionModel()), 'GetConnectionsToContactResponse': TypeInfo(TypeOf.Class, create:() => GetConnectionsToContactResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetConnectionsToContact': TypeInfo(TypeOf.Class, create:() => GetConnectionsToContact()), });