| GET | /v2/collections/list |
|---|
// @DataContract
export class V2BaseRequest
{
public constructor(init?: Partial<V2BaseRequest>) { (Object as any).assign(this, init); }
}
// @DataContract
export class V2PaginatedBaseRequest extends V2BaseRequest
{
// @DataMember(Name="offset")
public offset: number;
// @DataMember(Name="limit")
public limit: number;
public constructor(init?: Partial<V2PaginatedBaseRequest>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class V2ListRequest extends V2PaginatedBaseRequest
{
// @DataMember(Name="ids")
public ids: string[];
public constructor(init?: Partial<V2ListRequest>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class V2BaseResponse
{
// @DataMember(Name="responseStatus")
public responseStatus: ResponseStatus;
public constructor(init?: Partial<V2BaseResponse>) { (Object as any).assign(this, init); }
}
// @DataContract
export class V2PageObject
{
// @DataMember(Name="offset")
public offset: number;
// @DataMember(Name="limit")
public limit: number;
// @DataMember(Name="totalRecords")
public totalRecords: number;
public constructor(init?: Partial<V2PageObject>) { (Object as any).assign(this, init); }
}
// @DataContract
export class V2PaginatedBaseResponse extends V2BaseResponse
{
// @DataMember(Name="page")
public page: V2PageObject;
public constructor(init?: Partial<V2PaginatedBaseResponse>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class GetCollectionsResponse extends V2PaginatedBaseResponse implements IGetCollectionsResponse
{
public constructor(init?: Partial<GetCollectionsResponse>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class GetCollectionsRequest extends V2ListRequest
{
public constructor(init?: Partial<GetCollectionsRequest>) { super(init); (Object as any).assign(this, init); }
}
TypeScript GetCollectionsRequest DTOs
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.
GET /v2/collections/list HTTP/1.1 Host: api.booklinker.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
page:
{
offset: 0,
limit: 0,
totalRecords: 0
},
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}