BusinessApi

<back to all web services

UpdateRunningAdMessageRequest

Business
Requires Authentication
Required role:Business
The following routes are available for this service:
PUT/admessage/update_running
import Foundation
import ServiceStack

public class AdMessageDetailsUnion : Codable
{
    public var percentageOnAllMerchandise:AdMessageDetailsPercentageDiscountOnAllMerchandise
    public var percentageRangeOnAllMerchandise:AdMessageDetailsPercentageDiscountRangeOnAllMerchandise
    public var percentageOnSelectedMerchandise:AdMessageDetailsPercentageDiscountOnSelectedMerchandise
    public var absoluteOnSelectedMerchandise:AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise
    public var absoluteRangeOnAllMerchandise:AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise
    public var totalAmountOverXgivesYdiscount:AdMessageDetailsTotalAmountOverXgivesYdiscount
    public var xforY:AdMessageDetailsXforYdiscount
    public var newArrivals:AdMessageDetailsNewArrivals
    public var freetext:AdMessageDetailsFreetext
    public var todaysBreakFastOffer:AdMessageDetailsTodaysBreakFastOffer
    public var todaysLunchOffer:AdMessageDetailsTodaysLunchOffer
    public var todaysDinnerOffer:AdMessageDetailsTodaysDinnerOffer
    public var saveFoodAndMoney:AdMessageDetailsSaveFoodAndMoney
    public var percentageOfYourFoodBill:AdMessageDetailsPercentageOffYourFoodBill
    public var happyHour:AdMessageDetailsHappyHour
    public var someFreeTablesLeftToday:AdMessageDetailsSomeFreeTablesLeftToday
    public var twoDishesForThePriceOfOne:AdMessageDetailsTwoDishesForThePriceOfOne

    required public init(){}
}

public class AdMessageDetailsPercentageDiscountOnAllMerchandise : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsBase : Codable
{
    public var Description:String
    public var moreInformation:[String] = []

    required public init(){}
}

public class AdMessageDetailsPercentageDiscountRangeOnAllMerchandise : AdMessageDetailsBase
{
    public var start:Double
    public var stop:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case start
        case stop
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        start = try container.decodeIfPresent(Double.self, forKey: .start)
        stop = try container.decodeIfPresent(Double.self, forKey: .stop)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if start != nil { try container.encode(start, forKey: .start) }
        if stop != nil { try container.encode(stop, forKey: .stop) }
    }
}

public class AdMessageDetailsPercentageDiscountOnSelectedMerchandise : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise : AdMessageDetailsBase
{
    public var start:Double
    public var stop:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case start
        case stop
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        start = try container.decodeIfPresent(Double.self, forKey: .start)
        stop = try container.decodeIfPresent(Double.self, forKey: .stop)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if start != nil { try container.encode(start, forKey: .start) }
        if stop != nil { try container.encode(stop, forKey: .stop) }
    }
}

public class AdMessageDetailsTotalAmountOverXgivesYdiscount : AdMessageDetailsBase
{
    public var ifTotalAmountMoreThanX:Double
    public var thenYouGetDiscountPercentageY:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case ifTotalAmountMoreThanX
        case thenYouGetDiscountPercentageY
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        ifTotalAmountMoreThanX = try container.decodeIfPresent(Double.self, forKey: .ifTotalAmountMoreThanX)
        thenYouGetDiscountPercentageY = try container.decodeIfPresent(Double.self, forKey: .thenYouGetDiscountPercentageY)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if ifTotalAmountMoreThanX != nil { try container.encode(ifTotalAmountMoreThanX, forKey: .ifTotalAmountMoreThanX) }
        if thenYouGetDiscountPercentageY != nil { try container.encode(thenYouGetDiscountPercentageY, forKey: .thenYouGetDiscountPercentageY) }
    }
}

public class AdMessageDetailsXforYdiscount : AdMessageDetailsBase
{
    public var ifYouBuyX:Int
    public var thenYouGetY:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case ifYouBuyX
        case thenYouGetY
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        ifYouBuyX = try container.decodeIfPresent(Int.self, forKey: .ifYouBuyX)
        thenYouGetY = try container.decodeIfPresent(Int.self, forKey: .thenYouGetY)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if ifYouBuyX != nil { try container.encode(ifYouBuyX, forKey: .ifYouBuyX) }
        if thenYouGetY != nil { try container.encode(thenYouGetY, forKey: .thenYouGetY) }
    }
}

