| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| GET | /voss/tiers/{TierId} | gets voss tiers |
|---|
"use strict";
/** @typedef {'Optional'|'Included'} */
export var ProductGroupTypeEnum;
(function (ProductGroupTypeEnum) {
ProductGroupTypeEnum["Optional"] = "Optional"
ProductGroupTypeEnum["Included"] = "Included"
})(ProductGroupTypeEnum || (ProductGroupTypeEnum = {}));
/** @typedef {'AtSubscriptionBillingPeriodEnd'|'AtBindingPeriodEnd'|'Immediately'} */
export var TypeEnum;
(function (TypeEnum) {
TypeEnum["AtSubscriptionBillingPeriodEnd"] = "AtSubscriptionBillingPeriodEnd"
TypeEnum["AtBindingPeriodEnd"] = "AtBindingPeriodEnd"
TypeEnum["Immediately"] = "Immediately"
})(TypeEnum || (TypeEnum = {}));
export class ProductGroupTagDto {
/** @param {{type?:TypeEnum,tag?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {TypeEnum} */
type;
/** @type {string} */
tag;
}
/** @typedef {'Main'|'Addon'|'License'|'Usage'} */
export var ProductTypeEnum;
(function (ProductTypeEnum) {
ProductTypeEnum["Main"] = "Main"
ProductTypeEnum["Addon"] = "Addon"
ProductTypeEnum["License"] = "License"
ProductTypeEnum["Usage"] = "Usage"
})(ProductTypeEnum || (ProductTypeEnum = {}));
/** @typedef {'Active'|'Terminated'} */
export var StatusEnum;
(function (StatusEnum) {
StatusEnum["Active"] = "Active"
StatusEnum["Terminated"] = "Terminated"
})(StatusEnum || (StatusEnum = {}));
export class TierProductDto {
/** @param {{type?:ProductTypeEnum,status?:StatusEnum,id?:string,name?:string,externalId?:string,articleNumber?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ProductTypeEnum} */
type;
/** @type {StatusEnum} */
status;
/** @type {string} */
id;
/** @type {string} */
name;
/** @type {string} */
externalId;
/** @type {string} */
articleNumber;
}
export class TierProductGroupDto {
/** @param {{productGroupType?:ProductGroupTypeEnum,id?:string,name?:string,externalId?:string,tags?:ProductGroupTagDto[],products?:TierProductDto[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ProductGroupTypeEnum} */
productGroupType;
/** @type {string} */
id;
/** @type {string} */
name;
/** @type {string} */
externalId;
/** @type {ProductGroupTagDto[]} */
tags = [];
/** @type {TierProductDto[]} */
products = [];
}
export class TierResult {
/** @param {{id?:string,versionId?:string,name?:string,externalId?:string,rank?:number,productGroups?:TierProductGroupDto[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
versionId;
/** @type {string} */
name;
/** @type {string} */
externalId;
/** @type {number} */
rank;
/** @type {TierProductGroupDto[]} */
productGroups = [];
}
export class GetVossTier {
/** @param {{TierId?:string,PackageId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The company id, if empty will use the company id for the user you are logged in with. */
TierId;
/** @type {?string} */
PackageId;
}
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 /voss/tiers/{TierId} HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
name: String,
externalId: String,
rank: 0,
productGroups:
[
{
}
]
}