TicketUserServices

<back to all web services

SplitTicketRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
GET POST/ticketSplit/{TicketTokenId}
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 SplitTicketRequest:
    ticket_id: Optional[int] = None
    ticket_token_id: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Ticket:
    id: Optional[int] = None
    user_id: Optional[int] = None
    user_auth_id: Optional[int] = None
    event_id: Optional[int] = None
    timestamp_bought: Optional[datetime.datetime] = None
    timestamp_activated: Optional[datetime.datetime] = None
    time_stamp_ordered: Optional[datetime.datetime] = None
    device_id: Optional[str] = None
    phone_verification_id: Optional[int] = None
    payment_method_id: Optional[str] = None
    payment_reference: Optional[str] = None
    ticket_status: Optional[str] = None
    phone_verification_number: Optional[str] = None
    ticket_token_id: Optional[str] = None
    payment_phone_number: Optional[str] = None
    ticket_transferred_from: Optional[int] = None
    original_phone_verification_number: Optional[str] = None
    team_pass_id: Optional[int] = None
    payment_id: Optional[str] = None
    is_free: Optional[bool] = None
    free_ticket_from_id: Optional[str] = None
    free_ticket_from_type_id: Optional[str] = None
    free_ticket_card_type_id: Optional[str] = None
    free_ticket_card_id: Optional[int] = None
    total_paid_for_ticket: Optional[Decimal] = None
    seats_reservation_id: Optional[str] = None
    time_stamp_last_status_change: Optional[datetime.datetime] = None
    last_ticket_status: Optional[str] = None
    scan_code: Optional[str] = None
    scan_code_type: Optional[str] = None
    scan_code_not_active: Optional[bool] = None
    multiple_scan_codes: Optional[bool] = None
    currency: Optional[str] = None
    ticket_has_expired: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SplitTicketResponse:
    status_code: Optional[int] = None
    success: Optional[bool] = None
    message: Optional[str] = None
    result: Optional[List[Ticket]] = None

Python SplitTicketRequest DTOs

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

HTTP + XML

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

POST /ticketSplit/{TicketTokenId} HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SplitTicketRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <TicketId>0</TicketId>
  <TicketTokenId>String</TicketTokenId>
</SplitTicketRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SplitTicketResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <Message>String</Message>
  <Result xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
    <d2p1:Ticket>
      <d2p1:Currency>String</d2p1:Currency>
      <d2p1:DeviceId>String</d2p1:DeviceId>
      <d2p1:EventId>0</d2p1:EventId>
      <d2p1:FreeTicketCardId>0</d2p1:FreeTicketCardId>
      <d2p1:FreeTicketCardTypeId>String</d2p1:FreeTicketCardTypeId>
      <d2p1:FreeTicketFromId>String</d2p1:FreeTicketFromId>
      <d2p1:FreeTicketFromTypeId>String</d2p1:FreeTicketFromTypeId>
      <d2p1:ID>0</d2p1:ID>
      <d2p1:IsFree>false</d2p1:IsFree>
      <d2p1:LastTicketStatus>String</d2p1:LastTicketStatus>
      <d2p1:MultipleScanCodes>false</d2p1:MultipleScanCodes>
      <d2p1:OriginalPhoneVerificationNumber>String</d2p1:OriginalPhoneVerificationNumber>
      <d2p1:PaymentId>String</d2p1:PaymentId>
      <d2p1:PaymentMethodId>String</d2p1:PaymentMethodId>
      <d2p1:PaymentPhoneNumber>String</d2p1:PaymentPhoneNumber>
      <d2p1:PaymentReference>String</d2p1:PaymentReference>
      <d2p1:PhoneVerificationId>0</d2p1:PhoneVerificationId>
      <d2p1:PhoneVerificationNumber>String</d2p1:PhoneVerificationNumber>
      <d2p1:ScanCode>String</d2p1:ScanCode>
      <d2p1:ScanCodeNotActive>false</d2p1:ScanCodeNotActive>
      <d2p1:ScanCodeType>String</d2p1:ScanCodeType>
      <d2p1:SeatsReservationId>String</d2p1:SeatsReservationId>
      <d2p1:TeamPassId>0</d2p1:TeamPassId>
      <d2p1:TicketHasExpired>false</d2p1:TicketHasExpired>
      <d2p1:TicketStatus>String</d2p1:TicketStatus>
      <d2p1:TicketTokenId>String</d2p1:TicketTokenId>
      <d2p1:TicketTransferredFrom>0</d2p1:TicketTransferredFrom>
      <d2p1:TimeStampLastStatusChange>0001-01-01T00:00:00</d2p1:TimeStampLastStatusChange>
      <d2p1:TimeStampOrdered>0001-01-01T00:00:00</d2p1:TimeStampOrdered>
      <d2p1:TimestampActivated>0001-01-01T00:00:00</d2p1:TimestampActivated>
      <d2p1:TimestampBought>0001-01-01T00:00:00</d2p1:TimestampBought>
      <d2p1:TotalPaidForTicket>0</d2p1:TotalPaidForTicket>
      <d2p1:UserAuthId>0</d2p1:UserAuthId>
      <d2p1:UserId>0</d2p1:UserId>
    </d2p1:Ticket>
  </Result>
  <StatusCode>0</StatusCode>
  <Success>false</Success>
</SplitTicketResponse>