TicketUserServices

<back to all web services

AppEventSeatingSectionTicketTypesSearchRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
POST/AppSeatingTicketTypesInSectionSearch
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EventSeriesOwnerTicketType:
    id: Optional[int] = None
    name: Optional[str] = None
    default_price: Optional[Decimal] = None
    series_id: Optional[int] = None
    owner_id: Optional[int] = None
    ticket_type_list_order: Optional[int] = None
    is_active: Optional[bool] = None
    max_tickets: Optional[int] = None
    ticket_color: Optional[str] = None
    show_used_tickets: Optional[bool] = None
    can_only_be_bought_with_team_pass: Optional[bool] = None
    is_special_ticket: Optional[bool] = None
    special_ticket_id: Optional[str] = None
    only_for_ksi: Optional[bool] = None
    timestamp_created: Optional[datetime.datetime] = None
    timestamp_last_changed: Optional[datetime.datetime] = None
    tickets_for_sale_per_event: Optional[bool] = None
    image_url: Optional[str] = None
    holder_info_required: Optional[bool] = None
    event_series_owner_seating_section_id: Optional[int] = None
    can_only_be_bought: Optional[bool] = None
    can_not_be_bought: Optional[bool] = None
    block_transfer: Optional[bool] = None
    max_tickets_per_transaction: Optional[int] = None
    force_single_tickets: Optional[bool] = None
    only_for_event: Optional[int] = None
    currency: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MyOwnerCards:
    id: Optional[int] = None
    phone_full_verification_number: Optional[str] = None
    owner_id: Optional[int] = None
    card_type_id: Optional[int] = None
    name: Optional[str] = None
    image_url: Optional[str] = None
    description: Optional[str] = None
    ticket_type_max_tickets: Optional[int] = None
    card_valid_from_u_t_c: Optional[datetime.datetime] = None
    card_valid_to_u_t_c: Optional[datetime.datetime] = None
    current_available_tickets: Optional[int] = None
    initial_max_tickets: Optional[int] = None
    device_id: Optional[str] = None
    holder_id: Optional[str] = None
    holder_name: Optional[str] = None
    holder_email: Optional[str] = None
    initial_store_credit: Optional[Decimal] = None
    current_store_credit: Optional[Decimal] = None
    has_store_credit: Optional[bool] = None
    time_stamp_bought_u_t_c: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AppEventSeatingSectionOwnerTicketTypesItem:
    ticket_type: Optional[EventSeriesOwnerTicketType] = None
    my_cards: Optional[List[MyOwnerCards]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EventSeriesTicketType:
    id: Optional[int] = None
    name: Optional[str] = None
    default_price: Optional[Decimal] = None
    series_id: Optional[int] = None
    ticket_type_list_order: Optional[int] = None
    is_active: Optional[bool] = None
    ticket_color: Optional[str] = None
    show_used_tickets: Optional[bool] = None
    is_special_ticket: Optional[bool] = None
    special_ticket_id: Optional[str] = None
    only_for_ksi: Optional[bool] = None
    holder_info_required: Optional[bool] = None
    block_transfer: Optional[bool] = None
    max_tickets_per_transaction: Optional[int] = None
    currency: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MySeriesControllerCards:
    id: Optional[int] = None
    phone_full_verification_number: Optional[str] = None
    owner_id: Optional[str] = None
    card_type_id: Optional[str] = None
    name: Optional[str] = None
    description: Optional[str] = None
    card_type_owner: Optional[str] = None
    max_tickets_per_event: Optional[int] = None
    creation_date: Optional[datetime.datetime] = None
    device_id: Optional[str] = None
    holder_name: Optional[str] = None
    can_transfer_to_name: Optional[str] = None
    can_transfer_to_phone_full_number: Optional[str] = None
    exp_year: Optional[str] = None
    exp_month: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AppEventSeatingSectionSeriesTicketTypesItem:
    ticket_type: Optional[EventSeriesTicketType] = None
    my_cards: Optional[List[MySeriesControllerCards]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AppEventSeatingSectionTicketTypesSearchResult:
    status_code: Optional[int] = None
    message: Optional[str] = None
    owner_ticket_types: Optional[List[AppEventSeatingSectionOwnerTicketTypesItem]] = None
    series_ticket_types: Optional[List[AppEventSeatingSectionSeriesTicketTypesItem]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RequestSignature:
    system_id: Optional[str] = None
    system_secret: Optional[str] = None
    signature: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AppEventSeatingSectionTicketTypesSearchRequest:
    event_id: Optional[int] = None
    owner_id: Optional[int] = None
    event_section_id: Optional[int] = None
    include_my_payment_cards: Optional[bool] = None
    phone_verification_number: Optional[str] = None
    device_id: Optional[str] = None
    request_unix_u_t_c_time_stamp: Optional[int] = None
    signature: Optional[RequestSignature] = None

Python AppEventSeatingSectionTicketTypesSearchRequest 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 /AppSeatingTicketTypesInSectionSearch HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	eventId: 0,
	ownerId: 0,
	eventSectionId: 0,
	includeMyPaymentCards: False,
	phoneVerificationNumber: String,
	deviceId: 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,
	ownerTicketTypes: 
	[
		{
			ticketType: 
			{
				id: 0,
				name: String,
				defaultPrice: 0,
				seriesId: 0,
				ownerId: 0,
				ticketTypeListOrder: 0,
				isActive: False,
				maxTickets: 0,
				ticketColor: String,
				showUsedTickets: False,
				canOnlyBeBoughtWithTeamPass: False,
				isSpecialTicket: False,
				specialTicketId: String,
				onlyForKsi: False,
				timestampCreated: 0001-01-01,
				timestampLastChanged: 0001-01-01,
				ticketsForSalePerEvent: False,
				imageUrl: String,
				holderInfoRequired: False,
				eventSeriesOwnerSeatingSectionId: 0,
				canOnlyBeBought: False,
				canNotBeBought: False,
				blockTransfer: False,
				maxTicketsPerTransaction: 0,
				forceSingleTickets: False,
				onlyForEvent: 0,
				currency: String
			},
			myCards: 
			[
				{
					id: 0,
					phoneFullVerificationNumber: String,
					ownerId: 0,
					cardTypeId: 0,
					name: String,
					imageUrl: String,
					description: String,
					ticketTypeMaxTickets: 0,
					cardValidFromUTC: 0001-01-01,
					cardValidToUTC: 0001-01-01,
					currentAvailableTickets: 0,
					initialMaxTickets: 0,
					deviceId: String,
					holderId: String,
					holderName: String,
					holderEmail: String,
					initialStoreCredit: 0,
					currentStoreCredit: 0,
					hasStoreCredit: False,
					timeStampBoughtUTC: 0001-01-01
				}
			]
		}
	],
	seriesTicketTypes: 
	[
		{
			ticketType: 
			{
				id: 0,
				name: String,
				defaultPrice: 0,
				seriesId: 0,
				ticketTypeListOrder: 0,
				isActive: False,
				ticketColor: String,
				showUsedTickets: False,
				isSpecialTicket: False,
				specialTicketId: String,
				onlyForKsi: False,
				holderInfoRequired: False,
				blockTransfer: False,
				maxTicketsPerTransaction: 0,
				currency: String
			},
			myCards: 
			[
				{
					id: 0,
					phoneFullVerificationNumber: String,
					ownerId: String,
					cardTypeId: String,
					name: String,
					description: String,
					cardTypeOwner: String,
					maxTicketsPerEvent: 0,
					creationDate: 0001-01-01,
					deviceId: String,
					holderName: String,
					canTransferToName: String,
					canTransferToPhoneFullNumber: String,
					expYear: String,
					expMonth: String
				}
			]
		}
	]
}