| All Verbs | /api/contactrolegroups/{LicenseeId} |
|---|
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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PageNumber = json['PageNumber'];
PageSize = json['PageSize'];
SortIndex = json['SortIndex'];
SortOrder = JsonConverters.fromJson(json['SortOrder'],'SortOrder',context!);
return this;
}
Map<String, dynamic> toJson() => {
'PageNumber': PageNumber,
'PageSize': PageSize,
'SortIndex': SortIndex,
'SortOrder': JsonConverters.toJson(SortOrder,'SortOrder',context!)
};
getTypeName() => "PagedModel";
TypeContext? context = _ctx;
}
class RoleGroupRolesModel implements IConvertible
{
/**
* Role Id
*/
// @ApiMember(DataType="Guid", Description="Role Id", Name="RoleId")
String? RoleId;
/**
* Role Name
*/
// @ApiMember(DataType="string", Description="Role Name", Name="RoleName")
String? RoleName;
/**
* Role Group Id
*/
// @ApiMember(DataType="Guid", Description="Role Group Id", Name="RoleGroupId")
String? RoleGroupId;
/**
* Role Group Name
*/
// @ApiMember(DataType="string", Description="Role Group Name", Name="RoleGroupName")
String? RoleGroupName;
/**
* Role Group Role Id
*/
// @ApiMember(DataType="Guid", Description="Role Group Role Id", Name="RoleGroupRoleId")
String? RoleGroupRoleId;
/**
* 'A' (Active), 'I' (Inactive)
*/
// @ApiMember(DataType="string", Description="'A' (Active), 'I' (Inactive)", Name="RecordStatus")
String? RecordStatus;
/**
* Owner Contact Id
*/
// @ApiMember(DataType="Guid", Description="Owner Contact Id", Name="OwnerContactId")
String? OwnerContactId;
RoleGroupRolesModel({this.RoleId,this.RoleName,this.RoleGroupId,this.RoleGroupName,this.RoleGroupRoleId,this.RecordStatus,this.OwnerContactId});
RoleGroupRolesModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RoleId = json['RoleId'];
RoleName = json['RoleName'];
RoleGroupId = json['RoleGroupId'];
RoleGroupName = json['RoleGroupName'];
RoleGroupRoleId = json['RoleGroupRoleId'];
RecordStatus = json['RecordStatus'];
OwnerContactId = json['OwnerContactId'];
return this;
}
Map<String, dynamic> toJson() => {
'RoleId': RoleId,
'RoleName': RoleName,
'RoleGroupId': RoleGroupId,
'RoleGroupName': RoleGroupName,
'RoleGroupRoleId': RoleGroupRoleId,
'RecordStatus': RecordStatus,
'OwnerContactId': OwnerContactId
};
getTypeName() => "RoleGroupRolesModel";
TypeContext? context = _ctx;
}
class RoleGroupModel implements IConvertible
{
/**
* Role Group Id
*/
// @ApiMember(DataType="Guid", Description="Role Group Id", Name="RoleGroupId")
String? RoleGroupId;
/**
* Role Group Name
*/
// @ApiMember(DataType="string", Description="Role Group Name", Name="Name")
String? Name;
/**
* Owner Contact Id
*/
// @ApiMember(DataType="Guid", Description="Owner Contact Id", Name="OwnerContactId")
String? OwnerContactId;
/**
* Number of Roles
*/
// @ApiMember(DataType="int", Description="Number of Roles", Name="NumberOfRoles")
int? NumberOfRoles;
/**
* Roles belonging to the Role Group
*/
// @ApiMember(DataType="List", Description="Roles belonging to the Role Group", Name="Roles")
List<RoleGroupRolesModel>? Roles;
/**
* 'A' (Active), 'I' (Inactive)
*/
// @ApiMember(DataType="string", Description="'A' (Active), 'I' (Inactive)", Name="RecordStatus")
String? RecordStatus;
/**
* True if Licensee-owned, allowing editing, deleting, archiving
*/
// @ApiMember(DataType="bool", Description="True if Licensee-owned, allowing editing, deleting, archiving", Name="AllowEdit", ParameterType="query")
bool? AllowEdit;
RoleGroupModel({this.RoleGroupId,this.Name,this.OwnerContactId,this.NumberOfRoles,this.Roles,this.RecordStatus,this.AllowEdit});
RoleGroupModel.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RoleGroupId = json['RoleGroupId'];
Name = json['Name'];
OwnerContactId = json['OwnerContactId'];
NumberOfRoles = json['NumberOfRoles'];
Roles = JsonConverters.fromJson(json['Roles'],'List<RoleGroupRolesModel>',context!);
RecordStatus = json['RecordStatus'];
AllowEdit = json['AllowEdit'];
return this;
}
Map<String, dynamic> toJson() => {
'RoleGroupId': RoleGroupId,
'Name': Name,
'OwnerContactId': OwnerContactId,
'NumberOfRoles': NumberOfRoles,
'Roles': JsonConverters.toJson(Roles,'List<RoleGroupRolesModel>',context!),
'RecordStatus': RecordStatus,
'AllowEdit': AllowEdit
};
getTypeName() => "RoleGroupModel";
TypeContext? context = _ctx;
}
// @ApiResponse(Description="List of role groups")
class GetContactRoleGroupsResponse implements IConvertible
{
List<RoleGroupModel>? RoleGroups;
int? TotalRoleGroups;
ResponseStatus? ResponseStatus;
GetContactRoleGroupsResponse({this.RoleGroups,this.TotalRoleGroups,this.ResponseStatus});
GetContactRoleGroupsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RoleGroups = JsonConverters.fromJson(json['RoleGroups'],'List<RoleGroupModel>',context!);
TotalRoleGroups = json['TotalRoleGroups'];
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'RoleGroups': JsonConverters.toJson(RoleGroups,'List<RoleGroupModel>',context!),
'TotalRoleGroups': TotalRoleGroups,
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetContactRoleGroupsResponse";
TypeContext? context = _ctx;
}
/**
* Get role groups for the given criteria
*/
// @Api(Description="Get role groups for the given criteria")
class GetContactRoleGroups extends PagedModel implements IConvertible
{
/**
* Get contact role groups for the specified licensee
*/
// @ApiMember(DataType="Guid", Description="Get contact role groups for the specified licensee", IsRequired=true, Name="LicenseeId", ParameterType="query")
String? LicenseeId;
/**
* Role Group Name
*/
// @ApiMember(DataType="string", Description="Role Group Name", Name="Name", ParameterType="query")
String? Name;
/**
* Active/Archived filter
*/
// @ApiMember(DataType="string", Description="Active/Archived filter", Name="RecordStatus", ParameterType="query")
String? RecordStatus;
GetContactRoleGroups({this.LicenseeId,this.Name,this.RecordStatus});
GetContactRoleGroups.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
LicenseeId = json['LicenseeId'];
Name = json['Name'];
RecordStatus = json['RecordStatus'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'LicenseeId': LicenseeId,
'Name': Name,
'RecordStatus': RecordStatus
});
getTypeName() => "GetContactRoleGroups";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
'SortOrder': TypeInfo(TypeOf.Enum, enumValues:SortOrder.values),
'PagedModel': TypeInfo(TypeOf.Class, create:() => PagedModel()),
'RoleGroupRolesModel': TypeInfo(TypeOf.Class, create:() => RoleGroupRolesModel()),
'RoleGroupModel': TypeInfo(TypeOf.Class, create:() => RoleGroupModel()),
'List<RoleGroupRolesModel>': TypeInfo(TypeOf.Class, create:() => <RoleGroupRolesModel>[]),
'GetContactRoleGroupsResponse': TypeInfo(TypeOf.Class, create:() => GetContactRoleGroupsResponse()),
'List<RoleGroupModel>': TypeInfo(TypeOf.Class, create:() => <RoleGroupModel>[]),
'GetContactRoleGroups': TypeInfo(TypeOf.Class, create:() => GetContactRoleGroups()),
});
Dart GetContactRoleGroups DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/contactrolegroups/{LicenseeId} HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetContactRoleGroups xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
<PageNumber xmlns="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">0</PageNumber>
<PageSize xmlns="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">0</PageSize>
<SortIndex xmlns="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">0</SortIndex>
<SortOrder xmlns="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">Ascending</SortOrder>
<LicenseeId>00000000-0000-0000-0000-000000000000</LicenseeId>
<Name>String</Name>
<RecordStatus>String</RecordStatus>
</GetContactRoleGroups>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<GetContactRoleGroupsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<RoleGroups xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">
<d2p1:RoleGroupModel>
<d2p1:AllowEdit>false</d2p1:AllowEdit>
<d2p1:Name>String</d2p1:Name>
<d2p1:NumberOfRoles>0</d2p1:NumberOfRoles>
<d2p1:OwnerContactId>00000000-0000-0000-0000-000000000000</d2p1:OwnerContactId>
<d2p1:RecordStatus>String</d2p1:RecordStatus>
<d2p1:RoleGroupId>00000000-0000-0000-0000-000000000000</d2p1:RoleGroupId>
<d2p1:Roles>
<d2p1:RoleGroupRolesModel>
<d2p1:OwnerContactId>00000000-0000-0000-0000-000000000000</d2p1:OwnerContactId>
<d2p1:RecordStatus>String</d2p1:RecordStatus>
<d2p1:RoleGroupId>00000000-0000-0000-0000-000000000000</d2p1:RoleGroupId>
<d2p1:RoleGroupName>String</d2p1:RoleGroupName>
<d2p1:RoleGroupRoleId>00000000-0000-0000-0000-000000000000</d2p1:RoleGroupRoleId>
<d2p1:RoleId>00000000-0000-0000-0000-000000000000</d2p1:RoleId>
<d2p1:RoleName>String</d2p1:RoleName>
</d2p1:RoleGroupRolesModel>
</d2p1:Roles>
</d2p1:RoleGroupModel>
</RoleGroups>
<TotalRoleGroups>0</TotalRoleGroups>
</GetContactRoleGroupsResponse>