| GET | /v1/roles/{RoleId}/users |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class UserSummary implements IConvertible
{
String? UserId;
String? UserName;
String? Email;
DateTime? CreatedUtc;
DateTime? LastActivityUtc;
String? FirstName;
String? LastName;
String? DisplayName;
UserSummary({this.UserId,this.UserName,this.Email,this.CreatedUtc,this.LastActivityUtc,this.FirstName,this.LastName,this.DisplayName});
UserSummary.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
UserId = json['UserId'];
UserName = json['UserName'];
Email = json['Email'];
CreatedUtc = JsonConverters.fromJson(json['CreatedUtc'],'DateTime',context!);
LastActivityUtc = JsonConverters.fromJson(json['LastActivityUtc'],'DateTime',context!);
FirstName = json['FirstName'];
LastName = json['LastName'];
DisplayName = json['DisplayName'];
return this;
}
Map<String, dynamic> toJson() => {
'UserId': UserId,
'UserName': UserName,
'Email': Email,
'CreatedUtc': JsonConverters.toJson(CreatedUtc,'DateTime',context!),
'LastActivityUtc': JsonConverters.toJson(LastActivityUtc,'DateTime',context!),
'FirstName': FirstName,
'LastName': LastName,
'DisplayName': DisplayName
};
getTypeName() => "UserSummary";
TypeContext? context = _ctx;
}
class GetUsersByRoleIdResponse implements IConvertible
{
List<UserSummary>? Users = [];
ResponseStatus? ResponseStatus;
GetUsersByRoleIdResponse({this.Users,this.ResponseStatus});
GetUsersByRoleIdResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Users = JsonConverters.fromJson(json['Users'],'List<UserSummary>',context!);
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Users': JsonConverters.toJson(Users,'List<UserSummary>',context!),
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetUsersByRoleIdResponse";
TypeContext? context = _ctx;
}
class GetUsersByRoleId implements IConvertible
{
int? RoleId;
GetUsersByRoleId({this.RoleId});
GetUsersByRoleId.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RoleId = json['RoleId'];
return this;
}
Map<String, dynamic> toJson() => {
'RoleId': RoleId
};
getTypeName() => "GetUsersByRoleId";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'UserSummary': TypeInfo(TypeOf.Class, create:() => UserSummary()),
'GetUsersByRoleIdResponse': TypeInfo(TypeOf.Class, create:() => GetUsersByRoleIdResponse()),
'List<UserSummary>': TypeInfo(TypeOf.Class, create:() => <UserSummary>[]),
'GetUsersByRoleId': TypeInfo(TypeOf.Class, create:() => GetUsersByRoleId()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/roles/{RoleId}/users HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Users:
[
{
UserId: 00000000000000000000000000000000,
UserName: String,
Email: String,
CreatedUtc: 0001-01-01,
LastActivityUtc: 0001-01-01,
FirstName: String,
LastName: String,
DisplayName: String String
}
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}