Requires any of the roles: | Admin, TeamAdmin, MobileApp | Requires the permission: | ReadData |
All Verbs | /ksiCards/Search | ||
---|---|---|---|
All Verbs | /ksiCards/Search/{Id} | ||
All Verbs | /ksiCards/Search/Club/{KsiClubId}/{ExpiryYear} | ||
All Verbs | /ksiCards/Search/Club/CardType/{KsiClubId}/{KsiCardType}/{ExpiryYear} |
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 KsiCards:
id: Optional[int] = None
creation_date: Optional[datetime.datetime] = None
phone_full_verification_number: Optional[str] = None
device_id: Optional[str] = None
ksi_card_type_id: Optional[str] = None
ksi_club_id: Optional[str] = None
holder_name: Optional[str] = None
can_transfer_to_phone_full_number: Optional[str] = None
can_transfer_to_n_name: Optional[str] = None
exp_year: Optional[str] = None
exp_month: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class KsiCardsSearchResult:
cards: Optional[List[KsiCards]] = None
status_code: Optional[int] = None
message: Optional[str] = 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 KsiCardsSearchRequest:
id: Optional[int] = None
ksi_club_id: Optional[str] = None
expiry_year: Optional[str] = None
ksi_card_type: Optional[str] = None
full_phone_number: Optional[str] = None
only_valid_for_event_id: Optional[int] = None
request_unix_u_t_c_time_stamp: Optional[int] = None
signature: Optional[RequestSignature] = None
Python KsiCardsSearchRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /ksiCards/Search HTTP/1.1
Host: stubbur-autoupdates-live.smartnewapis.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<KsiCardsSearchRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
<ExpiryYear>String</ExpiryYear>
<FullPhoneNumber>String</FullPhoneNumber>
<Id>0</Id>
<KsiCardType>String</KsiCardType>
<KsiClubId>String</KsiClubId>
<OnlyValidForEventId>0</OnlyValidForEventId>
<RequestUnixUTCTimeStamp>0</RequestUnixUTCTimeStamp>
<Signature>
<Signature>String</Signature>
<SystemId>String</SystemId>
<SystemSecret>String</SystemSecret>
</Signature>
</KsiCardsSearchRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <KsiCardsSearchResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel"> <Cards xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types"> <d2p1:KsiCards> <d2p1:CanTransferToNName>String</d2p1:CanTransferToNName> <d2p1:CanTransferToPhoneFullNumber>String</d2p1:CanTransferToPhoneFullNumber> <d2p1:CreationDate>0001-01-01T00:00:00</d2p1:CreationDate> <d2p1:DeviceId>String</d2p1:DeviceId> <d2p1:ExpMonth>String</d2p1:ExpMonth> <d2p1:ExpYear>String</d2p1:ExpYear> <d2p1:HolderName>String</d2p1:HolderName> <d2p1:Id>0</d2p1:Id> <d2p1:KsiCardTypeId>String</d2p1:KsiCardTypeId> <d2p1:KsiClubId>String</d2p1:KsiClubId> <d2p1:PhoneFullVerificationNumber>String</d2p1:PhoneFullVerificationNumber> </d2p1:KsiCards> </Cards> <Message>String</Message> <StatusCode>0</StatusCode> </KsiCardsSearchResult>