| POST | /customer/{brand}/{elevateCustomerId}/grantElevateConsent | Update Elevate customer consent to 'Approved' | Currently the API sets Elevate customer consent only to 'Approved' status |
|---|
import 'package:servicestack/servicestack.dart';
class GrantElevateConsentResponse implements IConvertible
{
/**
* Salesforce Standard ID
*/
// @ApiMember(Description="Salesforce Standard ID", IsRequired=true)
String? salesforceStandardId;
GrantElevateConsentResponse({this.salesforceStandardId});
GrantElevateConsentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
salesforceStandardId = json['salesforceStandardId'];
return this;
}
Map<String, dynamic> toJson() => {
'salesforceStandardId': salesforceStandardId
};
getTypeName() => "GrantElevateConsentResponse";
TypeContext? context = _ctx;
}
class GrantElevateConsent implements IConvertible
{
/**
* Elevate customer ID
*/
// @ApiMember(Description="Elevate customer ID")
String? elevateCustomerId;
/**
* POS Legacy
*/
// @ApiMember(Description="POS Legacy", IsRequired=true)
String? posCode;
/**
* Brand e.g. CAR, MTB
*/
// @ApiMember(Description="Brand e.g. CAR, MTB", IsRequired=true)
String? brand;
/**
* Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456. Email or full phone required
*/
// @ApiMember(Description="Phone e.g. cn: 13888889999, jp: 352858088, kr: 023123456. Email or full phone required")
String? phone;
/**
* Prefix Country Id e.g. it, fr, az. Email or full phone required
*/
// @ApiMember(Description="Prefix Country Id e.g. it, fr, az. Email or full phone required")
String? phoneCountryPrefix;
/**
* Customer email. Email or full phone required
*/
// @ApiMember(Description="Customer email. Email or full phone required")
String? email;
GrantElevateConsent({this.elevateCustomerId,this.posCode,this.brand,this.phone,this.phoneCountryPrefix,this.email});
GrantElevateConsent.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
elevateCustomerId = json['elevateCustomerId'];
posCode = json['posCode'];
brand = json['brand'];
phone = json['phone'];
phoneCountryPrefix = json['phoneCountryPrefix'];
email = json['email'];
return this;
}
Map<String, dynamic> toJson() => {
'elevateCustomerId': elevateCustomerId,
'posCode': posCode,
'brand': brand,
'phone': phone,
'phoneCountryPrefix': phoneCountryPrefix,
'email': email
};
getTypeName() => "GrantElevateConsent";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
'GrantElevateConsentResponse': TypeInfo(TypeOf.Class, create:() => GrantElevateConsentResponse()),
'GrantElevateConsent': TypeInfo(TypeOf.Class, create:() => GrantElevateConsent()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /customer/{brand}/{elevateCustomerId}/grantElevateConsent HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
elevateCustomerId: String,
posCode: String,
brand: String,
phone: String,
phoneCountryPrefix: String,
email: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
salesforceStandardId: String
}