| 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 .csv suffix or ?format=csv
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/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Users":[{"UserId":"00000000000000000000000000000000","UserName":"String","Email":"String","CreatedUtc":"0001-01-01T00:00:00.0000000","LastActivityUtc":"0001-01-01T00:00:00.0000000","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"}}}