| POST | /v1/links/pending |
|---|
import 'package:servicestack/servicestack.dart';
// @DataContract
class ProductMetadata extends ProductMetadata implements IConvertible
{
ProductMetadata();
ProductMetadata.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() => "ProductMetadata";
TypeContext? context = _ctx;
}
// @DataContract
class PostPendingLinkResponse implements IConvertible
{
// @DataMember(Name="url")
String? url;
// @DataMember(Name="productMetadata")
ProductMetadata? productMetadata;
// @DataMember(Name="domain")
String? domain;
// @DataMember(Name="code")
String? code;
// @DataMember(Name="baseDomain")
String? baseDomain;
// @DataMember(Name="baseCode")
String? baseCode;
// @DataMember(Name="responseStatus")
ResponseStatus? responseStatus;
PostPendingLinkResponse({this.url,this.productMetadata,this.domain,this.code,this.baseDomain,this.baseCode,this.responseStatus});
PostPendingLinkResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
url = json['url'];
productMetadata = JsonConverters.fromJson(json['productMetadata'],'ProductMetadata',context!);
domain = json['domain'];
code = json['code'];
baseDomain = json['baseDomain'];
baseCode = json['baseCode'];
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'url': url,
'productMetadata': JsonConverters.toJson(productMetadata,'ProductMetadata',context!),
'domain': domain,
'code': code,
'baseDomain': baseDomain,
'baseCode': baseCode,
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "PostPendingLinkResponse";
TypeContext? context = _ctx;
}
// @DataContract
class PostPendingLinkRequest implements IConvertible
{
// @DataMember(Name="token")
// @ApiMember(IsRequired=true, Name="token")
String? token;
PostPendingLinkRequest({this.token});
PostPendingLinkRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
token = json['token'];
return this;
}
Map<String, dynamic> toJson() => {
'token': token
};
getTypeName() => "PostPendingLinkRequest";
TypeContext? context = _ctx;
}
// @DataContract
abstract class ProductMetadata
{
// @DataMember(Name="title")
String? title;
// @DataMember(Name="author")
String? author;
// @DataMember(Name="url")
Uri? url;
// @DataMember(Name="description")
String? description;
// @DataMember(Name="retailer")
String? retailer;
// @DataMember(Name="productImages")
Map<String,Uri?>? productImages;
ProductMetadata({this.title,this.author,this.url,this.description,this.retailer,this.productImages});
ProductMetadata.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
title = json['title'];
author = json['author'];
url = JsonConverters.fromJson(json['url'],'Uri',context!);
description = json['description'];
retailer = json['retailer'];
productImages = JsonConverters.fromJson(json['productImages'],'Map<String,Uri?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'title': title,
'author': author,
'url': JsonConverters.toJson(url,'Uri',context!),
'description': description,
'retailer': retailer,
'productImages': JsonConverters.toJson(productImages,'Map<String,Uri?>',context!)
};
getTypeName() => "ProductMetadata";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.booklinker.com', types: <String, TypeInfo> {
'ProductMetadata': TypeInfo(TypeOf.Class, create:() => ProductMetadata()),
'PostPendingLinkResponse': TypeInfo(TypeOf.Class, create:() => PostPendingLinkResponse()),
'PostPendingLinkRequest': TypeInfo(TypeOf.Class, create:() => PostPendingLinkRequest()),
'Uri': TypeInfo(TypeOf.Class, create:() => Uri()),
'Map<String,Uri?>': TypeInfo(TypeOf.Class, create:() => Map<String,Uri?>()),
});
Dart PostPendingLinkRequest DTOs
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.
POST /v1/links/pending HTTP/1.1
Host: api.booklinker.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<PostPendingLinkRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.V1.Requests">
<token>String</token>
</PostPendingLinkRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<PostPendingLinkResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.V1.Responses">
<baseCode>String</baseCode>
<baseDomain>String</baseDomain>
<code>String</code>
<domain>String</domain>
<productMetadata xmlns:d2p1="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.V1.DTOs">
<author xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs">String</author>
<description xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs">String</description>
<productImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true" xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs" />
<retailer xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs">String</retailer>
<title xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs">String</title>
<url i:nil="true" xmlns="http://schemas.datacontract.org/2004/07/ProductAPI.Contracts.V1.DTOs" />
</productMetadata>
<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>
<url>String</url>
</PostPendingLinkResponse>