TechStacks!

<back to all web services

GetUsersByEmails

User
The following routes are available for this service:
All Verbs/users/by-email
import 'package:servicestack/servicestack.dart';

class UserRef implements IConvertible
{
    int? id;
    String? userName;
    String? email;
    int? refId;
    String? refSource;
    String? refUrn;

    UserRef({this.id,this.userName,this.email,this.refId,this.refSource,this.refUrn});
    UserRef.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        userName = json['userName'];
        email = json['email'];
        refId = json['refId'];
        refSource = json['refSource'];
        refUrn = json['refUrn'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'userName': userName,
        'email': email,
        'refId': refId,
        'refSource': refSource,
        'refUrn': refUrn
    };

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

class GetUsersByEmailsResponse implements IConvertible
{
    List<UserRef>? results;
    ResponseStatus? responseStatus;

    GetUsersByEmailsResponse({this.results,this.responseStatus});
    GetUsersByEmailsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        results = JsonConverters.fromJson(json['results'],'List<UserRef>',context!);
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'results': JsonConverters.toJson(results,'List<UserRef>',context!),
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

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

class GetUsersByEmails implements IGet, IConvertible
{
    List<String>? emails;

    GetUsersByEmails({this.emails});
    GetUsersByEmails.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'emails': JsonConverters.toJson(emails,'List<String>',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'techstacks.io', types: <String, TypeInfo> {
    'UserRef': TypeInfo(TypeOf.Class, create:() => UserRef()),
    'GetUsersByEmailsResponse': TypeInfo(TypeOf.Class, create:() => GetUsersByEmailsResponse()),
    'List<UserRef>': TypeInfo(TypeOf.Class, create:() => <UserRef>[]),
    'GetUsersByEmails': TypeInfo(TypeOf.Class, create:() => GetUsersByEmails()),
});

Dart GetUsersByEmails 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 /users/by-email HTTP/1.1 
Host: techstacks.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

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

{
	results: 
	[
		{
			id: 0,
			userName: String,
			email: String,
			refId: 0,
			refSource: String,
			refUrn: String
		}
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}