BokaMera.API.Host

<back to all web services

CreatePresetBehaviour

The following routes are available for this service:
POST/voss/presetBehaviourcreate preset behaviour in voss
import Foundation
import ServiceStack

// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
public class CreatePresetBehaviour : Codable
{
    /**
    * Company ids to create invoice. If none added invoice for all will be created
    */
    // @ApiMember(Description="Company ids to create invoice. If none added invoice for all will be created")
    public var changeType:ChangeTypeEnum

    public var changeOperation:ChangeOperationEnum
    public var timing:SubscriptionTimingEnum
    public var periodAnchor:PeriodAnchorEnum
    public var renewalTiming:RenewalTimingEnum
    public var debitBehaviour:SubscriptionBehaviourEnum?
    public var creditBehaviour:SubscriptionBehaviourEnum?
    public var creditKind:CreditKindEnum?
    public var periodIterationCount:Int?

    required public init(){}
}

public enum ChangeTypeEnum : String, Codable
{
    case Subscription
    case ProductGroup
    case License
}

public enum ChangeOperationEnum : String, Codable
{
    case Create
    case Terminate
    case Upgrade
    case Sidegrade
    case Downgrade
    case Migration
}

public enum SubscriptionTimingEnum : String, Codable
{
    case AtSubscriptionBillingPeriodEnd
    case AtBindingPeriodEnd
    case Immediately
}

public enum PeriodAnchorEnum : String, Codable
{
    case LatestPeriod
    case CurrentPeriod
}

public enum RenewalTimingEnum : String, Codable
{
    case UseCurrentPlanRenewalDate
    case UseScheduledPlanRenewalDate
}

public enum SubscriptionBehaviourEnum : String, Codable
{
    case Prorate
    case Full
    case None
}

public enum CreditKindEnum : String, Codable
{
    case Normal
    case Internal
}


Swift CreatePresetBehaviour DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /voss/presetBehaviour HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"ChangeType":"Subscription","ChangeOperation":"Create","Timing":"AtSubscriptionBillingPeriodEnd","PeriodAnchor":"LatestPeriod","RenewalTiming":"UseCurrentPlanRenewalDate","DebitBehaviour":"Prorate","CreditBehaviour":"Prorate","CreditKind":"Normal","PeriodIterationCount":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{}