| POST | /authenticatedUrl |
|---|
import 'package:servicestack/servicestack.dart';
// @DataContract
abstract class ServiceRequestBase implements IHasVersion
{
ServiceRequestBase();
ServiceRequestBase.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "ServiceRequestBase";
TypeContext? context = _ctx;
}
// @DataContract
class ServiceResponseBase implements IConvertible
{
/**
* Identifies whether the request executed successfully, however does not indicated requested data was found
*/
// @DataMember
// @ApiMember(Description="Identifies whether the request executed successfully, however does not indicated requested data was found")
bool? IsSuccessful;
/**
* The status code returned by the service
*/
// @DataMember
// @ApiMember(Description="The status code returned by the service")
int? StatusCode;
/**
* The status message returned by the service
*/
// @DataMember
// @ApiMember(Description="The status message returned by the service")
String? StatusMessage;
// @DataMember
// @ApiMember(ExcludeInSchema=true)
Map<String,String?>? ServiceDebugFields;
ServiceResponseBase({this.IsSuccessful,this.StatusCode,this.StatusMessage,this.ServiceDebugFields});
ServiceResponseBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
IsSuccessful = json['IsSuccessful'];
StatusCode = json['StatusCode'];
StatusMessage = json['StatusMessage'];
ServiceDebugFields = JsonConverters.toStringMap(json['ServiceDebugFields']);
return this;
}
Map<String, dynamic> toJson() => {
'IsSuccessful': IsSuccessful,
'StatusCode': StatusCode,
'StatusMessage': StatusMessage,
'ServiceDebugFields': ServiceDebugFields
};
getTypeName() => "ServiceResponseBase";
TypeContext? context = _ctx;
}
class AuthenticatedUrl extends ServiceRequestBase implements IConvertible
{
/**
* The cmc Id
*/
// @ApiMember(Description="The cmc Id", IsRequired=true)
String? CmcId;
/**
* The association Id
*/
// @ApiMember(Description="The association Id")
String? AssociationId;
/**
* The Account number of the property
*/
// @ApiMember(Description="The Account number of the property")
String? PropertyAccountNumber;
/**
* The User's first name
*/
// @ApiMember(Description="The User's first name")
String? FirstName;
/**
* The User's last name
*/
// @ApiMember(Description="The User's last name")
String? LastName;
/**
* The User's phone number
*/
// @ApiMember(Description="The User's phone number")
String? Phone;
/**
* The User's email
*/
// @ApiMember(Description="The User's email", IsRequired=true)
String? Email;
/**
* The vendor's confirmation url
*/
// @ApiMember(Description="The vendor's confirmation url")
String? ConfirmationUrl;
/**
* The nickname of the property
*/
// @ApiMember(Description="The nickname of the property")
String? PropertyNickname;
/**
* The amount of the payment
*/
// @ApiMember(Description="The amount of the payment")
double? Amount;
/**
* The bank account number for the payment
*/
// @ApiMember(Description="The bank account number for the payment")
String? BankAccountNumber;
/**
* The bank's routing number
*/
// @ApiMember(Description="The bank's routing number")
String? RoutingNumber;
/**
* The frequency of the payment
*/
// @ApiMember(Description="The frequency of the payment")
String? PaymentFrequency;
/**
* The stylesheet url
*/
// @ApiMember(Description="The stylesheet url")
String? StyleSheet;
AuthenticatedUrl({this.CmcId,this.AssociationId,this.PropertyAccountNumber,this.FirstName,this.LastName,this.Phone,this.Email,this.ConfirmationUrl,this.PropertyNickname,this.Amount,this.BankAccountNumber,this.RoutingNumber,this.PaymentFrequency,this.StyleSheet});
AuthenticatedUrl.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
CmcId = json['CmcId'];
AssociationId = json['AssociationId'];
PropertyAccountNumber = json['PropertyAccountNumber'];
FirstName = json['FirstName'];
LastName = json['LastName'];
Phone = json['Phone'];
Email = json['Email'];
ConfirmationUrl = json['ConfirmationUrl'];
PropertyNickname = json['PropertyNickname'];
Amount = JsonConverters.toDouble(json['Amount']);
BankAccountNumber = json['BankAccountNumber'];
RoutingNumber = json['RoutingNumber'];
PaymentFrequency = json['PaymentFrequency'];
StyleSheet = json['StyleSheet'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'CmcId': CmcId,
'AssociationId': AssociationId,
'PropertyAccountNumber': PropertyAccountNumber,
'FirstName': FirstName,
'LastName': LastName,
'Phone': Phone,
'Email': Email,
'ConfirmationUrl': ConfirmationUrl,
'PropertyNickname': PropertyNickname,
'Amount': Amount,
'BankAccountNumber': BankAccountNumber,
'RoutingNumber': RoutingNumber,
'PaymentFrequency': PaymentFrequency,
'StyleSheet': StyleSheet
});
getTypeName() => "AuthenticatedUrl";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'services.allianceassociationbank.com', types: <String, TypeInfo> {
'ServiceRequestBase': TypeInfo(TypeOf.AbstractClass),
'ServiceResponseBase': TypeInfo(TypeOf.Class, create:() => ServiceResponseBase()),
'AuthenticatedUrl': TypeInfo(TypeOf.Class, create:() => AuthenticatedUrl()),
});
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 /authenticatedUrl HTTP/1.1
Host: services.allianceassociationbank.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
CmcId: String,
AssociationId: String,
PropertyAccountNumber: String,
FirstName: String,
LastName: String,
Phone: String,
Email: String,
ConfirmationUrl: String,
PropertyNickname: String,
Amount: 0,
BankAccountNumber: String,
RoutingNumber: String,
PaymentFrequency: String,
StyleSheet: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
IsSuccessful: False,
StatusCode: 0,
StatusMessage: String,
ServiceDebugFields:
{
ApiServiceHost: WAB-WEBPW02,
ApiServiceHostVersion: 1.0.0.0
}
}