| PATCH | /customer/{boosterCustomerId}/updateConsents | Update customer consents | Update customer consents |
|---|
import 'package:servicestack/servicestack.dart';
class UpdateConsents implements IConvertible
{
/**
* Booster customer Id
*/
// @ApiMember(Description="Booster customer Id")
int? boosterCustomerId;
/**
* 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;
/**
* Provide 'true' if you want to be contacted at all. Leave empty or 'false' if you do not - if chosen false, all contactBy* will be set to false also
*/
// @ApiMember(Description="Provide 'true' if you want to be contacted at all. Leave empty or 'false' if you do not - if chosen false, all contactBy* will be set to false also")
bool? privacyAcceptance;
/**
* Provide 'true' if you allow your data to be stored abroad. Leave empty or 'false' if you do not.
*/
// @ApiMember(Description="Provide 'true' if you allow your data to be stored abroad. Leave empty or 'false' if you do not.")
bool? allowStoreDataAbroad;
UpdateConsents({this.boosterCustomerId,this.contactByEmailFlag,this.contactByMailFlag,this.contactByPhoneFlag,this.contactBySMSFlag,this.contactBySocialMediaFlag,this.privacyAcceptance,this.allowStoreDataAbroad});
UpdateConsents.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
boosterCustomerId = json['boosterCustomerId'];
contactByEmailFlag = json['contactByEmailFlag'];
contactByMailFlag = json['contactByMailFlag'];
contactByPhoneFlag = json['contactByPhoneFlag'];
contactBySMSFlag = json['contactBySMSFlag'];
contactBySocialMediaFlag = json['contactBySocialMediaFlag'];
privacyAcceptance = json['privacyAcceptance'];
allowStoreDataAbroad = json['allowStoreDataAbroad'];
return this;
}
Map<String, dynamic> toJson() => {
'boosterCustomerId': boosterCustomerId,
'contactByEmailFlag': contactByEmailFlag,
'contactByMailFlag': contactByMailFlag,
'contactByPhoneFlag': contactByPhoneFlag,
'contactBySMSFlag': contactBySMSFlag,
'contactBySocialMediaFlag': contactBySocialMediaFlag,
'privacyAcceptance': privacyAcceptance,
'allowStoreDataAbroad': allowStoreDataAbroad
};
getTypeName() => "UpdateConsents";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
'UpdateConsents': TypeInfo(TypeOf.Class, create:() => UpdateConsents()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PATCH /customer/{boosterCustomerId}/updateConsents HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateConsents xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.CRM.ServiceModel">
<allowStoreDataAbroad>false</allowStoreDataAbroad>
<boosterCustomerId>0</boosterCustomerId>
<contactByEmailFlag>false</contactByEmailFlag>
<contactByMailFlag>false</contactByMailFlag>
<contactByPhoneFlag>false</contactByPhoneFlag>
<contactBySMSFlag>false</contactBySMSFlag>
<contactBySocialMediaFlag>false</contactBySocialMediaFlag>
<privacyAcceptance>false</privacyAcceptance>
</UpdateConsents>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <z:anyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/" />