Requires any of the roles: | Admin, TeamAdmin, MobileApp | Requires the permission: | ReadData |
GET POST | /ticketOrder |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using TicketUserServices.ServiceModel;
using TicketUserServices.ServiceModel.Types;
using BorgunRPGData;
namespace BorgunRPGData
{
public partial class Borgun3DFinal3DSecureInfo
{
public virtual string DataType { get; set; }
public virtual string MpiToken { get; set; }
}
public partial class Borgun3DFinalPaymentMethodInfo
{
public virtual string PaymentType { get; set; }
public virtual string Token { get; set; }
}
public partial class Borgun3DFinalRequest
{
public virtual string TransactionType { get; set; }
public virtual int Amount { get; set; }
public virtual string Currency { get; set; }
public virtual DateTime? TransactionDate { get; set; }
public virtual string OrderId { get; set; }
public virtual Borgun3DFinalPaymentMethodInfo PaymentMethod { get; set; }
public virtual Borgun3DFinal3DSecureInfo ThreeDSecure { get; set; }
}
public partial class BorgunApplePayFinalInfo
{
public virtual string OrderId { get; set; }
public virtual BorgunApplePayThreeDSecureInfo ThreeDSecure { get; set; }
}
public partial class BorgunApplePayThreeDSecureInfo
{
public virtual string DataType { get; set; }
public virtual string SecurityLevelInd { get; set; }
public virtual string CAVV { get; set; }
public virtual string UCAF { get; set; }
}
}
namespace TicketUserServices.ServiceModel
{
public partial class EventTicketWithDetails
{
public EventTicketWithDetails()
{
EventTicketDetails = new List<TicketDetailsInfo>{};
}
public virtual Ticket EventTicket { get; set; }
public virtual List<TicketDetailsInfo> EventTicketDetails { get; set; }
public virtual EventDetails EventInfo { get; set; }
public virtual bool EventIsToday { get; set; }
public virtual bool EventisLive { get; set; }
public virtual long MinutesToEvent { get; set; }
}
public partial class ExternalGateAccessCodeInfo
{
public virtual string Code { get; set; }
public virtual string CodeType { get; set; }
public virtual string CodeUrl { get; set; }
public virtual DateTime ValidFrom { get; set; }
public virtual DateTime ValidTo { get; set; }
}
public partial class PaymentMethodCreditCardInfo
{
public virtual string PaymentType { get; set; }
public virtual string Token { get; set; }
public virtual string PAN { get; set; }
public virtual string ExpYear { get; set; }
public virtual string ExpMonth { get; set; }
public virtual string CVC { get; set; }
}
public partial class PaymentRequestCreditCard
{
public virtual PaymentMethodCreditCardInfo PaymentMethod { get; set; }
public virtual decimal Amount { get; set; }
public virtual string Currency { get; set; }
public virtual string OrderId { get; set; }
public virtual DateTime TransActionDate { get; set; }
public virtual bool SaveCardToToken { get; set; }
}
public partial class RequestSignature
{
public virtual string SystemId { get; set; }
public virtual string SystemSecret { get; set; }
public virtual string Signature { get; set; }
}
public partial class TicketDetailsInfo
: TicketDetails
{
public TicketDetailsInfo()
{
TicketHolders = new List<TicketHolderInfo>{};
GateAccessCodes = new List<ExternalGateAccessCodeInfo>{};
}
public virtual bool HolderInfoRequired { get; set; }
public virtual bool? BlockTransfer { get; set; }
public virtual string TicketTypeImageUrl { get; set; }
public virtual List<TicketHolderInfo> TicketHolders { get; set; }
public virtual List<ExternalGateAccessCodeInfo> GateAccessCodes { get; set; }
}
public partial class TicketHolderInfo
{
public virtual string Name { get; set; }
public virtual string FullPhoneNumber { get; set; }
public virtual string HolderId { get; set; }
public virtual int? SeatId { get; set; }
public virtual string SeatDisplayString { get; set; }
}
public partial class TicketHoldersList
{
public TicketHoldersList()
{
TicketHolders = new List<TicketHolderInfo>{};
}
public virtual List<TicketHolderInfo> TicketHolders { get; set; }
public virtual bool HolderInfoRequired { get; set; }
}
public partial class TicketOrder
{
public TicketOrder()
{
OrderDetails = new List<TicketDetails>{};
}
public virtual TeamPassType TeamPass { get; set; }
public virtual Ticket Order { get; set; }
public virtual List<TicketDetails> OrderDetails { get; set; }
public virtual TicketHoldersList TicketHolders { get; set; }
public virtual string SeatReservationTokenId { get; set; }
public virtual PaymentRequestCreditCard CardInfo { get; set; }
public virtual string PaymentPhoneNumber { get; set; }
public virtual int? PaymentCardId { get; set; }
public virtual long RequestUnixUTCTimeStamp { get; set; }
public virtual RequestSignature Signature { get; set; }
public virtual string PhoneVerificationNumber { get; set; }
public virtual string DeviceId { get; set; }
public virtual bool? DontReturnTickets { get; set; }
public virtual string AppMetaData { get; set; }
public virtual BorgunApplePayFinalInfo ApplePayInfo { get; set; }
public virtual Borgun3DFinalRequest Borgun3DFinalInfo { get; set; }
}
public partial class TicketOrderResult
{
public virtual EventTicketWithDetails TicketAndDetails { get; set; }
public virtual int StatusCode { get; set; }
public virtual string Message { get; set; }
}
}
namespace TicketUserServices.ServiceModel.Types
{
public partial class EventDetails
{
public virtual int ID { get; set; }
public virtual string Name { get; set; }
public virtual string Description { get; set; }
public virtual string ExternalReference { get; set; }
public virtual DateTime TimeOfEvent { get; set; }
public virtual int? EventLocationId { get; set; }
public virtual int? EventSeriesId { get; set; }
public virtual int? EventOwnerId { get; set; }
public virtual bool EventActive { get; set; }
public virtual string EventOwnerName { get; set; }
public virtual string ExternalOwnerId { get; set; }
public virtual string TeamAwayId { get; set; }
public virtual string TeamAwayName { get; set; }
public virtual string EventSeriesName { get; set; }
public virtual string EventLocationName { get; set; }
public virtual decimal Latitude { get; set; }
public virtual decimal Longitude { get; set; }
public virtual string DefaultValues { get; set; }
public virtual string ExternalReferenceType { get; set; }
public virtual bool? EventSeriesActive { get; set; }
public virtual string AllowedKsiCard { get; set; }
public virtual string SeriesId { get; set; }
public virtual bool? SeriesShowByDefault { get; set; }
public virtual bool? PostponedNoDate { get; set; }
public virtual string AwayTeamExternalId { get; set; }
public virtual string SportGenderId { get; set; }
public virtual string ExternalIdType { get; set; }
public virtual bool? SeriesEventSaleSuspended { get; set; }
public virtual DateTime? SeriesSaleSuspensionEventStartDate { get; set; }
public virtual DateTime? SeriesSaleSuspensionEventEndDate { get; set; }
public virtual bool? SaleIsActive { get; set; }
public virtual bool? HideEvent { get; set; }
public virtual string ImageUrl2 { get; set; }
public virtual string DirectAccessCode { get; set; }
public virtual string ImageUrl { get; set; }
public virtual string DetailedDescription { get; set; }
public virtual string OwnerImageUrl { get; set; }
public virtual string OwnerImageUrl2 { get; set; }
public virtual bool? OwnerCardsNotAllowed { get; set; }
public virtual string SeatingImageUrl { get; set; }
public virtual DateTime? EndOfEvent { get; set; }
public virtual DateTime? EndOfEventUTC { get; set; }
public virtual string TimeZone { get; set; }
public virtual DateTime? TimeOfEventUTC { get; set; }
}
public partial class TeamPassType
{
public virtual int ID { get; set; }
public virtual string Name { get; set; }
public virtual decimal Price { get; set; }
public virtual int SeriesId { get; set; }
public virtual int OwnerId { get; set; }
public virtual int? SeriesTicketType { get; set; }
public virtual int? SeriesOwnerTicketType { get; set; }
public virtual bool? isActive { get; set; }
public virtual bool? OnlyForTeamUse { get; set; }
public virtual DateTime? TimestampCreated { get; set; }
public virtual DateTime? TimestampLastChanged { get; set; }
}
public partial class Ticket
{
public virtual int ID { get; set; }
public virtual int? UserId { get; set; }
public virtual int? UserAuthId { get; set; }
public virtual int EventId { get; set; }
public virtual DateTime TimestampBought { get; set; }
public virtual DateTime TimestampActivated { get; set; }
public virtual DateTime TimeStampOrdered { get; set; }
public virtual string DeviceId { get; set; }
public virtual int PhoneVerificationId { get; set; }
public virtual string PaymentMethodId { get; set; }
public virtual string PaymentReference { get; set; }
public virtual string TicketStatus { get; set; }
public virtual string PhoneVerificationNumber { get; set; }
public virtual string TicketTokenId { get; set; }
public virtual string PaymentPhoneNumber { get; set; }
public virtual int? TicketTransferredFrom { get; set; }
public virtual string OriginalPhoneVerificationNumber { get; set; }
public virtual int? TeamPassId { get; set; }
public virtual string PaymentId { get; set; }
public virtual bool? IsFree { get; set; }
public virtual string FreeTicketFromId { get; set; }
public virtual string FreeTicketFromTypeId { get; set; }
public virtual string FreeTicketCardTypeId { get; set; }
public virtual int? FreeTicketCardId { get; set; }
public virtual decimal? TotalPaidForTicket { get; set; }
public virtual string SeatsReservationId { get; set; }
public virtual DateTime? TimeStampLastStatusChange { get; set; }
public virtual string LastTicketStatus { get; set; }
public virtual string ScanCode { get; set; }
public virtual string ScanCodeType { get; set; }
public virtual bool? ScanCodeNotActive { get; set; }
public virtual bool? MultipleScanCodes { get; set; }
public virtual string Currency { get; set; }
public virtual bool TicketHasExpired { get; set; }
}
public partial class TicketDetails
{
public virtual int ID { get; set; }
public virtual int TicketId { get; set; }
public virtual int? EventSeriesTicketType { get; set; }
public virtual int? EventSeriesOwnerTicketType { get; set; }
public virtual decimal TicketPrice { get; set; }
public virtual decimal TotalPrice { get; set; }
public virtual int Count { get; set; }
public virtual string TicketColor { get; set; }
public virtual bool? ShowUsedTickets { get; set; }
public virtual string TicketName { get; set; }
public virtual string TicketDisplayString { get; set; }
public virtual int? TicketDetailsTransferredFrom { get; set; }
public virtual int? TeamPassId { get; set; }
public virtual bool? IsSpecialTicket { get; set; }
public virtual string SpecialTicketId { get; set; }
public virtual bool? JustChangedBySQL { get; set; }
public virtual DateTime? SQLJustChangedTimeStamp { get; set; }
public virtual string Currency { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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 }