| POST | /selfService/transferTicket/targetEvents | Events a buyer may exchange their ticket onto (same series, same owner, still upcoming, source event included) |
|---|
import Foundation
import ServiceStack
public class SelfServiceTransferTargetEventsRequest : Codable
{
public var ticketTokenId:String?
public var buyerPhone:String?
required public init(){}
}
public class SelfServiceTransferTargetEventsResult : SelfServiceTransferResultBase
{
public var eventSeriesId:Int?
public var sourceEventId:Int?
public var sourceEventName:String?
public var sourceEventTimeOfEvent:Date?
public var sourceTicketPrice:Double?
public var sourceTicketTypeName:String?
public var events:[SelfServiceTargetEvent] = []
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case eventSeriesId
case sourceEventId
case sourceEventName
case sourceEventTimeOfEvent
case sourceTicketPrice
case sourceTicketTypeName
case events
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
eventSeriesId = try container.decodeIfPresent(Int.self, forKey: .eventSeriesId)
sourceEventId = try container.decodeIfPresent(Int.self, forKey: .sourceEventId)
sourceEventName = try container.decodeIfPresent(String.self, forKey: .sourceEventName)
sourceEventTimeOfEvent = try container.decodeIfPresent(Date.self, forKey: .sourceEventTimeOfEvent)
sourceTicketPrice = try container.decodeIfPresent(Double.self, forKey: .sourceTicketPrice)
sourceTicketTypeName = try container.decodeIfPresent(String.self, forKey: .sourceTicketTypeName)
events = try container.decodeIfPresent([SelfServiceTargetEvent].self, forKey: .events) ?? []
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if eventSeriesId != nil { try container.encode(eventSeriesId, forKey: .eventSeriesId) }
if sourceEventId != nil { try container.encode(sourceEventId, forKey: .sourceEventId) }
if sourceEventName != nil { try container.encode(sourceEventName, forKey: .sourceEventName) }
if sourceEventTimeOfEvent != nil { try container.encode(sourceEventTimeOfEvent, forKey: .sourceEventTimeOfEvent) }
if sourceTicketPrice != nil { try container.encode(sourceTicketPrice, forKey: .sourceTicketPrice) }
if sourceTicketTypeName != nil { try container.encode(sourceTicketTypeName, forKey: .sourceTicketTypeName) }
if events.count > 0 { try container.encode(events, forKey: .events) }
}
}
public class SelfServiceTransferResultBase : Codable
{
public var ok:Bool?
public var statusCode:Int?
public var code:String?
public var message:String?
required public init(){}
}
public class SelfServiceTargetEvent : Codable
{
public var eventId:Int?
public var eventName:String?
public var timeOfEvent:Date?
public var isSeated:Bool?
public var isSourceEvent:Bool?
public var saleNotOpenYet:Bool?
public var ticketSaleStartsUTC:Date?
required public init(){}
}
Swift SelfServiceTransferTargetEventsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /selfService/transferTicket/targetEvents HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: application/json
Content-Type: application/json
Content-Length: length
{"ticketTokenId":"String","buyerPhone":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"eventSeriesId":0,"sourceEventId":0,"sourceEventName":"String","sourceEventTimeOfEvent":"0001-01-01T00:00:00.0000000","sourceTicketPrice":0,"sourceTicketTypeName":"String","events":[{"eventId":0,"eventName":"String","timeOfEvent":"0001-01-01T00:00:00.0000000","isSeated":false,"isSourceEvent":false,"saleNotOpenYet":false,"ticketSaleStartsUTC":"0001-01-01T00:00:00.0000000"}],"ok":false,"statusCode":0,"code":"String","message":"String"}