| GET | /products |
|---|
"use strict";
export class FindProducts {
/** @param {{id?:string,qry?:string,currentPage?:number,pageSize?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
qry;
/** @type {number} */
currentPage;
/** @type {number} */
pageSize;
}
export class ProductProvider {
/** @param {{id?:string,name?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
name;
}
/** @typedef T {any} */
export class PaginatedResult {
/** @param {{data?:ProductProvider[],currentPage?:number,pageSize?:number,totalItems?:number,totalPages?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ProductProvider[]} */
data;
/** @type {number} */
currentPage;
/** @type {number} */
pageSize;
/** @type {number} */
totalItems;
/** @type {number} */
totalPages;
}
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 /products HTTP/1.1 Host: fbihtaapi.bettor.webhop.biz Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
data:
[
{
id: String,
name: String,
category: 0,
productProvider:
{
id: String,
value: String
}
}
],
currentPage: 0,
pageSize: 0,
totalItems: 0,
totalPages: 0
}