BokaMera.API.Host

<back to all web services

CreateUser

The following routes are available for this service:
POST/usersCreate userCreates a new user account and customer profile.
import 'package:servicestack/servicestack.dart';

class CreateUserResponse implements IConvertible
{
    dynamic? ResponseStatus;
    String? Id;
    String? UserId;
    String? Email;
    String? Firstname;
    String? Lastname;
    String? Phone;
    DateTime? CreatedDate;

    CreateUserResponse({this.ResponseStatus,this.Id,this.UserId,this.Email,this.Firstname,this.Lastname,this.Phone,this.CreatedDate});
    CreateUserResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'dynamic',context!);
        Id = json['Id'];
        UserId = json['UserId'];
        Email = json['Email'];
        Firstname = json['Firstname'];
        Lastname = json['Lastname'];
        Phone = json['Phone'];
        CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'dynamic',context!),
        'Id': Id,
        'UserId': UserId,
        'Email': Email,
        'Firstname': Firstname,
        'Lastname': Lastname,
        'Phone': Phone,
        'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!)
    };

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

// @ApiResponse(Description="Returned if there is a validation error on the input parameters", StatusCode=400)
// @ApiResponse(Description="Returned if the current user is not allowed to perform the action", StatusCode=401)
class CreateUser implements IConvertible
{
    // @ApiMember(IsRequired=true)
    String? Firstname;

    // @ApiMember(IsRequired=true)
    String? Lastname;

    // @ApiMember()
    String? Phone;

    // @ApiMember(IsRequired=true)
    String? Email;

    CreateUser({this.Firstname,this.Lastname,this.Phone,this.Email});
    CreateUser.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Firstname = json['Firstname'];
        Lastname = json['Lastname'];
        Phone = json['Phone'];
        Email = json['Email'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Firstname': Firstname,
        'Lastname': Lastname,
        'Phone': Phone,
        'Email': Email
    };

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

TypeContext _ctx = TypeContext(library: 'testapi.bokamera.se', types: <String, TypeInfo> {
    'CreateUserResponse': TypeInfo(TypeOf.Class, create:() => CreateUserResponse()),
    'CreateUser': TypeInfo(TypeOf.Class, create:() => CreateUser()),
});

Dart CreateUser 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.

POST /users HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"Firstname":"String","Lastname":"String","Phone":"String","Email":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{},"Id":"00000000-0000-0000-0000-000000000000","UserId":"00000000-0000-0000-0000-000000000000","Email":"String","Firstname":"String","Lastname":"String","Phone":"String","CreatedDate":"0001-01-01T00:00:00"}