PUT | /sales/wallet/paymentprofileupdate | Update the personal information of a Payment Profile | Omitting fields or providing `null` will not update that field. Providing an empty or whitespace string will remove the data from the field. To update the account information (Account Number, Last4, Country, etc), create a new Payment Profile. |
---|
import 'package:servicestack/servicestack.dart';
class ApiDtoBase implements IConvertible
{
String? ApiKey;
int? StoreId;
int? ChainId;
ApiDtoBase({this.ApiKey,this.StoreId,this.ChainId});
ApiDtoBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ApiKey = json['ApiKey'];
StoreId = json['StoreId'];
ChainId = json['ChainId'];
return this;
}
Map<String, dynamic> toJson() => {
'ApiKey': ApiKey,
'StoreId': StoreId,
'ChainId': ChainId
};
getTypeName() => "ApiDtoBase";
TypeContext? context = _ctx;
}
class PaymentProfileUpdateRequestDto extends ApiDtoBase implements IConvertible
{
String? AcctToken;
int? ModifiedBy;
int? CcExpMonth;
int? CcExpYear;
String? FullName;
String? PrefixName;
String? FirstName;
String? MiddleName;
String? LastName;
String? SuffixName;
String? Address1;
String? Address2;
String? Urbanization;
String? City;
String? State;
String? PostalCode;
bool? IsDisabled;
bool? ExcludeFromAcctUpdater;
PaymentProfileUpdateRequestDto({this.AcctToken,this.ModifiedBy,this.CcExpMonth,this.CcExpYear,this.FullName,this.PrefixName,this.FirstName,this.MiddleName,this.LastName,this.SuffixName,this.Address1,this.Address2,this.Urbanization,this.City,this.State,this.PostalCode,this.IsDisabled,this.ExcludeFromAcctUpdater});
PaymentProfileUpdateRequestDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
AcctToken = json['AcctToken'];
ModifiedBy = json['ModifiedBy'];
CcExpMonth = json['CcExpMonth'];
CcExpYear = json['CcExpYear'];
FullName = json['FullName'];
PrefixName = json['PrefixName'];
FirstName = json['FirstName'];
MiddleName = json['MiddleName'];
LastName = json['LastName'];
SuffixName = json['SuffixName'];
Address1 = json['Address1'];
Address2 = json['Address2'];
Urbanization = json['Urbanization'];
City = json['City'];
State = json['State'];
PostalCode = json['PostalCode'];
IsDisabled = json['IsDisabled'];
ExcludeFromAcctUpdater = json['ExcludeFromAcctUpdater'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'AcctToken': AcctToken,
'ModifiedBy': ModifiedBy,
'CcExpMonth': CcExpMonth,
'CcExpYear': CcExpYear,
'FullName': FullName,
'PrefixName': PrefixName,
'FirstName': FirstName,
'MiddleName': MiddleName,
'LastName': LastName,
'SuffixName': SuffixName,
'Address1': Address1,
'Address2': Address2,
'Urbanization': Urbanization,
'City': City,
'State': State,
'PostalCode': PostalCode,
'IsDisabled': IsDisabled,
'ExcludeFromAcctUpdater': ExcludeFromAcctUpdater
});
getTypeName() => "PaymentProfileUpdateRequestDto";
TypeContext? context = _ctx;
}
class ApiResponseBase implements IConvertible
{
bool? Success;
String? Message;
ApiResponseBase({this.Success,this.Message});
ApiResponseBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Success = json['Success'];
Message = json['Message'];
return this;
}
Map<String, dynamic> toJson() => {
'Success': Success,
'Message': Message
};
getTypeName() => "ApiResponseBase";
TypeContext? context = _ctx;
}
class PaymentProfileUpdateResponseDto extends ApiResponseBase implements IConvertible
{
PaymentProfileUpdateResponseDto();
PaymentProfileUpdateResponseDto.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() => "PaymentProfileUpdateResponseDto";
TypeContext? context = _ctx;
}
class PaymentProfileUpdateResponse extends PaymentProfileUpdateResponseDto implements IConvertible
{
PaymentProfileUpdateResponse();
PaymentProfileUpdateResponse.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() => "PaymentProfileUpdateResponse";
TypeContext? context = _ctx;
}
class PaymentProfileUpdateEndpoint extends PaymentProfileUpdateRequestDto implements IConvertible
{
/**
* Grants access to resources
*/
// @ApiMember(Description="Grants access to resources", IsRequired=true)
String? ApiKey;
/**
* AcctToken to update
*/
// @ApiMember(Description="AcctToken to update", IsRequired=true)
String? AcctToken;
/**
* UserId that is updating profile
*/
// @ApiMember(Description="UserId that is updating profile", IsRequired=true)
int? ModifiedBy;
/**
* Expiry Month: 1 = January, 12 = December
*/
// @ApiMember(Description="Expiry Month: 1 = January, 12 = December")
int? CcExpMonth;
/**
* Expiry Year: Two digit year
*/
// @ApiMember(Description="Expiry Year: Two digit year")
int? CcExpYear;
/**
* The name can be provided with FullName OR as separate fields (PrefixName, FirstName, MiddleName, LastName, SuffixName).<br />Providing both will cause an error.
*/
// @ApiMember(Description="The name can be provided with FullName OR as separate fields (PrefixName, FirstName, MiddleName, LastName, SuffixName).<br />Providing both will cause an error.")
String? FullName;
// @ApiMember()
String? PrefixName;
// @ApiMember()
String? FirstName;
// @ApiMember()
String? MiddleName;
// @ApiMember()
String? LastName;
// @ApiMember()
String? SuffixName;
// @ApiMember()
String? Address1;
// @ApiMember()
String? Address2;
// @ApiMember()
String? Urbanization;
// @ApiMember()
String? City;
// @ApiMember()
String? State;
// @ApiMember()
String? PostalCode;
/**
* Disable (or Enabled) the Payment Profile
*/
// @ApiMember(Description="Disable (or Enabled) the Payment Profile")
bool? IsDisabled;
/**
* Exclude (or Include) from Account Updater
*/
// @ApiMember(Description="Exclude (or Include) from Account Updater")
bool? ExcludeFromAcctUpdater;
PaymentProfileUpdateEndpoint({this.ApiKey,this.AcctToken,this.ModifiedBy,this.CcExpMonth,this.CcExpYear,this.FullName,this.PrefixName,this.FirstName,this.MiddleName,this.LastName,this.SuffixName,this.Address1,this.Address2,this.Urbanization,this.City,this.State,this.PostalCode,this.IsDisabled,this.ExcludeFromAcctUpdater});
PaymentProfileUpdateEndpoint.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
ApiKey = json['ApiKey'];
AcctToken = json['AcctToken'];
ModifiedBy = json['ModifiedBy'];
CcExpMonth = json['CcExpMonth'];
CcExpYear = json['CcExpYear'];
FullName = json['FullName'];
PrefixName = json['PrefixName'];
FirstName = json['FirstName'];
MiddleName = json['MiddleName'];
LastName = json['LastName'];
SuffixName = json['SuffixName'];
Address1 = json['Address1'];
Address2 = json['Address2'];
Urbanization = json['Urbanization'];
City = json['City'];
State = json['State'];
PostalCode = json['PostalCode'];
IsDisabled = json['IsDisabled'];
ExcludeFromAcctUpdater = json['ExcludeFromAcctUpdater'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'ApiKey': ApiKey,
'AcctToken': AcctToken,
'ModifiedBy': ModifiedBy,
'CcExpMonth': CcExpMonth,
'CcExpYear': CcExpYear,
'FullName': FullName,
'PrefixName': PrefixName,
'FirstName': FirstName,
'MiddleName': MiddleName,
'LastName': LastName,
'SuffixName': SuffixName,
'Address1': Address1,
'Address2': Address2,
'Urbanization': Urbanization,
'City': City,
'State': State,
'PostalCode': PostalCode,
'IsDisabled': IsDisabled,
'ExcludeFromAcctUpdater': ExcludeFromAcctUpdater
});
getTypeName() => "PaymentProfileUpdateEndpoint";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'clubready.com', types: <String, TypeInfo> {
'ApiDtoBase': TypeInfo(TypeOf.Class, create:() => ApiDtoBase()),
'PaymentProfileUpdateRequestDto': TypeInfo(TypeOf.Class, create:() => PaymentProfileUpdateRequestDto()),
'ApiResponseBase': TypeInfo(TypeOf.Class, create:() => ApiResponseBase()),
'PaymentProfileUpdateResponseDto': TypeInfo(TypeOf.Class, create:() => PaymentProfileUpdateResponseDto()),
'PaymentProfileUpdateResponse': TypeInfo(TypeOf.Class, create:() => PaymentProfileUpdateResponse()),
'PaymentProfileUpdateEndpoint': TypeInfo(TypeOf.Class, create:() => PaymentProfileUpdateEndpoint()),
});
Dart PaymentProfileUpdateEndpoint DTOs
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.
PUT /sales/wallet/paymentprofileupdate HTTP/1.1
Host: clubready.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ApiKey":"String","AcctToken":"String","ModifiedBy":0,"CcExpMonth":0,"CcExpYear":0,"FullName":"String","PrefixName":"String","FirstName":"String","MiddleName":"String","LastName":"String","SuffixName":"String","Address1":"String","Address2":"String","Urbanization":"String","City":"String","State":"String","PostalCode":"String","IsDisabled":false,"ExcludeFromAcctUpdater":false,"StoreId":0,"ChainId":0}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Success":false,"Message":"String"}