POST | /customer | Create customer | Create CRM customer |
---|
import 'package:servicestack/servicestack.dart';
class Email implements IConvertible
{
/**
* Email
*/
// @ApiMember(Description="Email", IsRequired=true)
String? email;
/**
* Main email
*/
// @ApiMember(Description="Main email", IsRequired=true)
bool? isMainEmail;
Email({this.email,this.isMainEmail});
Email.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
email = json['email'];
isMainEmail = json['isMainEmail'];
return this;
}
Map<String, dynamic> toJson() => {
'email': email,
'isMainEmail': isMainEmail
};
getTypeName() => "Email";
TypeContext? context = _ctx;
}
class Phone implements IConvertible
{
/**
* Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456
*/
// @ApiMember(Description="Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456", IsRequired=true)
String? phone;
/**
* Prefix Country Id e.g. it, fr, az
*/
// @ApiMember(Description="Prefix Country Id e.g. it, fr, az", IsRequired=true)
String? countryPrefix;
/**
* Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'
*/
// @ApiMember(Description="Phone type e.g. 'Home', 'Mobile', 'Work', 'Other', 'Secondary Address'")
String? phoneType;
/**
* Main Phone
*/
// @ApiMember(Description="Main Phone", IsRequired=true)
bool? isMainPhone;
Phone({this.phone,this.countryPrefix,this.phoneType,this.isMainPhone});
Phone.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
phone = json['phone'];
countryPrefix = json['countryPrefix'];
phoneType = json['phoneType'];
isMainPhone = json['isMainPhone'];
return this;
}
Map<String, dynamic> toJson() => {
'phone': phone,
'countryPrefix': countryPrefix,
'phoneType': phoneType,
'isMainPhone': isMainPhone
};
getTypeName() => "Phone";
TypeContext? context = _ctx;
}
class Address implements IConvertible
{
/**
* Address type e.g. Home, Office, Shipping
*/
// @ApiMember(Description="Address type e.g. Home, Office, Shipping", IsRequired=true)
String? addressType;
/**
* Country Id e.g. it, cn, az, gb, de
*/
// @ApiMember(Description="Country Id e.g. it, cn, az, gb, de", IsRequired=true)
String? countryId;
/**
* House Number
*/
// @ApiMember(Description="House Number")
String? houseNumber;
/**
* Region/State
*/
// @ApiMember(Description="Region/State")
String? stateId;
/**
* City Name
*/
// @ApiMember(Description="City Name")
String? city;
/**
* Postal Code
*/
// @ApiMember(Description="Postal Code")
String? zipCode;
/**
* Street Name and Number
*/
// @ApiMember(Description="Street Name and Number")
String? street;
/**
* Street 2
*/
// @ApiMember(Description="Street 2")
String? street2;
/**
* Street 3
*/
// @ApiMember(Description="Street 3")
String? street3;
/**
* Street 4
*/
// @ApiMember(Description="Street 4")
String? street4;
/**
* Street 5
*/
// @ApiMember(Description="Street 5")
String? street5;
/**
* Main Address
*/
// @ApiMember(Description="Main Address", IsRequired=true)
bool? isMainAddress;
/**
* Post Office Box
*/
// @ApiMember(Description="Post Office Box")
String? poBox;
/**
* Additional Information
*/
// @ApiMember(Description="Additional Information")
String? additionalInformation;
Address({this.addressType,this.countryId,this.houseNumber,this.stateId,this.city,this.zipCode,this.street,this.street2,this.street3,this.street4,this.street5,this.isMainAddress,this.poBox,this.additionalInformation});
Address.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
addressType = json['addressType'];
countryId = json['countryId'];
houseNumber = json['houseNumber'];
stateId = json['stateId'];
city = json['city'];
zipCode = json['zipCode'];
street = json['street'];
street2 = json['street2'];
street3 = json['street3'];
street4 = json['street4'];
street5 = json['street5'];
isMainAddress = json['isMainAddress'];
poBox = json['poBox'];
additionalInformation = json['additionalInformation'];
return this;
}
Map<String, dynamic> toJson() => {
'addressType': addressType,
'countryId': countryId,
'houseNumber': houseNumber,
'stateId': stateId,
'city': city,
'zipCode': zipCode,
'street': street,
'street2': street2,
'street3': street3,
'street4': street4,
'street5': street5,
'isMainAddress': isMainAddress,
'poBox': poBox,
'additionalInformation': additionalInformation
};
getTypeName() => "Address";
TypeContext? context = _ctx;
}
class Event implements IConvertible
{
/**
* Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'
*/
// @ApiMember(Description="Event type e.g. 'Birthday', 'Wedding', 'Anniversary', 'Barmitza', 'Other'", IsRequired=true)
String? eventType;
/**
* Event date e.g. '2021-01-20'
*/
// @ApiMember(Description="Event date e.g. '2021-01-20'", IsRequired=true)
DateTime? eventDate;
/**
* Event notes
*/
// @ApiMember(Description="Event notes")
String? eventNotes;
/**
* Event other name
*/
// @ApiMember(Description="Event other name")
String? eventOtherName;
Event({this.eventType,this.eventDate,this.eventNotes,this.eventOtherName});
Event.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
eventType = json['eventType'];
eventDate = JsonConverters.fromJson(json['eventDate'],'DateTime',context!);
eventNotes = json['eventNotes'];
eventOtherName = json['eventOtherName'];
return this;
}
Map<String, dynamic> toJson() => {
'eventType': eventType,
'eventDate': JsonConverters.toJson(eventDate,'DateTime',context!),
'eventNotes': eventNotes,
'eventOtherName': eventOtherName
};
getTypeName() => "Event";
TypeContext? context = _ctx;
}
class Interest implements IConvertible
{
/**
* Interest description
*/
// @ApiMember(Description="Interest description", IsRequired=true)
String? interest;
/**
* SAP Interest ID, e.g. 'CA-1'
*/
// @ApiMember(Description="SAP Interest ID, e.g. 'CA-1'", IsRequired=true)
String? sapInterestId;
/**
* Interest description translation
*/
// @ApiMember(Description="Interest description translation")
String? translation;
Interest({this.interest,this.sapInterestId,this.translation});
Interest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
interest = json['interest'];
sapInterestId = json['sapInterestId'];
translation = json['translation'];
return this;
}
Map<String, dynamic> toJson() => {
'interest': interest,
'sapInterestId': sapInterestId,
'translation': translation
};
getTypeName() => "Interest";
TypeContext? context = _ctx;
}
class Hobby implements IConvertible
{
/**
* Hobby description
*/
// @ApiMember(Description="Hobby description", IsRequired=true)
String? hobby;
/**
* SAP Hobby ID, e.g. 'ART'
*/
// @ApiMember(Description="SAP Hobby ID, e.g. 'ART'", IsRequired=true)
String? sapHobbyId;
/**
* Hobby description translation
*/
// @ApiMember(Description="Hobby description translation")
String? translation;
Hobby({this.hobby,this.sapHobbyId,this.translation});
Hobby.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
hobby = json['hobby'];
sapHobbyId = json['sapHobbyId'];
translation = json['translation'];
return this;
}
Map<String, dynamic> toJson() => {
'hobby': hobby,
'sapHobbyId': sapHobbyId,
'translation': translation
};
getTypeName() => "Hobby";
TypeContext? context = _ctx;
}
class ProductCollection implements IConvertible
{
/**
* Product Collection description
*/
// @ApiMember(Description="Product Collection description", IsRequired=true)
String? productCollection;
/**
* SAP ProductCollection ID, e.g. 'CA-1'
*/
// @ApiMember(Description="SAP ProductCollection ID, e.g. 'CA-1'", IsRequired=true)
String? sapProductCollectionId;
/**
* Product Collection description translation
*/
// @ApiMember(Description="Product Collection description translation", IsRequired=true)
String? translation;
ProductCollection({this.productCollection,this.sapProductCollectionId,this.translation});
ProductCollection.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
productCollection = json['productCollection'];
sapProductCollectionId = json['sapProductCollectionId'];
translation = json['translation'];
return this;
}
Map<String, dynamic> toJson() => {
'productCollection': productCollection,
'sapProductCollectionId': sapProductCollectionId,
'translation': translation
};
getTypeName() => "ProductCollection";
TypeContext? context = _ctx;
}
class Customer implements IConvertible
{
/**
* Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'PRIVATE'
*/
// @ApiMember(Description="Title e.g. 'Mr & Mrs', 'Mr.', 'Mrs.', 'Sama', 'Captain' - Mandatory only when customer type is 'PRIVATE'")
String? title;
/**
* First Name
*/
// @ApiMember(Description="First Name")
String? firstName;
/**
* Last Name - Mandatory only when customer type is 'PRIVATE'
*/
// @ApiMember(Description="Last Name - Mandatory only when customer type is 'PRIVATE'")
String? lastName;
/**
* First Name Not Latin
*/
// @ApiMember(Description="First Name Not Latin")
String? firstNameNotLatin;
/**
* Last Name Not Latin
*/
// @ApiMember(Description="Last Name Not Latin")
String? lastNameNotLatin;
/**
* Middle Name
*/
// @ApiMember(Description="Middle Name")
String? middleName;
/**
* Name Suffix
*/
// @ApiMember(Description="Name Suffix")
String? nameSuffix;
/**
* Can be Contacted by Maison e.g. true or false
*/
// @ApiMember(Description="Can be Contacted by Maison e.g. true or false", IsRequired=true)
bool? canBeContactedByMaison;
/**
* Customer Type e.g. 'PRIVATE' or 'COMPANY'
*/
// @ApiMember(Description="Customer Type e.g. 'PRIVATE' or 'COMPANY'", IsRequired=true)
String? clientType;
/**
* Company Name - Mandatory only when customer type is 'COMPANY'
*/
// @ApiMember(Description="Company Name - Mandatory only when customer type is 'COMPANY'")
String? companyName;
/**
* Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'PRIVATE'
*/
// @ApiMember(Description="Language Id e.g. ita, chi, aze, eng, ger - Mandatory only when customer type is 'PRIVATE'")
String? languageId;
/**
* Gender e.g. M, F - Mandatory only when customer type is 'PRIVATE'
*/
// @ApiMember(Description="Gender e.g. M, F - Mandatory only when customer type is 'PRIVATE'")
String? gender;
/**
* Country Id e.g. it, cn, az, gb, de
*/
// @ApiMember(Description="Country Id e.g. it, cn, az, gb, de", IsRequired=true)
String? countryId;
/**
* Birth Date e.g. '2020-12-30'
*/
// @ApiMember(Description="Birth Date e.g. '2020-12-30'")
DateTime? birthDate;
/**
* Customer reference
*/
// @ApiMember(Description="Customer reference")
String? customerReference;
/**
* POS Code e.g. ES100:102048
*/
// @ApiMember(Description="POS Code e.g. ES100:102048", IsRequired=true)
String? posCode;
/**
* Brand e.g. CAR, MTB
*/
// @ApiMember(Description="Brand e.g. CAR, MTB", IsRequired=true)
String? brand;
/**
* Wedding Date, e.g. '2020-01-18'
*/
// @ApiMember(Description="Wedding Date, e.g. '2020-01-18'")
DateTime? weddingDate;
/**
* Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'
*/
// @ApiMember(Description="Preferred Contact Method e.g. 'Fax', 'Tel', 'EMail', 'Mail', 'Survey'")
String? preferredContactMethod;
/**
* Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted by email. Leave empty or 'false' if you do not.")
bool? contactByEmailFlag;
/**
* Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted by mail. Leave empty or 'false' if you do not.")
bool? contactByMailFlag;
/**
* Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted by phone. Leave empty or 'false' if you do not.")
bool? contactByPhoneFlag;
/**
* Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted by SMS. Leave empty or 'false' if you do not.")
bool? contactBySMSFlag;
/**
* Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted by social media. Leave empty or 'false' if you do not.")
bool? contactBySocialMediaFlag;
/**
* Sale Representative Email e.g. rauf.aliyev@richemont.com
*/
// @ApiMember(Description="Sale Representative Email e.g. rauf.aliyev@richemont.com")
String? saleRepresentativeEmail;
/**
* Consent for allowing Cross Border Data Transfer
*/
// @ApiMember(Description="Consent for allowing Cross Border Data Transfer")
bool? allowStoreDataAbroad;
/**
* Consent for allowing Cross Border Data Transfer For TimeVallée
*/
// @ApiMember(Description="Consent for allowing Cross Border Data Transfer For TimeVallée")
bool? tvAllowStoreDataAbroad;
/**
* Customer emails
*/
// @ApiMember(Description="Customer emails")
List<Email>? emails;
/**
* Customer phones
*/
// @ApiMember(Description="Customer phones")
List<Phone>? phones;
/**
* Customer addresses
*/
// @ApiMember(Description="Customer addresses")
List<Address>? addresses;
/**
* Customer events
*/
// @ApiMember(Description="Customer events")
List<Event>? events;
/**
* Customer interests
*/
// @ApiMember(Description="Customer interests")
List<Interest>? interests;
/**
* Customer hobbies
*/
// @ApiMember(Description="Customer hobbies")
List<Hobby>? hobbies;
/**
* Customer product collections
*/
// @ApiMember(Description="Customer product collections")
List<ProductCollection>? productCollections;
/**
* Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you allow data sharing consent. Leave empty or 'false' if you do not.")
bool? dataSharingConsent;
/**
* Notes
*/
// @ApiMember(Description="Notes")
String? notes;
/**
* Reference Sale Representative Email
*/
// @ApiMember(Description="Reference Sale Representative Email")
String? referenceSaleRepresentativeEmail;
/**
* Registration Date
*/
// @ApiMember(Description="Registration Date")
DateTime? registrationDate;
Customer({this.title,this.firstName,this.lastName,this.firstNameNotLatin,this.lastNameNotLatin,this.middleName,this.nameSuffix,this.canBeContactedByMaison,this.clientType,this.companyName,this.languageId,this.gender,this.countryId,this.birthDate,this.customerReference,this.posCode,this.brand,this.weddingDate,this.preferredContactMethod,this.contactByEmailFlag,this.contactByMailFlag,this.contactByPhoneFlag,this.contactBySMSFlag,this.contactBySocialMediaFlag,this.saleRepresentativeEmail,this.allowStoreDataAbroad,this.tvAllowStoreDataAbroad,this.emails,this.phones,this.addresses,this.events,this.interests,this.hobbies,this.productCollections,this.dataSharingConsent,this.notes,this.referenceSaleRepresentativeEmail,this.registrationDate});
Customer.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
title = json['title'];
firstName = json['firstName'];
lastName = json['lastName'];
firstNameNotLatin = json['firstNameNotLatin'];
lastNameNotLatin = json['lastNameNotLatin'];
middleName = json['middleName'];
nameSuffix = json['nameSuffix'];
canBeContactedByMaison = json['canBeContactedByMaison'];
clientType = json['clientType'];
companyName = json['companyName'];
languageId = json['languageId'];
gender = json['gender'];
countryId = json['countryId'];
birthDate = JsonConverters.fromJson(json['birthDate'],'DateTime',context!);
customerReference = json['customerReference'];
posCode = json['posCode'];
brand = json['brand'];
weddingDate = JsonConverters.fromJson(json['weddingDate'],'DateTime',context!);
preferredContactMethod = json['preferredContactMethod'];
contactByEmailFlag = json['contactByEmailFlag'];
contactByMailFlag = json['contactByMailFlag'];
contactByPhoneFlag = json['contactByPhoneFlag'];
contactBySMSFlag = json['contactBySMSFlag'];
contactBySocialMediaFlag = json['contactBySocialMediaFlag'];
saleRepresentativeEmail = json['saleRepresentativeEmail'];
allowStoreDataAbroad = json['allowStoreDataAbroad'];
tvAllowStoreDataAbroad = json['tvAllowStoreDataAbroad'];
emails = JsonConverters.fromJson(json['emails'],'List<Email>',context!);
phones = JsonConverters.fromJson(json['phones'],'List<Phone>',context!);
addresses = JsonConverters.fromJson(json['addresses'],'List<Address>',context!);
events = JsonConverters.fromJson(json['events'],'List<Event>',context!);
interests = JsonConverters.fromJson(json['interests'],'List<Interest>',context!);
hobbies = JsonConverters.fromJson(json['hobbies'],'List<Hobby>',context!);
productCollections = JsonConverters.fromJson(json['productCollections'],'List<ProductCollection>',context!);
dataSharingConsent = json['dataSharingConsent'];
notes = json['notes'];
referenceSaleRepresentativeEmail = json['referenceSaleRepresentativeEmail'];
registrationDate = JsonConverters.fromJson(json['registrationDate'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'title': title,
'firstName': firstName,
'lastName': lastName,
'firstNameNotLatin': firstNameNotLatin,
'lastNameNotLatin': lastNameNotLatin,
'middleName': middleName,
'nameSuffix': nameSuffix,
'canBeContactedByMaison': canBeContactedByMaison,
'clientType': clientType,
'companyName': companyName,
'languageId': languageId,
'gender': gender,
'countryId': countryId,
'birthDate': JsonConverters.toJson(birthDate,'DateTime',context!),
'customerReference': customerReference,
'posCode': posCode,
'brand': brand,
'weddingDate': JsonConverters.toJson(weddingDate,'DateTime',context!),
'preferredContactMethod': preferredContactMethod,
'contactByEmailFlag': contactByEmailFlag,
'contactByMailFlag': contactByMailFlag,
'contactByPhoneFlag': contactByPhoneFlag,
'contactBySMSFlag': contactBySMSFlag,
'contactBySocialMediaFlag': contactBySocialMediaFlag,
'saleRepresentativeEmail': saleRepresentativeEmail,
'allowStoreDataAbroad': allowStoreDataAbroad,
'tvAllowStoreDataAbroad': tvAllowStoreDataAbroad,
'emails': JsonConverters.toJson(emails,'List<Email>',context!),
'phones': JsonConverters.toJson(phones,'List<Phone>',context!),
'addresses': JsonConverters.toJson(addresses,'List<Address>',context!),
'events': JsonConverters.toJson(events,'List<Event>',context!),
'interests': JsonConverters.toJson(interests,'List<Interest>',context!),
'hobbies': JsonConverters.toJson(hobbies,'List<Hobby>',context!),
'productCollections': JsonConverters.toJson(productCollections,'List<ProductCollection>',context!),
'dataSharingConsent': dataSharingConsent,
'notes': notes,
'referenceSaleRepresentativeEmail': referenceSaleRepresentativeEmail,
'registrationDate': JsonConverters.toJson(registrationDate,'DateTime',context!)
};
getTypeName() => "Customer";
TypeContext? context = _ctx;
}
class CreateCustomerResponse implements IConvertible
{
/**
* Booster Customer ID
*/
// @ApiMember(Description="Booster Customer ID", IsRequired=true)
int? boosterCustomerId;
CreateCustomerResponse({this.boosterCustomerId});
CreateCustomerResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
boosterCustomerId = json['boosterCustomerId'];
return this;
}
Map<String, dynamic> toJson() => {
'boosterCustomerId': boosterCustomerId
};
getTypeName() => "CreateCustomerResponse";
TypeContext? context = _ctx;
}
class CreateCustomer extends Customer implements IConvertible
{
/**
* Privacy policy acceptance for data storage
*/
// @ApiMember(Description="Privacy policy acceptance for data storage", IsRequired=true)
bool? privacyPolicyAcceptanceStorage;
/**
* Privacy policy acceptance of data storage for TimeVallée
*/
// @ApiMember(Description="Privacy policy acceptance of data storage for TimeVallée")
bool? tvPrivacyPolicyAcceptanceStorage;
CreateCustomer({this.privacyPolicyAcceptanceStorage,this.tvPrivacyPolicyAcceptanceStorage});
CreateCustomer.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
privacyPolicyAcceptanceStorage = json['privacyPolicyAcceptanceStorage'];
tvPrivacyPolicyAcceptanceStorage = json['tvPrivacyPolicyAcceptanceStorage'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'privacyPolicyAcceptanceStorage': privacyPolicyAcceptanceStorage,
'tvPrivacyPolicyAcceptanceStorage': tvPrivacyPolicyAcceptanceStorage
});
getTypeName() => "CreateCustomer";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
'Email': TypeInfo(TypeOf.Class, create:() => Email()),
'Phone': TypeInfo(TypeOf.Class, create:() => Phone()),
'Address': TypeInfo(TypeOf.Class, create:() => Address()),
'Event': TypeInfo(TypeOf.Class, create:() => Event()),
'Interest': TypeInfo(TypeOf.Class, create:() => Interest()),
'Hobby': TypeInfo(TypeOf.Class, create:() => Hobby()),
'ProductCollection': TypeInfo(TypeOf.Class, create:() => ProductCollection()),
'Customer': TypeInfo(TypeOf.Class, create:() => Customer()),
'List<Email>': TypeInfo(TypeOf.Class, create:() => <Email>[]),
'List<Phone>': TypeInfo(TypeOf.Class, create:() => <Phone>[]),
'List<Address>': TypeInfo(TypeOf.Class, create:() => <Address>[]),
'List<Event>': TypeInfo(TypeOf.Class, create:() => <Event>[]),
'List<Interest>': TypeInfo(TypeOf.Class, create:() => <Interest>[]),
'List<Hobby>': TypeInfo(TypeOf.Class, create:() => <Hobby>[]),
'List<ProductCollection>': TypeInfo(TypeOf.Class, create:() => <ProductCollection>[]),
'CreateCustomerResponse': TypeInfo(TypeOf.Class, create:() => CreateCustomerResponse()),
'CreateCustomer': TypeInfo(TypeOf.Class, create:() => CreateCustomer()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /customer HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"privacyPolicyAcceptanceStorage":false,"tvPrivacyPolicyAcceptanceStorage":false,"title":"String","firstName":"String","lastName":"String","firstNameNotLatin":"String","lastNameNotLatin":"String","middleName":"String","nameSuffix":"String","canBeContactedByMaison":false,"clientType":"String","companyName":"String","languageId":"String","gender":"String","countryId":"String","birthDate":"\/Date(-62135596800000-0000)\/","customerReference":"String","posCode":"String","brand":"String","weddingDate":"\/Date(-62135596800000-0000)\/","preferredContactMethod":"String","contactByEmailFlag":false,"contactByMailFlag":false,"contactByPhoneFlag":false,"contactBySMSFlag":false,"contactBySocialMediaFlag":false,"saleRepresentativeEmail":"String","allowStoreDataAbroad":false,"tvAllowStoreDataAbroad":false,"emails":[{"email":"String","isMainEmail":false}],"phones":[{"phone":"String","countryPrefix":"String","phoneType":"String","isMainPhone":false}],"addresses":[{"addressType":"String","countryId":"String","houseNumber":"String","stateId":"String","city":"String","zipCode":"String","street":"String","street2":"String","street3":"String","street4":"String","street5":"String","isMainAddress":false,"poBox":"String","additionalInformation":"String"}],"events":[{"eventType":"String","eventDate":"\/Date(-62135596800000-0000)\/","eventNotes":"String","eventOtherName":"String"}],"interests":[{"interest":"String","sapInterestId":"String","translation":"String"}],"hobbies":[{"hobby":"String","sapHobbyId":"String","translation":"String"}],"productCollections":[{"productCollection":"String","sapProductCollectionId":"String","translation":"String"}],"dataSharingConsent":false,"notes":"String","referenceSaleRepresentativeEmail":"String","registrationDate":"\/Date(-62135596800000-0000)\/"}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"boosterCustomerId":0}