Trendsic Platform Service

<back to all web services

SearchUsers

The following routes are available for this service:
GET/users/search
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 SearchUsersResponse implements IConvertible
{
    List<UserSummary>? Results = [];
    int? Page;
    int? PageSize;
    int? Total;
    ResponseStatus? ResponseStatus;

    SearchUsersResponse({this.Results,this.Page,this.PageSize,this.Total,this.ResponseStatus});
    SearchUsersResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Results = JsonConverters.fromJson(json['Results'],'List<UserSummary>',context!);
        Page = json['Page'];
        PageSize = json['PageSize'];
        Total = json['Total'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Results': JsonConverters.toJson(Results,'List<UserSummary>',context!),
        'Page': Page,
        'PageSize': PageSize,
        'Total': Total,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

class SearchUsers implements IConvertible
{
    String? Q;
    int? Page;
    int? PageSize;

    SearchUsers({this.Q,this.Page,this.PageSize});
    SearchUsers.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Q = json['Q'];
        Page = json['Page'];
        PageSize = json['PageSize'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Q': Q,
        'Page': Page,
        'PageSize': PageSize
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'UserSummary': TypeInfo(TypeOf.Class, create:() => UserSummary()),
    'SearchUsersResponse': TypeInfo(TypeOf.Class, create:() => SearchUsersResponse()),
    'List<UserSummary>': TypeInfo(TypeOf.Class, create:() => <UserSummary>[]),
    'SearchUsers': TypeInfo(TypeOf.Class, create:() => SearchUsers()),
});

Dart SearchUsers DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /users/search HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Results":[{"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"}],"Page":0,"PageSize":0,"Total":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}