TicketUserServices

<back to all web services

TicketOrder

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
GET POST/ticketOrder
namespace TicketUserServices.ServiceModel

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type Ticket() = 
        member val ID:Int32 = new Int32() with get,set
        member val UserId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val UserAuthId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val EventId:Int32 = new Int32() with get,set
        member val TimestampBought:DateTime = new DateTime() with get,set
        member val TimestampActivated:DateTime = new DateTime() with get,set
        member val TimeStampOrdered:DateTime = new DateTime() with get,set
        member val DeviceId:String = null with get,set
        member val PhoneVerificationId:Int32 = new Int32() with get,set
        member val PaymentMethodId:String = null with get,set
        member val PaymentReference:String = null with get,set
        member val TicketStatus:String = null with get,set
        member val PhoneVerificationNumber:String = null with get,set
        member val TicketTokenId:String = null with get,set
        member val PaymentPhoneNumber:String = null with get,set
        member val TicketTransferredFrom:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val OriginalPhoneVerificationNumber:String = null with get,set
        member val TeamPassId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val PaymentId:String = null with get,set
        member val IsFree:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val FreeTicketFromId:String = null with get,set
        member val FreeTicketFromTypeId:String = null with get,set
        member val FreeTicketCardTypeId:String = null with get,set
        member val FreeTicketCardId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TotalPaidForTicket:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val SeatsReservationId:String = null with get,set
        member val TimeStampLastStatusChange:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val LastTicketStatus:String = null with get,set
        member val ScanCode:String = null with get,set
        member val ScanCodeType:String = null with get,set
        member val ScanCodeNotActive:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val MultipleScanCodes:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val Currency:String = null with get,set
        member val TicketHasExpired:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type TicketDetails() = 
        member val ID:Int32 = new Int32() with get,set
        member val TicketId:Int32 = new Int32() with get,set
        member val EventSeriesTicketType:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val EventSeriesOwnerTicketType:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TicketPrice:Decimal = new Decimal() with get,set
        member val TotalPrice:Decimal = new Decimal() with get,set
        member val Count:Int32 = new Int32() with get,set
        member val TicketColor:String = null with get,set
        member val ShowUsedTickets:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val TicketName:String = null with get,set
        member val TicketDisplayString:String = null with get,set
        member val TicketDetailsTransferredFrom:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TeamPassId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val IsSpecialTicket:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SpecialTicketId:String = null with get,set
        member val JustChangedBySQL:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SQLJustChangedTimeStamp:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Currency:String = null with get,set

    [<AllowNullLiteral>]
    type TicketHolderInfo() = 
        member val Name:String = null with get,set
        member val FullPhoneNumber:String = null with get,set
        member val HolderId:String = null with get,set
        member val SeatId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SeatDisplayString:String = null with get,set

    [<AllowNullLiteral>]
    type ExternalGateAccessCodeInfo() = 
        member val Code:String = null with get,set
        member val CodeType:String = null with get,set
        member val CodeUrl:String = null with get,set
        member val ValidFrom:DateTime = new DateTime() with get,set
        member val ValidTo:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type TicketDetailsInfo() = 
        inherit TicketDetails()
        member val HolderInfoRequired:Boolean = new Boolean() with get,set
        member val BlockTransfer:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val TicketTypeImageUrl:String = null with get,set
        member val TicketHolders:ResizeArray<TicketHolderInfo> = new ResizeArray<TicketHolderInfo>() with get,set
        member val GateAccessCodes:ResizeArray<ExternalGateAccessCodeInfo> = new ResizeArray<ExternalGateAccessCodeInfo>() with get,set

    [<AllowNullLiteral>]
    type EventDetails() = 
        member val ID:Int32 = new Int32() with get,set
        member val Name:String = null with get,set
        member val Description:String = null with get,set
        member val ExternalReference:String = null with get,set
        member val TimeOfEvent:DateTime = new DateTime() with get,set
        member val EventLocationId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val EventSeriesId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val EventOwnerId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val EventActive:Boolean = new Boolean() with get,set
        member val EventOwnerName:String = null with get,set
        member val ExternalOwnerId:String = null with get,set
        member val TeamAwayId:String = null with get,set
        member val TeamAwayName:String = null with get,set
        member val EventSeriesName:String = null with get,set
        member val EventLocationName:String = null with get,set
        member val Latitude:Decimal = new Decimal() with get,set
        member val Longitude:Decimal = new Decimal() with get,set
        member val DefaultValues:String = null with get,set
        member val ExternalReferenceType:String = null with get,set
        member val EventSeriesActive:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val AllowedKsiCard:String = null with get,set
        member val SeriesId:String = null with get,set
        member val SeriesShowByDefault:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val PostponedNoDate:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val AwayTeamExternalId:String = null with get,set
        member val SportGenderId:String = null with get,set
        member val ExternalIdType:String = null with get,set
        member val SeriesEventSaleSuspended:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SeriesSaleSuspensionEventStartDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val SeriesSaleSuspensionEventEndDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val SaleIsActive:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val HideEvent:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val ImageUrl2:String = null with get,set
        member val DirectAccessCode:String = null with get,set
        member val ImageUrl:String = null with get,set
        member val DetailedDescription:String = null with get,set
        member val OwnerImageUrl:String = null with get,set
        member val OwnerImageUrl2:String = null with get,set
        member val OwnerCardsNotAllowed:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SeatingImageUrl:String = null with get,set
        member val EndOfEvent:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val EndOfEventUTC:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val TimeZone:String = null with get,set
        member val TimeOfEventUTC:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type EventTicketWithDetails() = 
        member val EventTicket:Ticket = null with get,set
        member val EventTicketDetails:ResizeArray<TicketDetailsInfo> = new ResizeArray<TicketDetailsInfo>() with get,set
        member val EventInfo:EventDetails = null with get,set
        member val EventIsToday:Boolean = new Boolean() with get,set
        member val EventisLive:Boolean = new Boolean() with get,set
        member val MinutesToEvent:Int64 = new Int64() with get,set

    [<AllowNullLiteral>]
    type TicketOrderResult() = 
        member val TicketAndDetails:EventTicketWithDetails = null with get,set
        member val StatusCode:Int32 = new Int32() with get,set
        member val Message:String = null with get,set

    [<AllowNullLiteral>]
    type TeamPassType() = 
        member val ID:Int32 = new Int32() with get,set
        member val Name:String = null with get,set
        member val Price:Decimal = new Decimal() with get,set
        member val SeriesId:Int32 = new Int32() with get,set
        member val OwnerId:Int32 = new Int32() with get,set
        member val SeriesTicketType:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SeriesOwnerTicketType:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val isActive:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val OnlyForTeamUse:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val TimestampCreated:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val TimestampLastChanged:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    [<AllowNullLiteral>]
    type TicketHoldersList() = 
        member val TicketHolders:ResizeArray<TicketHolderInfo> = new ResizeArray<TicketHolderInfo>() with get,set
        member val HolderInfoRequired:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type PaymentMethodCreditCardInfo() = 
        member val PaymentType:String = null with get,set
        member val Token:String = null with get,set
        member val PAN:String = null with get,set
        member val ExpYear:String = null with get,set
        member val ExpMonth:String = null with get,set
        member val CVC:String = null with get,set

    [<AllowNullLiteral>]
    type PaymentRequestCreditCard() = 
        member val PaymentMethod:PaymentMethodCreditCardInfo = null with get,set
        member val Amount:Decimal = new Decimal() with get,set
        member val Currency:String = null with get,set
        member val OrderId:String = null with get,set
        member val TransActionDate:DateTime = new DateTime() with get,set
        member val SaveCardToToken:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type RequestSignature() = 
        member val SystemId:String = null with get,set
        member val SystemSecret:String = null with get,set
        member val Signature:String = null with get,set

    [<AllowNullLiteral>]
    type BorgunApplePayThreeDSecureInfo() = 
        member val DataType:String = null with get,set
        member val SecurityLevelInd:String = null with get,set
        member val CAVV:String = null with get,set
        member val UCAF:String = null with get,set

    [<AllowNullLiteral>]
    type BorgunApplePayFinalInfo() = 
        member val OrderId:String = null with get,set
        member val ThreeDSecure:BorgunApplePayThreeDSecureInfo = null with get,set

    [<AllowNullLiteral>]
    type Borgun3DFinalPaymentMethodInfo() = 
        member val PaymentType:String = null with get,set
        member val Token:String = null with get,set

    [<AllowNullLiteral>]
    type Borgun3DFinal3DSecureInfo() = 
        member val DataType:String = null with get,set
        member val MpiToken:String = null with get,set

    [<AllowNullLiteral>]
    type Borgun3DFinalRequest() = 
        member val TransactionType:String = null with get,set
        member val Amount:Int32 = new Int32() with get,set
        member val Currency:String = null with get,set
        member val TransactionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val OrderId:String = null with get,set
        member val PaymentMethod:Borgun3DFinalPaymentMethodInfo = null with get,set
        member val ThreeDSecure:Borgun3DFinal3DSecureInfo = null with get,set

    [<AllowNullLiteral>]
    type TicketOrder() = 
        member val TeamPass:TeamPassType = null with get,set
        member val Order:Ticket = null with get,set
        member val OrderDetails:ResizeArray<TicketDetails> = new ResizeArray<TicketDetails>() with get,set
        member val TicketHolders:TicketHoldersList = null with get,set
        member val SeatReservationTokenId:String = null with get,set
        member val CardInfo:PaymentRequestCreditCard = null with get,set
        member val PaymentPhoneNumber:String = null with get,set
        member val PaymentCardId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RequestUnixUTCTimeStamp:Int64 = new Int64() with get,set
        member val Signature:RequestSignature = null with get,set
        member val PhoneVerificationNumber:String = null with get,set
        member val DeviceId:String = null with get,set
        member val DontReturnTickets:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val AppMetaData:String = null with get,set
        member val ApplePayInfo:BorgunApplePayFinalInfo = null with get,set
        member val Borgun3DFinalInfo:Borgun3DFinalRequest = null with get,set

