Booster.Microservices

<back to all web services

EditCustomerRequest

Requires Authentication
The following routes are available for this service:
POST/warranty/v1/editCustomer
import 'package:servicestack/servicestack.dart';

class BaseRequest<TResponse> implements IRequest, IConvertible
{
    String? sid;
    String? app;
    String? _os;
    String? _appVersion;
    String? _searchMethod;

    BaseRequest({this.sid,this.app,this._os,this._appVersion,this._searchMethod});
    BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        sid = json['sid'];
        app = json['app'];
        _os = json['_os'];
        _appVersion = json['_appVersion'];
        _searchMethod = json['_searchMethod'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'sid': sid,
        'app': app,
        '_os': _os,
        '_appVersion': _appVersion,
        '_searchMethod': _searchMethod
    };

    getTypeName() => "BaseRequest<$TResponse>";
    TypeContext? context = _ctx;
}

class BaseResponse implements IRespose, IConvertible
{
    String? _xmlns;
    String? _type;
    String? _source;
    String? _tstamp;
    String? _user;
    String? _env;
    String? _uri;
    String? _query;

    BaseResponse({this._xmlns,this._type,this._source,this._tstamp,this._user,this._env,this._uri,this._query});
    BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        _xmlns = json['_xmlns'];
        _type = json['_type'];
        _source = json['_source'];
        _tstamp = json['_tstamp'];
        _user = json['_user'];
        _env = json['_env'];
        _uri = json['_uri'];
        _query = json['_query'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        '_xmlns': _xmlns,
        '_type': _type,
        '_source': _source,
        '_tstamp': _tstamp,
        '_user': _user,
        '_env': _env,
        '_uri': _uri,
        '_query': _query
    };

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

class EditCustomerResponse extends BaseResponse implements IConvertible
{
    EditCustomerResponse();
    EditCustomerResponse.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "EditCustomerResponse";
    TypeContext? context = _ctx;
}

class EditCustomerRequest extends BaseRequest<EditCustomerResponse> implements IConvertible
{
    String? customerId;
    String? personId;
    String? addressId;
    String? phoneId;
    String? emailId;
    String? cardId;
    String? customerRef;
    int? title;
    String? firstName;
    String? lastName;
    String? firstNameNotLatin;
    String? lastNameNotLatin;
    DateTime? birthday;
    DateTime? weddingDate;
    String? email;
    bool? canBeContacted;
    String? language;
    String? nameSuffix;
    String? gender;
    String? middleName;
    String? countryId;
    String? phoneCountryId;
    String? prefixCountryId;
    String? phone;
    int? posId;
    String? birthDayEventId;
    String? salePersonId;
    bool? allowStoreDataAbroad;
    bool? tvAllowStoreDataAbroad;
    bool? contactByMail;
    bool? contactByEmail;
    bool? contactByPhone;
    bool? contactBySMS;
    bool? contactBySocialMedia;
    String? street;
    String? houseNumber;
    String? city;
    String? postalCode;
    String? region;
    String? street2;
    String? street3;
    String? street4;
    String? street5;

