| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| GET | /voss/productGroups/{ProductGroupId} | gets voss product group |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Imports BokaMera.VossIntegration.ApiTools.Model
Imports BokaMera.VossIntegration.ApiTools.Enums
Namespace Global
Namespace BokaMera.API.ServiceModel.Dtos
<ApiResponse(Description:="You were unauthorized to call this service", StatusCode:=401)>
Public Partial Class GetVossProductGroup
'''<Summary>
'''Passed if we have multilpe packages
'''</Summary>
<ApiMember(Description:="Passed if we have multilpe packages")>
Public Overridable Property PackageId As Guid?
'''<Summary>
'''Procut Group id to get
'''</Summary>
<ApiMember(Description:="Procut Group id to get", IsRequired:=true)>
Public Overridable Property ProductGroupId As Guid
'''<Summary>
'''Tier id required because it is used it voss url
'''</Summary>
<ApiMember(Description:="Tier id required because it is used it voss url", IsRequired:=true)>
Public Overridable Property TierId As Guid
End Class
End Namespace
Namespace BokaMera.VossIntegration.ApiTools.Enums
Public Enum ProductGroupTypeEnum
[Optional]
Included
End Enum
Public Enum ProductTypeEnum
Main
Addon
License
Usage
End Enum
End Namespace
Namespace BokaMera.VossIntegration.ApiTools.Model
<DataContract(Name:="ProductGroupProductDto")>
Public Partial Class ProductGroupProductDto
<DataMember(Name:="type", IsRequired:=true)>
Public Overridable Property ProductType As ProductTypeEnum
<DataMember(Name:="status", IsRequired:=true)>
Public Overridable Property Status As StatusEnum
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="name", IsRequired:=true)>
Public Overridable Property Name As String
<DataMember(Name:="externalId")>
Public Overridable Property ExternalId As String
<DataMember(Name:="articleNumber", IsRequired:=true)>
Public Overridable Property ArticleNumber As String
Public Enum StatusEnum
Active
Terminated
End Enum
End Class
<DataContract(Name:="ProductGroupResult")>
Public Partial Class ProductGroupResult
<DataMember(Name:="productGroupType", IsRequired:=true)>
Public Overridable Property ProductGroupType As ProductGroupTypeEnum
<DataMember(Name:="id", IsRequired:=true)>
Public Overridable Property Id As Guid
<DataMember(Name:="versionId", IsRequired:=true)>
Public Overridable Property VersionId As Guid
<DataMember(Name:="name", IsRequired:=true)>
Public Overridable Property Name As String
<DataMember(Name:="externalId")>
Public Overridable Property ExternalId As String
<DataMember(Name:="products", EmitDefaultValue:=false)>
Public Overridable Property Products As List(Of ProductGroupProductDto) = New List(Of ProductGroupProductDto)
<DataMember(Name:="tags", EmitDefaultValue:=false)>
Public Overridable Property Tags As List(Of ProductGroupTagDto) = New List(Of ProductGroupTagDto)
End Class
<DataContract(Name:="ProductGroupTagDto")>
Public Partial Class ProductGroupTagDto
<DataMember(Name:="type", IsRequired:=true)>
Public Overridable Property Type As TypeEnum
<DataMember(Name:="tag", IsRequired:=true)>
Public Overridable Property Tag As String
Public Enum TypeEnum
AtSubscriptionBillingPeriodEnd
AtBindingPeriodEnd
Immediately
End Enum
End Class
End Namespace
End Namespace
VB.NET GetVossProductGroup DTOs
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/productGroups/{ProductGroupId} HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
productGroupType: Optional,
name: String,
externalId: String,
products:
[
{
}
],
tags:
[
{
}
]
}