F# TicketOrder 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 /ticketOrder HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	teamPass: 
	{
		id: 0,
		name: String,
		price: 0,
		seriesId: 0,
		ownerId: 0,
		seriesTicketType: 0,
		seriesOwnerTicketType: 0,
		isActive: False,
		onlyForTeamUse: False,
		timestampCreated: 0001-01-01,
		timestampLastChanged: 0001-01-01
	},
	order: 
	{
		id: 0,
		userId: 0,
		userAuthId: 0,
		eventId: 0,
		timestampBought: 0001-01-01,
		timestampActivated: 0001-01-01,
		timeStampOrdered: 0001-01-01,
		deviceId: String,
		phoneVerificationId: 0,
		paymentMethodId: String,
		paymentReference: String,
		ticketStatus: String,
		phoneVerificationNumber: String,
		ticketTokenId: String,
		paymentPhoneNumber: String,
		ticketTransferredFrom: 0,
		originalPhoneVerificationNumber: String,
		teamPassId: 0,
		paymentId: String,
		isFree: False,
		freeTicketFromId: String,
		freeTicketFromTypeId: String,
		freeTicketCardTypeId: String,
		freeTicketCardId: 0,
		totalPaidForTicket: 0,
		seatsReservationId: String,
		timeStampLastStatusChange: 0001-01-01,
		lastTicketStatus: String,
		scanCode: String,
		scanCodeType: String,
		scanCodeNotActive: False,
		multipleScanCodes: False,
		currency: String,
		ticketHasExpired: False
	},
	orderDetails: 
	[
		{
			id: 0,
			ticketId: 0,
			eventSeriesTicketType: 0,
			eventSeriesOwnerTicketType: 0,
			ticketPrice: 0,
			totalPrice: 0,
			count: 0,
			ticketColor: String,
			showUsedTickets: False,
			ticketName: String,
			ticketDisplayString: String,
			ticketDetailsTransferredFrom: 0,
			teamPassId: 0,
			isSpecialTicket: False,
			specialTicketId: String,
			justChangedBySQL: False,
			sqlJustChangedTimeStamp: 0001-01-01,
			currency: String
		}
	],
	ticketHolders: 
	{
		ticketHolders: 
		[
			{
				name: String,
				fullPhoneNumber: String,
				holderId: String,
				seatId: 0,
				seatDisplayString: String
			}
		],
		holderInfoRequired: False
	},
	seatReservationTokenId: String,
	cardInfo: 
	{
		paymentMethod: 
		{
			paymentType: String,
			token: String,
			pan: String,
			expYear: String,
			expMonth: String,
			cvc: String
		},
		amount: 0,
		currency: String,
		orderId: String,
		transActionDate: 0001-01-01,
		saveCardToToken: False
	},
	paymentPhoneNumber: String,
	paymentCardId: 0,
	requestUnixUTCTimeStamp: 0,
	signature: 
	{
		systemId: String,
		systemSecret: String,
		signature: String
	},
	phoneVerificationNumber: String,
	deviceId: String,
	dontReturnTickets: False,
	appMetaData: String,
	applePayInfo: 
	{
		orderId: String,
		threeDSecure: 
		{
			dataType: String,
			securityLevelInd: String,
			cavv: String,
			ucaf: String
		}
	},
	borgun3DFinalInfo: 
	{
		transactionType: String,
		amount: 0,
		currency: String,
		transactionDate: 0001-01-01,
		orderId: String,
		paymentMethod: 
		{
			paymentType: String,
			token: String
		},
		threeDSecure: 
		{
			dataType: String,
			mpiToken: String
		}
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ticketAndDetails: 
	{
		eventTicket: 
		{
			id: 0,
			userId: 0,
			userAuthId: 0,
			eventId: 0,
			timestampBought: 0001-01-01,
			timestampActivated: 0001-01-01,
			timeStampOrdered: 0001-01-01,
			deviceId: String,
			phoneVerificationId: 0,
			paymentMethodId: String,
			paymentReference: String,
			ticketStatus: String,
			phoneVerificationNumber: String,
			ticketTokenId: String,
			paymentPhoneNumber: String,
			ticketTransferredFrom: 0,
			originalPhoneVerificationNumber: String,
			teamPassId: 0,
			paymentId: String,
			isFree: False,
			freeTicketFromId: String,
			freeTicketFromTypeId: String,
			freeTicketCardTypeId: String,
			freeTicketCardId: 0,
			totalPaidForTicket: 0,
			seatsReservationId: String,
			timeStampLastStatusChange: 0001-01-01,
			lastTicketStatus: String,
			scanCode: String,
			scanCodeType: String,
			scanCodeNotActive: False,
			multipleScanCodes: False,
			currency: String,
			ticketHasExpired: False
		},
		eventTicketDetails: 
		[
			{
				
			}
		],
		eventInfo: 
		{
			id: 0,
			name: String,
			description: String,
			externalReference: String,
			timeOfEvent: 0001-01-01,
			eventLocationId: 0,
			eventSeriesId: 0,
			eventOwnerId: 0,
			eventActive: False,
			eventOwnerName: String,
			externalOwnerId: String,
			teamAwayId: String,
			teamAwayName: String,
			eventSeriesName: String,
			eventLocationName: String,
			latitude: 0,
			longitude: 0,
			defaultValues: String,
			externalReferenceType: String,
			eventSeriesActive: False,
			allowedKsiCard: String,
			seriesId: String,
			seriesShowByDefault: False,
			postponedNoDate: False,
			awayTeamExternalId: String,
			sportGenderId: String,
			externalIdType: String,
			seriesEventSaleSuspended: False,
			seriesSaleSuspensionEventStartDate: 0001-01-01,
			seriesSaleSuspensionEventEndDate: 0001-01-01,
			saleIsActive: False,
			hideEvent: False,
			imageUrl2: String,
			directAccessCode: String,
			imageUrl: String,
			detailedDescription: String,
			ownerImageUrl: String,
			ownerImageUrl2: String,
			ownerCardsNotAllowed: False,
			seatingImageUrl: String,
			endOfEvent: 0001-01-01,
			endOfEventUTC: 0001-01-01,
			timeZone: String,
			timeOfEventUTC: 0001-01-01
		},
		eventIsToday: False,
		eventisLive: False,
		minutesToEvent: 0
	},
	statusCode: 0,
	message: String
}