| GET | /warranty/v1/articles |
|---|
"use strict";
/** @typedef TResponse {any} */
export class BaseRequest {
/** @param {{sid?:string,app?:string,_os?:string,_appVersion?:string,_searchMethod?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
sid;
/** @type {string} */
app;
/** @type {string} */
_os;
/** @type {string} */
_appVersion;
/** @type {string} */
_searchMethod;
}
export class BaseResponse {
/** @param {{_xmlns?:string,_type?:string,_source?:string,_tstamp?:string,_user?:string,_env?:string,_uri?:string,_query?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
_xmlns;
/** @type {string} */
_type;
/** @type {string} */
_source;
/** @type {string} */
_tstamp;
/** @type {string} */
_user;
/** @type {string} */
_env;
/** @type {string} */
_uri;
/** @type {string} */
_query;
}
export class LookupInt {
/** @param {{object?:string,id?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
object;
/** @type {number} */
id;
}
export class Article {
/** @param {{ref?:string,serial?:string,name?:string,site?:LookupInt,brand?:string,isConsignment?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ref;
/** @type {string} */
serial;
/** @type {string} */
name;
/** @type {LookupInt} */
site;
/** @type {string} */
brand;
/** @type {boolean} */
isConsignment;
}
export class StockResponse extends BaseResponse {
/** @param {{articles?:Article[],_xmlns?:string,_type?:string,_source?:string,_tstamp?:string,_user?:string,_env?:string,_uri?:string,_query?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Article[]} */
articles;
}
export class StockRequest extends BaseRequest {
/** @param {{sid?:string,app?:string,_os?:string,_appVersion?:string,_searchMethod?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
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 /warranty/v1/articles HTTP/1.1 Host: qp-microservices-booster.richemont.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
articles:
[
{
ref: String,
serial: String,
name: String,
site:
{
object: String,
id: 0
},
brand: String,
isConsignment: False
}
],
_xmlns: String,
_type: String,
_source: String,
_tstamp: String,
_user: String,
_env: String,
_uri: String,
_query: String
}