| POST | /warranty/{saleDetailId}/extend | Extend a Sell-Out | Delete a sell-out you are authorized for |
|---|
import Foundation
import ServiceStack
public class ExtendSellOut : Codable
{
/**
* Unique Identifier of the Sell-out created in Booster
*/
// @ApiMember(Description="Unique Identifier of the Sell-out created in Booster", IsRequired=true)
public var saleDetailId:Int
required public init(){}
}
public class ExtendSellOutResponse : Codable
{
/**
* ccp substatus information
*/
// @ApiMember(Description="ccp substatus information", IsRequired=true)
public var ccpStatus:StatusWarrantyExtension
/**
* ccp main status information
*/
// @ApiMember(Description="ccp main status information", IsRequired=true)
public var boosterStatus:Status
required public init(){}
}
public class StatusWarrantyExtension : Status
{
/**
* Information about if a warranty can be retriggered
*/
// @ApiMember(Description="Information about if a warranty can be retriggered", IsRequired=true)
public var retriggerEnabled:Bool
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case retriggerEnabled
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
retriggerEnabled = try container.decodeIfPresent(Bool.self, forKey: .retriggerEnabled)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if retriggerEnabled != nil { try container.encode(retriggerEnabled, forKey: .retriggerEnabled) }
}
}
public class Status : Codable
{
/**
* Unique Identifier of the Sell-out created in Booster
*/
// @ApiMember(Description="Unique Identifier of the Sell-out created in Booster", IsRequired=true)
public var id:String
/**
* Unique Identifier of the Sell-out created in Booster
*/
// @ApiMember(Description="Unique Identifier of the Sell-out created in Booster", IsRequired=true)
public var Description:String
required public init(){}
}
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 /warranty/{saleDetailId}/extend HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ExtendSellOut xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.Sellout.ServiceModel">
<saleDetailId>0</saleDetailId>
</ExtendSellOut>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ExtendSellOutResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.Sellout.ServiceModel">
<boosterStatus>
<description>String</description>
<id>String</id>
</boosterStatus>
<ccpStatus>
<description>String</description>
<id>String</id>
<retriggerEnabled>false</retriggerEnabled>
</ccpStatus>
</ExtendSellOutResponse>