| GET | /warranty/v1/sites |
|---|
"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 Address {
/** @param {{line1?:string,city?:string,zipCode?:string,countryCode?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
line1;
/** @type {string} */
city;
/** @type {string} */
zipCode;
/** @type {string} */
countryCode;
}
export class Brand {
/** @param {{brand?:string,lastStockTakingDate?:string,isAutomaticInvoiceNumberEnabled?:number,saleRepRequired?:boolean,crmSaleRepRequired?:boolean,showPromoterType?:boolean,stockOwner?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
brand;
/** @type {string} */
lastStockTakingDate;
/** @type {number} */
isAutomaticInvoiceNumberEnabled;
/** @type {boolean} */
saleRepRequired;
/** @type {boolean} */
crmSaleRepRequired;
/** @type {boolean} */
showPromoterType;
/** @type {number} */
stockOwner;
}
export class User {
/** @param {{object?:string,id?:string,brand?:string,displayName?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
object;
/** @type {string} */
id;
/** @type {string} */
brand;
/** @type {string} */
displayName;
}
export class Site {
/** @param {{object?:string,id?:number,name?:string,address?:Address,brands?:Brand[],users?:User[],isNfcActive?:number,isIOsEmbReaderEnable?:number,crmPrivacyPolicyMandatory?:boolean,crmAllowStoreDataAbroadVisible?:boolean,displayFirstLastNameNotLatin?:boolean,languageTransliteration?:string,crmPrivacyPolicyTimeValleeMandatory?:boolean,crmAllowStoreDataAbroadTimeValleeVisible?:boolean,allowToCreateEndCustomerOutsideChina?:boolean,isTimeVallee?:boolean,doNotDisplayPOSDataInDisclaimers?:boolean,crmFirstNameMandatory?:boolean,manageOwnStock?:boolean,crmCityMandatory?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
object;
/** @type {number} */
id;
/** @type {string} */
name;
/** @type {Address} */
address;
/** @type {Brand[]} */
brands;
/** @type {User[]} */
users;
/** @type {number} */
isNfcActive;
/** @type {number} */
isIOsEmbReaderEnable;
/** @type {boolean} */
crmPrivacyPolicyMandatory;
/** @type {boolean} */
crmAllowStoreDataAbroadVisible;
/** @type {boolean} */
displayFirstLastNameNotLatin;
/** @type {string} */
languageTransliteration;
/** @type {boolean} */
crmPrivacyPolicyTimeValleeMandatory;
/** @type {boolean} */
crmAllowStoreDataAbroadTimeValleeVisible;
/** @type {boolean} */
allowToCreateEndCustomerOutsideChina;
/** @type {boolean} */
isTimeVallee;
/** @type {boolean} */
doNotDisplayPOSDataInDisclaimers;
/** @type {boolean} */
crmFirstNameMandatory;
/** @type {boolean} */
manageOwnStock;
/** @type {boolean} */
crmCityMandatory;
}
export class SitesResponse extends BaseResponse {
/** @param {{sites?:Site[],_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 {Site[]} */
sites;
}
export class SitesRequest 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/sites HTTP/1.1 Host: qp-microservices-booster.richemont.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
sites:
[
{
object: String,
id: 0,
name: String,
address:
{
line1: String,
city: String,
zipCode: String,
countryCode: String
},
brands:
[
{
brand: String,
lastStockTakingDate: String,
isAutomaticInvoiceNumberEnabled: 0,
saleRepRequired: False,
crmSaleRepRequired: False,
showPromoterType: False,
stockOwner: 0
}
],
users:
[
{
object: String,
id: String,
brand: String,
displayName: String
}
],
isNfcActive: 0,
isIOsEmbReaderEnable: 0,
crmPrivacyPolicyMandatory: False,
crmAllowStoreDataAbroadVisible: False,
displayFirstLastNameNotLatin: False,
languageTransliteration: String,
crmPrivacyPolicyTimeValleeMandatory: False,
crmAllowStoreDataAbroadTimeValleeVisible: False,
allowToCreateEndCustomerOutsideChina: False,
isTimeVallee: False,
doNotDisplayPOSDataInDisclaimers: False,
crmFirstNameMandatory: False,
manageOwnStock: False,
crmCityMandatory: False
}
],
_xmlns: String,
_type: String,
_source: String,
_tstamp: String,
_user: String,
_env: String,
_uri: String,
_query: String
}