efun.id.api

<back to all web services

UserUpdateProfileRequest

Requires Authentication
The following routes are available for this service:
POST/api/v1/users/update-profile
import 'package:servicestack/servicestack.dart';

class UserUpdateProfileRequest implements IConvertible
{
    String? fullName;
    String? phone;
    DateTime? dob;
    String? address;
    int? gender;
    String? job;
    String? country;
    String? twoFaCode;

    UserUpdateProfileRequest({this.fullName,this.phone,this.dob,this.address,this.gender,this.job,this.country,this.twoFaCode});
    UserUpdateProfileRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        fullName = json['fullName'];
        phone = json['phone'];
        dob = JsonConverters.fromJson(json['dob'],'DateTime',context!);
        address = json['address'];
        gender = json['gender'];
        job = json['job'];
        country = json['country'];
        twoFaCode = json['twoFaCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'fullName': fullName,
        'phone': phone,
        'dob': JsonConverters.toJson(dob,'DateTime',context!),
        'address': address,
        'gender': gender,
        'job': job,
        'country': country,
        'twoFaCode': twoFaCode
    };

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

class BannerListResponse implements IConvertible
{
    int? id;
    String? title;
    String? image;
    String? url;
    bool? publish;
    DateTime? publishDate;
    int? orderIndex;

    BannerListResponse({this.id,this.title,this.image,this.url,this.publish,this.publishDate,this.orderIndex});
    BannerListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        title = json['title'];
        image = json['image'];
        url = json['url'];
        publish = json['publish'];
        publishDate = JsonConverters.fromJson(json['publishDate'],'DateTime',context!);
        orderIndex = json['orderIndex'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'title': title,
        'image': image,
        'url': url,
        'publish': publish,
        'publishDate': JsonConverters.toJson(publishDate,'DateTime',context!),
        'orderIndex': orderIndex
    };

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

class BaseResponse<List> implements IResponseRequest, IConvertible
{
    int? code;
    String? message;
    List<BannerListResponse>? data;

    BaseResponse({this.code,this.message,this.data});
    BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

    getTypeName() => "BaseResponse<$List`1>";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'efun_id_api_sandbox.efun.vn', types: <String, TypeInfo> {
    'UserUpdateProfileRequest': TypeInfo(TypeOf.Class, create:() => UserUpdateProfileRequest()),
    'BannerListResponse': TypeInfo(TypeOf.Class, create:() => BannerListResponse()),
    'BaseResponse<List>': TypeInfo(TypeOf.Class, create:() => BaseResponse<List>()),
    'List<BannerListResponse>': TypeInfo(TypeOf.Class, create:() => <BannerListResponse>[]),
});

Dart UserUpdateProfileRequest 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 /api/v1/users/update-profile HTTP/1.1 
Host: efun-id-api-sandbox.efun.vn 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"fullName":"String","phone":"String","dob":"0001-01-01T00:00:00.0000000+07:06","address":"String","gender":0,"job":"String","country":"String","twoFaCode":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"code":0,"message":"String","data":{"id":0,"userName":"String","fullName":"String","money":0,"moneyLock":0,"totalMoney":0,"vipPoint":0,"email":"String","isActiveEmail":false,"phone":"String","isActivePhone":false,"address":"String","idNumber":"String","gender":0,"job":"String","country":"String","idRegDate":"0001-01-01T00:00:00.0000000+07:06","idAddressProvide":"String","dob":"0001-01-01T00:00:00.0000000+07:06","useTwoFA":false,"twoFAStatus":0,"securityPercent":0,"status":0,"settings":{"String":false}}}