TicketUserServices

<back to all web services

TicketHoldFindAndReserveRequest

The following routes are available for this service:
POST/ticketHold/findAndReserve
import Foundation
import ServiceStack

public class TicketHoldFindAndReserveRequest : Codable
{
    public var eventId:Int?
    public var lines:[HoldLineRequest] = []
    public var deviceId:String?
    public var phoneVerificationNumber:String?
    public var reservationTokenId:String?
    public var requestUnixUTCTimeStamp:Int?
    public var signature:RequestSignature?

    required public init(){}
}

public class HoldLineRequest : Codable
{
    public var eventSeriesTicketType:Int?
    public var eventSeriesOwnerTicketType:Int?
    public var quantity:Int?

    required public init(){}
}

public class RequestSignature : Codable
{
    public var systemId:String?
    public var systemSecret:String?
    public var signature:String?

    required public init(){}
}

public class TicketHoldResult : Codable
{
    public var statusCode:Int?
    public var message:String?
    public var reservationTokenId:String?
    public var expiresUtc:Date?
    public var lines:[CategoryHoldLine] = []
    public var perCategory:[CategoryAvailability] = []
    public var scarcity:Bool?

    required public init(){}
}

public class CategoryHoldLine : Codable
{
    public var eventSeriesTicketType:Int?
    public var eventSeriesOwnerTicketType:Int?
    public var quantity:Int?

    required public init(){}
}

public class CategoryAvailability : Codable
{
    public var eventSeriesTicketType:Int?
    public var eventSeriesOwnerTicketType:Int?
    public var maxTickets:Int?
    public var remaining:Int?

    required public init(){}
}


Swift TicketHoldFindAndReserveRequest DTOs

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

HTTP + JSV

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

POST /ticketHold/findAndReserve HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	eventId: 0,
	lines: 
	[
		{
			eventSeriesTicketType: 0,
			eventSeriesOwnerTicketType: 0,
			quantity: 0
		}
	],
	deviceId: String,
	phoneVerificationNumber: String,
	reservationTokenId: String,
	requestUnixUTCTimeStamp: 0,
	signature: 
	{
		systemId: String,
		systemSecret: String,
		signature: String
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	statusCode: 0,
	message: String,
	reservationTokenId: String,
	expiresUtc: 0001-01-01,
	lines: 
	[
		{
			eventSeriesTicketType: 0,
			eventSeriesOwnerTicketType: 0,
			quantity: 0
		}
	],
	perCategory: 
	[
		{
			eventSeriesTicketType: 0,
			eventSeriesOwnerTicketType: 0,
			maxTickets: 0,
			remaining: 0
		}
	],
	scarcity: False
}