public class AdMessageDetailsNewArrivals : AdMessageDetailsBase
{
    required public init(){ super.init() }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
    }
}

public class AdMessageDetailsFreetext : AdMessageDetailsBase
{
    public var title:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case title
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        title = try container.decodeIfPresent(String.self, forKey: .title)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if title != nil { try container.encode(title, forKey: .title) }
    }
}

public class AdMessageDetailsTodaysBreakFastOffer : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsTodaysLunchOffer : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsTodaysDinnerOffer : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsSaveFoodAndMoney : AdMessageDetailsBase
{
    public var value:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case value
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        value = try container.decodeIfPresent(Double.self, forKey: .value)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if value != nil { try container.encode(value, forKey: .value) }
    }
}

public class AdMessageDetailsPercentageOffYourFoodBill : AdMessageDetailsBase
{
    public var percentage:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case percentage
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        percentage = try container.decodeIfPresent(Double.self, forKey: .percentage)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if percentage != nil { try container.encode(percentage, forKey: .percentage) }
    }
}

public class AdMessageDetailsHappyHour : AdMessageDetailsBase
{
    required public init(){ super.init() }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
    }
}

public class AdMessageDetailsSomeFreeTablesLeftToday : AdMessageDetailsBase
{
    required public init(){ super.init() }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
    }
}

public class AdMessageDetailsTwoDishesForThePriceOfOne : AdMessageDetailsBase
{
    required public init(){ super.init() }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
    }
}


Swift UpdateRunningAdMessageRequest DTOs

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

HTTP + XML

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

PUT /admessage/update_running HTTP/1.1 
Host: business-api.brovs.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<UpdateRunningAdMessageRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BusinessApi.Dto">
  <AdMessageId>0</AdMessageId>
  <DetailsUnion xmlns:d2p1="http://schemas.datacontract.org/2004/07/Entities.Common">
    <d2p1:AbsoluteOnSelectedMerchandise>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:AbsoluteOnSelectedMerchandise>
    <d2p1:AbsoluteRangeOnAllMerchandise>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Start>0</d2p1:Start>
      <d2p1:Stop>0</d2p1:Stop>
    </d2p1:AbsoluteRangeOnAllMerchandise>
    <d2p1:Freetext>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Title>String</d2p1:Title>
    </d2p1:Freetext>
    <d2p1:HappyHour>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
    </d2p1:HappyHour>
    <d2p1:NewArrivals>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
    </d2p1:NewArrivals>
    <d2p1:PercentageOfYourFoodBill>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Percentage>0</d2p1:Percentage>
    </d2p1:PercentageOfYourFoodBill>
    <d2p1:PercentageOnAllMerchandise>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:PercentageOnAllMerchandise>
    <d2p1:PercentageOnSelectedMerchandise>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:PercentageOnSelectedMerchandise>
    <d2p1:PercentageRangeOnAllMerchandise>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Start>0</d2p1:Start>
      <d2p1:Stop>0</d2p1:Stop>
    </d2p1:PercentageRangeOnAllMerchandise>
    <d2p1:SaveFoodAndMoney>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:SaveFoodAndMoney>
    <d2p1:SomeFreeTablesLeftToday>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
    </d2p1:SomeFreeTablesLeftToday>
    <d2p1:TodaysBreakFastOffer>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:TodaysBreakFastOffer>
    <d2p1:TodaysDinnerOffer>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:TodaysDinnerOffer>
    <d2p1:TodaysLunchOffer>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:TodaysLunchOffer>
    <d2p1:TotalAmountOverXgivesYdiscount>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:IfTotalAmountMoreThanX>0</d2p1:IfTotalAmountMoreThanX>
      <d2p1:ThenYouGetDiscountPercentageY>0</d2p1:ThenYouGetDiscountPercentageY>
    </d2p1:TotalAmountOverXgivesYdiscount>
    <d2p1:TwoDishesForThePriceOfOne>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
    </d2p1:TwoDishesForThePriceOfOne>
    <d2p1:XforY>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:MoreInformation xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:MoreInformation>
      <d2p1:IfYouBuyX>0</d2p1:IfYouBuyX>
      <d2p1:ThenYouGetY>0</d2p1:ThenYouGetY>
    </d2p1:XforY>
  </DetailsUnion>
</UpdateRunningAdMessageRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<UpdateRunningAdMessageResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BusinessApi.Dto">
  <AdMessageId>0</AdMessageId>
</UpdateRunningAdMessageResponse>