Betting.WebApi

<back to all web services

SetUserRoles

Requires Authentication
The following routes are available for this service:
POST/cmd/users/setRoles
import 'package:servicestack/servicestack.dart';

class SetUserRoles implements IConvertible
{
    String? id;
    RecordList<String>? roles;

    SetUserRoles({this.id,this.roles});
    SetUserRoles.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        roles = JsonConverters.fromJson(json['roles'],'RecordList<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'roles': JsonConverters.toJson(roles,'RecordList<String>',context!)
    };

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

class RecordList<T> extends ListBase<T> implements IConvertible
{
    final List<T> l = [];
    set length(int newLength) { l.length = newLength; }
    int get length => l.length;
    T operator [](int index) => l[index];
    void operator []=(int index, T value) { l[index] = value; }
    RecordList();
    RecordList.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "RecordList<$T>";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.sbbet.ath.cx', types: <String, TypeInfo> {
    'SetUserRoles': TypeInfo(TypeOf.Class, create:() => SetUserRoles()),
    'RecordList<String>': TypeInfo(TypeOf.Class, create:() => RecordList<String>()),
    'RecordList<T>': TypeInfo(TypeOf.GenericDef,create:() => RecordList()),
});

Dart SetUserRoles 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 /cmd/users/setRoles HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	roles: 
	[
		String
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}