| GET | /v1/account |
|---|
import 'package:servicestack/servicestack.dart';
// @DataContract
class V2BaseResponse implements IConvertible
{
// @DataMember(Name="responseStatus")
ResponseStatus? responseStatus;
V2BaseResponse({this.responseStatus});
V2BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "V2BaseResponse";
TypeContext? context = _ctx;
}
abstract class IImageData
{
String? id;
String? provider;
String? providerImageId;
String? url;
Map<String,String?>? attributes;
}
enum SignatureAppearance
{
None,
Text,
Upload,
}
// @DataContract
class AccountData implements IConvertible
{
// @DataMember(Name="id")
String? id;
// @DataMember(Name="userId")
String? userId;
// @DataMember(Name="emailAddress")
String? emailAddress;
// @DataMember(Name="fullName")
String? fullName;
// @DataMember(Name="profileImage")
IImageData? profileImage;
// @DataMember(Name="signatureImage")
IImageData? signatureImage;
// @DataMember(Name="signatureFont")
String? signatureFont;
// @DataMember(Name="signatureAppearance")
SignatureAppearance? signatureAppearance;
AccountData({this.id,this.userId,this.emailAddress,this.fullName,this.profileImage,this.signatureImage,this.signatureFont,this.signatureAppearance});
AccountData.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
userId = json['userId'];
emailAddress = json['emailAddress'];
fullName = json['fullName'];
profileImage = JsonConverters.fromJson(json['profileImage'],'IImageData',context!);
signatureImage = JsonConverters.fromJson(json['signatureImage'],'IImageData',context!);
signatureFont = json['signatureFont'];
signatureAppearance = JsonConverters.fromJson(json['signatureAppearance'],'SignatureAppearance',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'userId': userId,
'emailAddress': emailAddress,
'fullName': fullName,
'profileImage': JsonConverters.toJson(profileImage,'IImageData',context!),
'signatureImage': JsonConverters.toJson(signatureImage,'IImageData',context!),
'signatureFont': signatureFont,
'signatureAppearance': JsonConverters.toJson(signatureAppearance,'SignatureAppearance',context!)
};
getTypeName() => "AccountData";
TypeContext? context = _ctx;
}
// @DataContract
class GetAccountResponse extends V2BaseResponse implements IConvertible
{
// @DataMember(Name="data")
AccountData? data;
GetAccountResponse({this.data});
GetAccountResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
data = JsonConverters.fromJson(json['data'],'AccountData',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'data': JsonConverters.toJson(data,'AccountData',context!)
});
getTypeName() => "GetAccountResponse";
TypeContext? context = _ctx;
}
// @DataContract
class GetAccountRequest implements IConvertible
{
GetAccountRequest();
GetAccountRequest.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "GetAccountRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.booklinker.com', types: <String, TypeInfo> {
'V2BaseResponse': TypeInfo(TypeOf.Class, create:() => V2BaseResponse()),
'IImageData': TypeInfo(TypeOf.Interface),
'SignatureAppearance': TypeInfo(TypeOf.Enum, enumValues:SignatureAppearance.values),
'AccountData': TypeInfo(TypeOf.Class, create:() => AccountData()),
'GetAccountResponse': TypeInfo(TypeOf.Class, create:() => GetAccountResponse()),
'GetAccountRequest': TypeInfo(TypeOf.Class, create:() => GetAccountRequest()),
});
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.
GET /v1/account HTTP/1.1 Host: api.booklinker.com Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<GetAccountResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.V1.Responses">
<responseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</responseStatus>
<userAccount xmlns:d2p1="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.Models">
<d2p1:email>String</d2p1:email>
<d2p1:settings xmlns:d3p1="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.DTOs.V2">
<d3p1:id>String</d3p1:id>
<d3p1:profileImageId>String</d3p1:profileImageId>
<d3p1:signatureAppearance>None</d3p1:signatureAppearance>
<d3p1:signatureFont>String</d3p1:signatureFont>
<d3p1:signatureImageId>String</d3p1:signatureImageId>
<d3p1:signatureText>String</d3p1:signatureText>
</d2p1:settings>
</userAccount>
</GetAccountResponse>