    EditCustomerRequest({this.customerId,this.personId,this.addressId,this.phoneId,this.emailId,this.cardId,this.customerRef,this.title,this.firstName,this.lastName,this.firstNameNotLatin,this.lastNameNotLatin,this.birthday,this.weddingDate,this.email,this.canBeContacted,this.language,this.nameSuffix,this.gender,this.middleName,this.countryId,this.phoneCountryId,this.prefixCountryId,this.phone,this.posId,this.birthDayEventId,this.salePersonId,this.allowStoreDataAbroad,this.tvAllowStoreDataAbroad,this.contactByMail,this.contactByEmail,this.contactByPhone,this.contactBySMS,this.contactBySocialMedia,this.street,this.houseNumber,this.city,this.postalCode,this.region,this.street2,this.street3,this.street4,this.street5});
    EditCustomerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        customerId = json['customerId'];
        personId = json['personId'];
        addressId = json['addressId'];
        phoneId = json['phoneId'];
        emailId = json['emailId'];
        cardId = json['cardId'];
        customerRef = json['customerRef'];
        title = json['title'];
        firstName = json['firstName'];
        lastName = json['lastName'];
        firstNameNotLatin = json['firstNameNotLatin'];
        lastNameNotLatin = json['lastNameNotLatin'];
        birthday = JsonConverters.fromJson(json['birthday'],'DateTime',context!);
        weddingDate = JsonConverters.fromJson(json['weddingDate'],'DateTime',context!);
        email = json['email'];
        canBeContacted = json['canBeContacted'];
        language = json['language'];
        nameSuffix = json['nameSuffix'];
        gender = json['gender'];
        middleName = json['middleName'];
        countryId = json['countryId'];
        phoneCountryId = json['phoneCountryId'];
        prefixCountryId = json['prefixCountryId'];
        phone = json['phone'];
        posId = json['posId'];
        birthDayEventId = json['birthDayEventId'];
        salePersonId = json['salePersonId'];
        allowStoreDataAbroad = json['allowStoreDataAbroad'];
        tvAllowStoreDataAbroad = json['tvAllowStoreDataAbroad'];
        contactByMail = json['contactByMail'];
        contactByEmail = json['contactByEmail'];
        contactByPhone = json['contactByPhone'];
        contactBySMS = json['contactBySMS'];
        contactBySocialMedia = json['contactBySocialMedia'];
        street = json['street'];
        houseNumber = json['houseNumber'];
        city = json['city'];
        postalCode = json['postalCode'];
        region = json['region'];
        street2 = json['street2'];
        street3 = json['street3'];
        street4 = json['street4'];
        street5 = json['street5'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'customerId': customerId,
        'personId': personId,
        'addressId': addressId,
        'phoneId': phoneId,
        'emailId': emailId,
        'cardId': cardId,
        'customerRef': customerRef,
        'title': title,
        'firstName': firstName,
        'lastName': lastName,
        'firstNameNotLatin': firstNameNotLatin,
        'lastNameNotLatin': lastNameNotLatin,
        'birthday': JsonConverters.toJson(birthday,'DateTime',context!),
        'weddingDate': JsonConverters.toJson(weddingDate,'DateTime',context!),
        'email': email,
        'canBeContacted': canBeContacted,
        'language': language,
        'nameSuffix': nameSuffix,
        'gender': gender,
        'middleName': middleName,
        'countryId': countryId,
        'phoneCountryId': phoneCountryId,
        'prefixCountryId': prefixCountryId,
        'phone': phone,
        'posId': posId,
        'birthDayEventId': birthDayEventId,
        'salePersonId': salePersonId,
        'allowStoreDataAbroad': allowStoreDataAbroad,
        'tvAllowStoreDataAbroad': tvAllowStoreDataAbroad,
        'contactByMail': contactByMail,
        'contactByEmail': contactByEmail,
        'contactByPhone': contactByPhone,
        'contactBySMS': contactBySMS,
        'contactBySocialMedia': contactBySocialMedia,
        'street': street,
        'houseNumber': houseNumber,
        'city': city,
        'postalCode': postalCode,
        'region': region,
        'street2': street2,
        'street3': street3,
        'street4': street4,
        'street5': street5
    });

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

TypeContext _ctx = TypeContext(library: 'qp_microservices_booster.richemont.com', types: <String, TypeInfo> {
    'BaseRequest<TResponse>': TypeInfo(TypeOf.Class, create:() => BaseRequest<TResponse>()),
    'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
    'EditCustomerResponse': TypeInfo(TypeOf.Class, create:() => EditCustomerResponse()),
    'EditCustomerRequest': TypeInfo(TypeOf.Class, create:() => EditCustomerRequest()),
});

Dart EditCustomerRequest DTOs

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

HTTP + OTHER

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

POST /warranty/v1/editCustomer HTTP/1.1 
Host: qp-microservices-booster.richemont.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"customerId":"00000000000000000000000000000000","personId":"00000000000000000000000000000000","addressId":"00000000000000000000000000000000","phoneId":"00000000000000000000000000000000","emailId":"00000000000000000000000000000000","cardId":"String","customerRef":"String","title":0,"firstName":"String","lastName":"String","firstNameNotLatin":"String","lastNameNotLatin":"String","birthday":"\/Date(-62135596800000-0000)\/","weddingDate":"\/Date(-62135596800000-0000)\/","email":"String","canBeContacted":false,"language":"String","nameSuffix":"String","gender":"String","middleName":"String","countryId":"String","phoneCountryId":"String","prefixCountryId":"String","phone":"String","posId":0,"birthDayEventId":"00000000000000000000000000000000","salePersonId":"String","allowStoreDataAbroad":false,"tvAllowStoreDataAbroad":false,"contactByMail":false,"contactByEmail":false,"contactByPhone":false,"contactBySMS":false,"contactBySocialMedia":false,"street":"String","houseNumber":"String","city":"String","postalCode":"String","region":"String","street2":"String","street3":"String","street4":"String","street5":"String","sid":"String","app":"String","_os":"String","_appVersion":"String","_searchMethod":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"_xmlns":"String","_type":"String","_source":"String","_tstamp":"String","_user":"String","_env":"String","_uri":"String","_query":"String"}