| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| POST | /licenses/company/delete | End all licenses | End all licenses on the company for the logged in user. |
|---|
namespace BokaMera.API.ServiceModel.Db
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type LicenseItemsResponse() =
member val Id:Int32 = new Int32() with get,set
member val Name:String = null with get,set
member val AllowedItems:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type BaseModel() =
class end
[<AllowNullLiteral>]
type Currency() =
inherit BaseModel()
[<Required>]
member val Name:String = null with get,set
[<Required>]
member val CurrencySign:String = null with get,set
[<Required>]
member val Active:Boolean = new Boolean() with get,set
member val ModifiedDate:Nullable<DateTimeOffset> = new Nullable<DateTimeOffset>() with get,set
[<Required>]
member val Id:String = null with get,set
[<AllowNullLiteral>]
type Country() =
inherit BaseModel()
[<References(typeof<Currency>)>]
member val CurrencyId:String = null with get,set
member val CurrencyInfo:Currency = null with get,set
[<Required>]
member val Name:String = null with get,set
member val Culture:String = null with get,set
member val TimeZone:String = null with get,set
member val ModifiedDate:Nullable<DateTimeOffset> = new Nullable<DateTimeOffset>() with get,set
[<Required>]
member val Id:String = null with get,set
[<AllowNullLiteral>]
type LicensePriceResponse() =
member val LicenseTypeId:Int32 = new Int32() with get,set
member val CountryId:String = null with get,set
member val Price:Int32 = new Int32() with get,set
member val Country:Country = null with get,set
member val LicensePlanId:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type LicenseTypeQueryResponse() =
///<summary>
///The license type id
///</summary>
[<ApiMember(Description="The license type id")>]
member val Id:Int32 = new Int32() with get,set
///<summary>
///The license type name
///</summary>
[<ApiMember(Description="The license type name")>]
member val Name:String = null with get,set
///<summary>
///The license type description
///</summary>
[<ApiMember(Description="The license type description")>]
member val Description:String = null with get,set
///<summary>
///If the license type is not a standard license but instead an extra license option. An example would be sending newsletter license.
///</summary>
[<ApiMember(Description="If the license type is not a standard license but instead an extra license option. An example would be sending newsletter license.")>]
member val IsExtraLicenseOption:Boolean = new Boolean() with get,set
///<summary>
///The period of notice for the license in days.
///</summary>
[<ApiMember(Description="The period of notice for the license in days.")>]
member val PeriodOfNoticeDays:Int32 = new Int32() with get,set
///<summary>
///The license items for the license type
///</summary>
[<ApiMember(Description="The license items for the license type")>]
member val Items:ResizeArray<LicenseItemsResponse> = null with get,set
///<summary>
///The license prices in each country for the license type
///</summary>
[<ApiMember(Description="The license prices in each country for the license type")>]
member val Prices:ResizeArray<LicensePriceResponse> = null with get,set
[<AllowNullLiteral>]
type ProductGroupResponse() =
member val Id:Guid = new Guid() with get,set
member val Name:String = null with get,set
member val TierId:Guid = new Guid() with get,set
[<AllowNullLiteral>]
type TierResponse() =
member val Id:Guid = new Guid() with get,set
member val Name:String = null with get,set
member val ProductGroups:ResizeArray<ProductGroupResponse> = null with get,set
[<AllowNullLiteral>]
type VossSubscriptionResponse() =
member val SubscriptionBillingPeriodStartDate:DateTime = new DateTime() with get,set
member val SubscriptionBillingPeriodEndDate:DateTime = new DateTime() with get,set
member val Tier:TierResponse = null with get,set
[<AllowNullLiteral>]
type CompanyLicenseQueryResponse() =
member val Id:Int32 = new Int32() with get,set
member val TypeId:Int32 = new Int32() with get,set
member val Type:LicenseTypeQueryResponse = null with get,set
member val ValidFrom:DateTime = new DateTime() with get,set
member val ValidTo:DateTime = new DateTime() with get,set
member val VossSubscriptionId:Guid = new Guid() with get,set
member val VossSubscription:VossSubscriptionResponse = null with get,set
member val MetaData:String = null with get,set
member val Active:Boolean = new Boolean() with get,set
member val Canceled:Boolean = new Boolean() with get,set
member val Updated:DateTime = new DateTime() with get,set
member val Created:DateTime = new DateTime() with get,set
[<AllowNullLiteral>]
type Questionnaire() =
member val Question:String = null with get,set
member val Value:String = null with get,set
[<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
[<ValidateRequest(Validator="IsAuthenticated")>]
[<AllowNullLiteral>]
type EndAllLicenses() =
///<summary>
///The company id, if empty will use the company id for the user you are logged in with.
///</summary>
[<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set
///<summary>
///If you want to deactivate the account the booking system also (will not be working during your period of notice).
///</summary>
[<ApiMember(Description="If you want to deactivate the account the booking system also (will not be working during your period of notice).")>]
member val Deactivate:Boolean = new Boolean() with get,set
///<summary>
///Questionaire with answers from customer why ending license.
///</summary>
[<ApiMember(Description="Questionaire with answers from customer why ending license.")>]
member val Questionnaire:Questionnaire[] = null with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /licenses/company/delete HTTP/1.1
Host: testapi.bokamera.se
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<EndAllLicenses xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
<Deactivate>false</Deactivate>
<Questionnaire>
<Questionnaire>
<Question>String</Question>
<Value>String</Value>
</Questionnaire>
</Questionnaire>
</EndAllLicenses>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CompanyLicenseQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<Active>false</Active>
<Canceled>false</Canceled>
<Created>0001-01-01T00:00:00</Created>
<Id>0</Id>
<MetaData>String</MetaData>
<Type>
<Description>String</Description>
<Id>0</Id>
<IsExtraLicenseOption>false</IsExtraLicenseOption>
<Items>
<LicenseItemsResponse>
<AllowedItems>0</AllowedItems>
<Id>0</Id>
<Name>String</Name>
</LicenseItemsResponse>
</Items>
<Name>String</Name>
<PeriodOfNoticeDays>0</PeriodOfNoticeDays>
<Prices>
<LicensePriceResponse>
<Country xmlns:d5p1="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Db">
<d5p1:Culture>String</d5p1:Culture>
<d5p1:CurrencyId>String</d5p1:CurrencyId>
<d5p1:CurrencyInfo>
<d5p1:Active>false</d5p1:Active>
<d5p1:CurrencySign>String</d5p1:CurrencySign>
<d5p1:Id>String</d5p1:Id>
<d5p1:ModifiedDate xmlns:d7p1="http://schemas.datacontract.org/2004/07/System">
<d7p1:DateTime>0001-01-01T00:00:00Z</d7p1:DateTime>
<d7p1:OffsetMinutes>0</d7p1:OffsetMinutes>
</d5p1:ModifiedDate>
<d5p1:Name>String</d5p1:Name>
</d5p1:CurrencyInfo>
<d5p1:Id>String</d5p1:Id>
<d5p1:ModifiedDate xmlns:d6p1="http://schemas.datacontract.org/2004/07/System">
<d6p1:DateTime>0001-01-01T00:00:00Z</d6p1:DateTime>
<d6p1:OffsetMinutes>0</d6p1:OffsetMinutes>
</d5p1:ModifiedDate>
<d5p1:Name>String</d5p1:Name>
<d5p1:TimeZone>String</d5p1:TimeZone>
</Country>
<CountryId>String</CountryId>
<LicensePlanId>0</LicensePlanId>
<LicenseTypeId>0</LicenseTypeId>
<Price>0</Price>
</LicensePriceResponse>
</Prices>
</Type>
<TypeId>0</TypeId>
<Updated>0001-01-01T00:00:00</Updated>
<ValidFrom>0001-01-01T00:00:00</ValidFrom>
<ValidTo>0001-01-01T00:00:00</ValidTo>
<VossSubscription xmlns:d2p1="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Helpers.VossHelper">
<d2p1:SubscriptionBillingPeriodEndDate>0001-01-01T00:00:00</d2p1:SubscriptionBillingPeriodEndDate>
<d2p1:SubscriptionBillingPeriodStartDate>0001-01-01T00:00:00</d2p1:SubscriptionBillingPeriodStartDate>
<d2p1:Tier>
<d2p1:Id>00000000-0000-0000-0000-000000000000</d2p1:Id>
<d2p1:Name>String</d2p1:Name>
<d2p1:ProductGroups>
<d2p1:ProductGroupResponse>
<d2p1:Id>00000000-0000-0000-0000-000000000000</d2p1:Id>
<d2p1:Name>String</d2p1:Name>
<d2p1:TierId>00000000-0000-0000-0000-000000000000</d2p1:TierId>
</d2p1:ProductGroupResponse>
</d2p1:ProductGroups>
</d2p1:Tier>
</VossSubscription>
<VossSubscriptionId>00000000-0000-0000-0000-000000000000</VossSubscriptionId>
</CompanyLicenseQueryResponse>