| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| GET | /voss/productGroups/{ProductGroupId} | gets voss product group |
|---|
"use strict";
/** @typedef {'Optional'|'Included'} */
export var ProductGroupTypeEnum;
(function (ProductGroupTypeEnum) {
ProductGroupTypeEnum["Optional"] = "Optional"
ProductGroupTypeEnum["Included"] = "Included"
})(ProductGroupTypeEnum || (ProductGroupTypeEnum = {}));
/** @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 ProductGroupProductDto {
/** @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;
}
/** @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;
}
export class ProductGroupResult {
/** @param {{productGroupType?:ProductGroupTypeEnum,id?:string,versionId?:string,name?:string,externalId?:string,products?:ProductGroupProductDto[],tags?:ProductGroupTagDto[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ProductGroupTypeEnum} */
productGroupType;
/** @type {string} */
id;
/** @type {string} */
versionId;
/** @type {string} */
name;
/** @type {string} */
externalId;
/** @type {ProductGroupProductDto[]} */
products = [];
/** @type {ProductGroupTagDto[]} */
tags = [];
}
export class GetVossProductGroup {
/** @param {{PackageId?:string,ProductGroupId?:string,TierId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description Passed if we have multilpe packages */
PackageId;
/**
* @type {string}
* @description Procut Group id to get */
ProductGroupId;
/**
* @type {string}
* @description Tier id required because it is used it voss url */
TierId;
}
JavaScript GetVossProductGroup DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /voss/productGroups/{ProductGroupId} HTTP/1.1
Host: api.bokamera.se
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"productGroupType":"Optional","name":"String","externalId":"String","products":[{}],"tags":[{}]}