TicketUserServices

<back to all web services

FindTicketsRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdmin, MobileAppRequires the permission:ReadData
The following routes are available for this service:
GET POST/ticketOrder/find
import 'package:servicestack/servicestack.dart';

class Ticket implements IConvertible
{
    int? id;
    int? userId;
    int? userAuthId;
    int? eventId;
    DateTime? timestampBought;
    DateTime? timestampActivated;
    DateTime? timeStampOrdered;
    String? deviceId;
    int? phoneVerificationId;
    String? paymentMethodId;
    String? paymentReference;
    String? ticketStatus;
    String? phoneVerificationNumber;
    String? ticketTokenId;
    String? paymentPhoneNumber;
    int? ticketTransferredFrom;
    String? originalPhoneVerificationNumber;
    int? teamPassId;
    String? paymentId;
    bool? isFree;
    String? freeTicketFromId;
    String? freeTicketFromTypeId;
    String? freeTicketCardTypeId;
    int? freeTicketCardId;
    double? totalPaidForTicket;
    String? seatsReservationId;
    DateTime? timeStampLastStatusChange;
    String? lastTicketStatus;
    String? scanCode;
    String? scanCodeType;
    bool? scanCodeNotActive;
    bool? multipleScanCodes;
    String? currency;
    bool? ticketHasExpired;

    Ticket({this.id,this.userId,this.userAuthId,this.eventId,this.timestampBought,this.timestampActivated,this.timeStampOrdered,this.deviceId,this.phoneVerificationId,this.paymentMethodId,this.paymentReference,this.ticketStatus,this.phoneVerificationNumber,this.ticketTokenId,this.paymentPhoneNumber,this.ticketTransferredFrom,this.originalPhoneVerificationNumber,this.teamPassId,this.paymentId,this.isFree,this.freeTicketFromId,this.freeTicketFromTypeId,this.freeTicketCardTypeId,this.freeTicketCardId,this.totalPaidForTicket,this.seatsReservationId,this.timeStampLastStatusChange,this.lastTicketStatus,this.scanCode,this.scanCodeType,this.scanCodeNotActive,this.multipleScanCodes,this.currency,this.ticketHasExpired});
    Ticket.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        userId = json['userId'];
        userAuthId = json['userAuthId'];
        eventId = json['eventId'];
        timestampBought = JsonConverters.fromJson(json['timestampBought'],'DateTime',context!);
        timestampActivated = JsonConverters.fromJson(json['timestampActivated'],'DateTime',context!);
        timeStampOrdered = JsonConverters.fromJson(json['timeStampOrdered'],'DateTime',context!);
        deviceId = json['deviceId'];
        phoneVerificationId = json['phoneVerificationId'];
        paymentMethodId = json['paymentMethodId'];
        paymentReference = json['paymentReference'];
        ticketStatus = json['ticketStatus'];
        phoneVerificationNumber = json['phoneVerificationNumber'];
        ticketTokenId = json['ticketTokenId'];
        paymentPhoneNumber = json['paymentPhoneNumber'];
        ticketTransferredFrom = json['ticketTransferredFrom'];
        originalPhoneVerificationNumber = json['originalPhoneVerificationNumber'];
        teamPassId = json['teamPassId'];
        paymentId = json['paymentId'];
        isFree = json['isFree'];
        freeTicketFromId = json['freeTicketFromId'];
        freeTicketFromTypeId = json['freeTicketFromTypeId'];
        freeTicketCardTypeId = json['freeTicketCardTypeId'];
        freeTicketCardId = json['freeTicketCardId'];
        totalPaidForTicket = JsonConverters.toDouble(json['totalPaidForTicket']);
        seatsReservationId = json['seatsReservationId'];
        timeStampLastStatusChange = JsonConverters.fromJson(json['timeStampLastStatusChange'],'DateTime',context!);
        lastTicketStatus = json['lastTicketStatus'];
        scanCode = json['scanCode'];
        scanCodeType = json['scanCodeType'];
        scanCodeNotActive = json['scanCodeNotActive'];
        multipleScanCodes = json['multipleScanCodes'];
        currency = json['currency'];
        ticketHasExpired = json['ticketHasExpired'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'userId': userId,
        'userAuthId': userAuthId,
        'eventId': eventId,
        'timestampBought': JsonConverters.toJson(timestampBought,'DateTime',context!),
        'timestampActivated': JsonConverters.toJson(timestampActivated,'DateTime',context!),
        'timeStampOrdered': JsonConverters.toJson(timeStampOrdered,'DateTime',context!),
        'deviceId': deviceId,
        'phoneVerificationId': phoneVerificationId,
        'paymentMethodId': paymentMethodId,
        'paymentReference': paymentReference,
        'ticketStatus': ticketStatus,
        'phoneVerificationNumber': phoneVerificationNumber,
        'ticketTokenId': ticketTokenId,
        'paymentPhoneNumber': paymentPhoneNumber,
        'ticketTransferredFrom': ticketTransferredFrom,
        'originalPhoneVerificationNumber': originalPhoneVerificationNumber,
        'teamPassId': teamPassId,
        'paymentId': paymentId,
        'isFree': isFree,
        'freeTicketFromId': freeTicketFromId,
        'freeTicketFromTypeId': freeTicketFromTypeId,
        'freeTicketCardTypeId': freeTicketCardTypeId,
        'freeTicketCardId': freeTicketCardId,
        'totalPaidForTicket': totalPaidForTicket,
        'seatsReservationId': seatsReservationId,
        'timeStampLastStatusChange': JsonConverters.toJson(timeStampLastStatusChange,'DateTime',context!),
        'lastTicketStatus': lastTicketStatus,
        'scanCode': scanCode,
        'scanCodeType': scanCodeType,
        'scanCodeNotActive': scanCodeNotActive,
        'multipleScanCodes': multipleScanCodes,
        'currency': currency,
        'ticketHasExpired': ticketHasExpired
    };

    getTypeName() => "Ticket";
    TypeContext? context = _ctx;
}

class TicketDetails implements IConvertible
{
    int? id;
    int? ticketId;
    int? eventSeriesTicketType;
    int? eventSeriesOwnerTicketType;
    double? ticketPrice;
    double? totalPrice;
    int? count;
    String? ticketColor;
    bool? showUsedTickets;
    String? ticketName;
    String? ticketDisplayString;
    int? ticketDetailsTransferredFrom;
    int? teamPassId;
    bool? isSpecialTicket;
    String? specialTicketId;
    bool? justChangedBySQL;
    DateTime? sqlJustChangedTimeStamp;
    String? currency;

    TicketDetails({this.id,this.ticketId,this.eventSeriesTicketType,this.eventSeriesOwnerTicketType,this.ticketPrice,this.totalPrice,this.count,this.ticketColor,this.showUsedTickets,this.ticketName,this.ticketDisplayString,this.ticketDetailsTransferredFrom,this.teamPassId,this.isSpecialTicket,this.specialTicketId,this.justChangedBySQL,this.sqlJustChangedTimeStamp,this.currency});
    TicketDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        ticketId = json['ticketId'];
        eventSeriesTicketType = json['eventSeriesTicketType'];
        eventSeriesOwnerTicketType = json['eventSeriesOwnerTicketType'];
        ticketPrice = JsonConverters.toDouble(json['ticketPrice']);
        totalPrice = JsonConverters.toDouble(json['totalPrice']);
        count = json['count'];
        ticketColor = json['ticketColor'];
        showUsedTickets = json['showUsedTickets'];
        ticketName = json['ticketName'];
        ticketDisplayString = json['ticketDisplayString'];
        ticketDetailsTransferredFrom = json['ticketDetailsTransferredFrom'];
        teamPassId = json['teamPassId'];
        isSpecialTicket = json['isSpecialTicket'];
        specialTicketId = json['specialTicketId'];
        justChangedBySQL = json['justChangedBySQL'];
        sqlJustChangedTimeStamp = JsonConverters.fromJson(json['sqlJustChangedTimeStamp'],'DateTime',context!);
        currency = json['currency'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'ticketId': ticketId,
        'eventSeriesTicketType': eventSeriesTicketType,
        'eventSeriesOwnerTicketType': eventSeriesOwnerTicketType,
        'ticketPrice': ticketPrice,
        'totalPrice': totalPrice,
        'count': count,
        'ticketColor': ticketColor,
        'showUsedTickets': showUsedTickets,
        'ticketName': ticketName,
        'ticketDisplayString': ticketDisplayString,
        'ticketDetailsTransferredFrom': ticketDetailsTransferredFrom,
        'teamPassId': teamPassId,
        'isSpecialTicket': isSpecialTicket,
        'specialTicketId': specialTicketId,
        'justChangedBySQL': justChangedBySQL,
        'sqlJustChangedTimeStamp': JsonConverters.toJson(sqlJustChangedTimeStamp,'DateTime',context!),
        'currency': currency
    };

    getTypeName() => "TicketDetails";
    TypeContext? context = _ctx;
}

class TicketHolderInfo implements IConvertible
{
    String? name;
    String? fullPhoneNumber;
    String? holderId;
    int? seatId;
    String? seatDisplayString;

    TicketHolderInfo({this.name,this.fullPhoneNumber,this.holderId,this.seatId,this.seatDisplayString});
    TicketHolderInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        fullPhoneNumber = json['fullPhoneNumber'];
        holderId = json['holderId'];
        seatId = json['seatId'];
        seatDisplayString = json['seatDisplayString'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'fullPhoneNumber': fullPhoneNumber,
        'holderId': holderId,
        'seatId': seatId,
        'seatDisplayString': seatDisplayString
    };

    getTypeName() => "TicketHolderInfo";
    TypeContext? context = _ctx;
}

class ExternalGateAccessCodeInfo implements IConvertible
{
    String? code;
    String? codeType;
    String? codeUrl;
    DateTime? validFrom;
    DateTime? validTo;

    ExternalGateAccessCodeInfo({this.code,this.codeType,this.codeUrl,this.validFrom,this.validTo});
    ExternalGateAccessCodeInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        code = json['code'];
        codeType = json['codeType'];
        codeUrl = json['codeUrl'];
        validFrom = JsonConverters.fromJson(json['validFrom'],'DateTime',context!);
        validTo = JsonConverters.fromJson(json['validTo'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'code': code,
        'codeType': codeType,
        'codeUrl': codeUrl,
        'validFrom': JsonConverters.toJson(validFrom,'DateTime',context!),
        'validTo': JsonConverters.toJson(validTo,'DateTime',context!)
    };

    getTypeName() => "ExternalGateAccessCodeInfo";
    TypeContext? context = _ctx;
}

class TicketDetailsInfo extends TicketDetails implements IConvertible
{
    bool? holderInfoRequired;
    bool? blockTransfer;
    String? ticketTypeImageUrl;
    List<TicketHolderInfo>? ticketHolders;
    List<ExternalGateAccessCodeInfo>? gateAccessCodes;

    TicketDetailsInfo({this.holderInfoRequired,this.blockTransfer,this.ticketTypeImageUrl,this.ticketHolders,this.gateAccessCodes});
    TicketDetailsInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        holderInfoRequired = json['holderInfoRequired'];
        blockTransfer = json['blockTransfer'];
        ticketTypeImageUrl = json['ticketTypeImageUrl'];
        ticketHolders = JsonConverters.fromJson(json['ticketHolders'],'List<TicketHolderInfo>',context!);
        gateAccessCodes = JsonConverters.fromJson(json['gateAccessCodes'],'List<ExternalGateAccessCodeInfo>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'holderInfoRequired': holderInfoRequired,
        'blockTransfer': blockTransfer,
        'ticketTypeImageUrl': ticketTypeImageUrl,
        'ticketHolders': JsonConverters.toJson(ticketHolders,'List<TicketHolderInfo>',context!),
        'gateAccessCodes': JsonConverters.toJson(gateAccessCodes,'List<ExternalGateAccessCodeInfo>',context!)
    });

    getTypeName() => "TicketDetailsInfo";
    TypeContext? context = _ctx;
}

class EventDetails implements IConvertible
{
    int? id;
    String? name;
    String? description;
    String? externalReference;
    DateTime? timeOfEvent;
    int? eventLocationId;
    int? eventSeriesId;
    int? eventOwnerId;
    bool? eventActive;
    String? eventOwnerName;
    String? externalOwnerId;
    String? teamAwayId;
    String? teamAwayName;
    String? eventSeriesName;
    String? eventLocationName;
    double? latitude;
    double? longitude;
    String? defaultValues;
    String? externalReferenceType;
    bool? eventSeriesActive;
    String? allowedKsiCard;
    String? seriesId;
    bool? seriesShowByDefault;
    bool? postponedNoDate;
    String? awayTeamExternalId;
    String? sportGenderId;
    String? externalIdType;
    bool? seriesEventSaleSuspended;
    DateTime? seriesSaleSuspensionEventStartDate;
    DateTime? seriesSaleSuspensionEventEndDate;
    bool? saleIsActive;
    bool? hideEvent;
    String? imageUrl2;
    String? directAccessCode;
    String? imageUrl;
    String? detailedDescription;
    String? ownerImageUrl;
    String? ownerImageUrl2;
    bool? ownerCardsNotAllowed;
    String? seatingImageUrl;
    DateTime? endOfEvent;
    DateTime? endOfEventUTC;
    String? timeZone;
    DateTime? timeOfEventUTC;

    EventDetails({this.id,this.name,this.description,this.externalReference,this.timeOfEvent,this.eventLocationId,this.eventSeriesId,this.eventOwnerId,this.eventActive,this.eventOwnerName,this.externalOwnerId,this.teamAwayId,this.teamAwayName,this.eventSeriesName,this.eventLocationName,this.latitude,this.longitude,this.defaultValues,this.externalReferenceType,this.eventSeriesActive,this.allowedKsiCard,this.seriesId,this.seriesShowByDefault,this.postponedNoDate,this.awayTeamExternalId,this.sportGenderId,this.externalIdType,this.seriesEventSaleSuspended,this.seriesSaleSuspensionEventStartDate,this.seriesSaleSuspensionEventEndDate,this.saleIsActive,this.hideEvent,this.imageUrl2,this.directAccessCode,this.imageUrl,this.detailedDescription,this.ownerImageUrl,this.ownerImageUrl2,this.ownerCardsNotAllowed,this.seatingImageUrl,this.endOfEvent,this.endOfEventUTC,this.timeZone,this.timeOfEventUTC});
    EventDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
        description = json['description'];
        externalReference = json['externalReference'];
        timeOfEvent = JsonConverters.fromJson(json['timeOfEvent'],'DateTime',context!);
        eventLocationId = json['eventLocationId'];
        eventSeriesId = json['eventSeriesId'];
        eventOwnerId = json['eventOwnerId'];
        eventActive = json['eventActive'];
        eventOwnerName = json['eventOwnerName'];
        externalOwnerId = json['externalOwnerId'];
        teamAwayId = json['teamAwayId'];
        teamAwayName = json['teamAwayName'];
        eventSeriesName = json['eventSeriesName'];
        eventLocationName = json['eventLocationName'];
        latitude = JsonConverters.toDouble(json['latitude']);
        longitude = JsonConverters.toDouble(json['longitude']);
        defaultValues = json['defaultValues'];
        externalReferenceType = json['externalReferenceType'];
        eventSeriesActive = json['eventSeriesActive'];
        allowedKsiCard = json['allowedKsiCard'];
        seriesId = json['seriesId'];
        seriesShowByDefault = json['seriesShowByDefault'];
        postponedNoDate = json['postponedNoDate'];
        awayTeamExternalId = json['awayTeamExternalId'];
        sportGenderId = json['sportGenderId'];
        externalIdType = json['externalIdType'];
        seriesEventSaleSuspended = json['seriesEventSaleSuspended'];
        seriesSaleSuspensionEventStartDate = JsonConverters.fromJson(json['seriesSaleSuspensionEventStartDate'],'DateTime',context!);
        seriesSaleSuspensionEventEndDate = JsonConverters.fromJson(json['seriesSaleSuspensionEventEndDate'],'DateTime',context!);
        saleIsActive = json['saleIsActive'];
        hideEvent = json['hideEvent'];
        imageUrl2 = json['imageUrl2'];
        directAccessCode = json['directAccessCode'];
        imageUrl = json['imageUrl'];
        detailedDescription = json['detailedDescription'];
        ownerImageUrl = json['ownerImageUrl'];
        ownerImageUrl2 = json['ownerImageUrl2'];
        ownerCardsNotAllowed = json['ownerCardsNotAllowed'];
        seatingImageUrl = json['seatingImageUrl'];
        endOfEvent = JsonConverters.fromJson(json['endOfEvent'],'DateTime',context!);
        endOfEventUTC = JsonConverters.fromJson(json['endOfEventUTC'],'DateTime',context!);
        timeZone = json['timeZone'];
        timeOfEventUTC = JsonConverters.fromJson(json['timeOfEventUTC'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'description': description,
        'externalReference': externalReference,
        'timeOfEvent': JsonConverters.toJson(timeOfEvent,'DateTime',context!),
        'eventLocationId': eventLocationId,
        'eventSeriesId': eventSeriesId,
        'eventOwnerId': eventOwnerId,
        'eventActive': eventActive,
        'eventOwnerName': eventOwnerName,
        'externalOwnerId': externalOwnerId,
        'teamAwayId': teamAwayId,
        'teamAwayName': teamAwayName,
        'eventSeriesName': eventSeriesName,
        'eventLocationName': eventLocationName,
        'latitude': latitude,
        'longitude': longitude,
        'defaultValues': defaultValues,
        'externalReferenceType': externalReferenceType,
        'eventSeriesActive': eventSeriesActive,
        'allowedKsiCard': allowedKsiCard,
        'seriesId': seriesId,
        'seriesShowByDefault': seriesShowByDefault,
        'postponedNoDate': postponedNoDate,
        'awayTeamExternalId': awayTeamExternalId,
        'sportGenderId': sportGenderId,
        'externalIdType': externalIdType,
        'seriesEventSaleSuspended': seriesEventSaleSuspended,
        'seriesSaleSuspensionEventStartDate': JsonConverters.toJson(seriesSaleSuspensionEventStartDate,'DateTime',context!),
        'seriesSaleSuspensionEventEndDate': JsonConverters.toJson(seriesSaleSuspensionEventEndDate,'DateTime',context!),
        'saleIsActive': saleIsActive,
        'hideEvent': hideEvent,
        'imageUrl2': imageUrl2,
        'directAccessCode': directAccessCode,
        'imageUrl': imageUrl,
        'detailedDescription': detailedDescription,
        'ownerImageUrl': ownerImageUrl,
        'ownerImageUrl2': ownerImageUrl2,
        'ownerCardsNotAllowed': ownerCardsNotAllowed,
        'seatingImageUrl': seatingImageUrl,
        'endOfEvent': JsonConverters.toJson(endOfEvent,'DateTime',context!),
        'endOfEventUTC': JsonConverters.toJson(endOfEventUTC,'DateTime',context!),
        'timeZone': timeZone,
        'timeOfEventUTC': JsonConverters.toJson(timeOfEventUTC,'DateTime',context!)
    };

    getTypeName() => "EventDetails";
    TypeContext? context = _ctx;
}

class EventTicketWithDetails implements IConvertible
{
    Ticket? eventTicket;
    List<TicketDetailsInfo>? eventTicketDetails;
    EventDetails? eventInfo;
    bool? eventIsToday;
    bool? eventisLive;
    int? minutesToEvent;

    EventTicketWithDetails({this.eventTicket,this.eventTicketDetails,this.eventInfo,this.eventIsToday,this.eventisLive,this.minutesToEvent});
    EventTicketWithDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        eventTicket = JsonConverters.fromJson(json['eventTicket'],'Ticket',context!);
        eventTicketDetails = JsonConverters.fromJson(json['eventTicketDetails'],'List<TicketDetailsInfo>',context!);
        eventInfo = JsonConverters.fromJson(json['eventInfo'],'EventDetails',context!);
        eventIsToday = json['eventIsToday'];
        eventisLive = json['eventisLive'];
        minutesToEvent = json['minutesToEvent'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'eventTicket': JsonConverters.toJson(eventTicket,'Ticket',context!),
        'eventTicketDetails': JsonConverters.toJson(eventTicketDetails,'List<TicketDetailsInfo>',context!),
        'eventInfo': JsonConverters.toJson(eventInfo,'EventDetails',context!),
        'eventIsToday': eventIsToday,
        'eventisLive': eventisLive,
        'minutesToEvent': minutesToEvent
    };

    getTypeName() => "EventTicketWithDetails";
    TypeContext? context = _ctx;
}

class RedirectionACSField implements IConvertible
{
    String? name;
    String? value;

    RedirectionACSField({this.name,this.value});
    RedirectionACSField.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        value = json['value'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'value': value
    };

    getTypeName() => "RedirectionACSField";
    TypeContext? context = _ctx;
}

class TicketOrdersResult implements IConvertible
{
    EventTicketWithDetails? ticketAndDetails;
    List<EventTicketWithDetails>? ticketsAndDetails;
    bool? needs3DVerification;
    String? redirectToACSForm;
    List<RedirectionACSField>? redirectionACSFields;
    int? statusCode;
    String? message;

    TicketOrdersResult({this.ticketAndDetails,this.ticketsAndDetails,this.needs3DVerification,this.redirectToACSForm,this.redirectionACSFields,this.statusCode,this.message});
    TicketOrdersResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ticketAndDetails = JsonConverters.fromJson(json['ticketAndDetails'],'EventTicketWithDetails',context!);
        ticketsAndDetails = JsonConverters.fromJson(json['ticketsAndDetails'],'List<EventTicketWithDetails>',context!);
        needs3DVerification = json['needs3DVerification'];
        redirectToACSForm = json['redirectToACSForm'];
        redirectionACSFields = JsonConverters.fromJson(json['redirectionACSFields'],'List<RedirectionACSField>',context!);
        statusCode = json['statusCode'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ticketAndDetails': JsonConverters.toJson(ticketAndDetails,'EventTicketWithDetails',context!),
        'ticketsAndDetails': JsonConverters.toJson(ticketsAndDetails,'List<EventTicketWithDetails>',context!),
        'needs3DVerification': needs3DVerification,
        'redirectToACSForm': redirectToACSForm,
        'redirectionACSFields': JsonConverters.toJson(redirectionACSFields,'List<RedirectionACSField>',context!),
        'statusCode': statusCode,
        'message': message
    };

    getTypeName() => "TicketOrdersResult";
    TypeContext? context = _ctx;
}

class RequestSignature implements IConvertible
{
    String? systemId;
    String? systemSecret;
    String? signature;

    RequestSignature({this.systemId,this.systemSecret,this.signature});
    RequestSignature.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        systemId = json['systemId'];
        systemSecret = json['systemSecret'];
        signature = json['signature'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'systemId': systemId,
        'systemSecret': systemSecret,
        'signature': signature
    };

    getTypeName() => "RequestSignature";
    TypeContext? context = _ctx;
}

class FindTicketsRequest implements IConvertible
{
    String? phoneVerificationNumber;
    String? deviceId;
    bool? onlyFromCurrentDate;
    bool? onlyUnUsed;
    int? requestUnixUTCTimeStamp;
    RequestSignature? signature;
    bool? includeTransferredTickets;
    DateTime? fromDate;

    FindTicketsRequest({this.phoneVerificationNumber,this.deviceId,this.onlyFromCurrentDate,this.onlyUnUsed,this.requestUnixUTCTimeStamp,this.signature,this.includeTransferredTickets,this.fromDate});
    FindTicketsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        phoneVerificationNumber = json['phoneVerificationNumber'];
        deviceId = json['deviceId'];
        onlyFromCurrentDate = json['onlyFromCurrentDate'];
        onlyUnUsed = json['onlyUnUsed'];
        requestUnixUTCTimeStamp = json['requestUnixUTCTimeStamp'];
        signature = JsonConverters.fromJson(json['signature'],'RequestSignature',context!);
        includeTransferredTickets = json['includeTransferredTickets'];
        fromDate = JsonConverters.fromJson(json['fromDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'phoneVerificationNumber': phoneVerificationNumber,
        'deviceId': deviceId,
        'onlyFromCurrentDate': onlyFromCurrentDate,
        'onlyUnUsed': onlyUnUsed,
        'requestUnixUTCTimeStamp': requestUnixUTCTimeStamp,
        'signature': JsonConverters.toJson(signature,'RequestSignature',context!),
        'includeTransferredTickets': includeTransferredTickets,
        'fromDate': JsonConverters.toJson(fromDate,'DateTime',context!)
    };

    getTypeName() => "FindTicketsRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'stubbur_autoupdates_live.smartnewapis.com', types: <String, TypeInfo> {
    'Ticket': TypeInfo(TypeOf.Class, create:() => Ticket()),
    'TicketDetails': TypeInfo(TypeOf.Class, create:() => TicketDetails()),
    'TicketHolderInfo': TypeInfo(TypeOf.Class, create:() => TicketHolderInfo()),
    'ExternalGateAccessCodeInfo': TypeInfo(TypeOf.Class, create:() => ExternalGateAccessCodeInfo()),
    'TicketDetailsInfo': TypeInfo(TypeOf.Class, create:() => TicketDetailsInfo()),
    'List<TicketHolderInfo>': TypeInfo(TypeOf.Class, create:() => <TicketHolderInfo>[]),
    'List<ExternalGateAccessCodeInfo>': TypeInfo(TypeOf.Class, create:() => <ExternalGateAccessCodeInfo>[]),
    'EventDetails': TypeInfo(TypeOf.Class, create:() => EventDetails()),
    'EventTicketWithDetails': TypeInfo(TypeOf.Class, create:() => EventTicketWithDetails()),
    'List<TicketDetailsInfo>': TypeInfo(TypeOf.Class, create:() => <TicketDetailsInfo>[]),
    'RedirectionACSField': TypeInfo(TypeOf.Class, create:() => RedirectionACSField()),
    'TicketOrdersResult': TypeInfo(TypeOf.Class, create:() => TicketOrdersResult()),
    'List<EventTicketWithDetails>': TypeInfo(TypeOf.Class, create:() => <EventTicketWithDetails>[]),
    'List<RedirectionACSField>': TypeInfo(TypeOf.Class, create:() => <RedirectionACSField>[]),
    'RequestSignature': TypeInfo(TypeOf.Class, create:() => RequestSignature()),
    'FindTicketsRequest': TypeInfo(TypeOf.Class, create:() => FindTicketsRequest()),
});

Dart FindTicketsRequest DTOs

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

HTTP + CSV

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

POST /ticketOrder/find HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"phoneVerificationNumber":"String","deviceId":"String","onlyFromCurrentDate":false,"onlyUnUsed":false,"requestUnixUTCTimeStamp":0,"signature":{"systemId":"String","systemSecret":"String","signature":"String"},"includeTransferredTickets":false,"fromDate":"0001-01-01T00:00:00.0000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ticketAndDetails":{"eventTicket":{"id":0,"userId":0,"userAuthId":0,"eventId":0,"timestampBought":"0001-01-01T00:00:00.0000000","timestampActivated":"0001-01-01T00:00:00.0000000","timeStampOrdered":"0001-01-01T00:00:00.0000000","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-01T00:00:00.0000000","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-01T00:00:00.0000000","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-01T00:00:00.0000000","seriesSaleSuspensionEventEndDate":"0001-01-01T00:00:00.0000000","saleIsActive":false,"hideEvent":false,"imageUrl2":"String","directAccessCode":"String","imageUrl":"String","detailedDescription":"String","ownerImageUrl":"String","ownerImageUrl2":"String","ownerCardsNotAllowed":false,"seatingImageUrl":"String","endOfEvent":"0001-01-01T00:00:00.0000000","endOfEventUTC":"0001-01-01T00:00:00.0000000","timeZone":"String","timeOfEventUTC":"0001-01-01T00:00:00.0000000"},"eventIsToday":false,"eventisLive":false,"minutesToEvent":0},"ticketsAndDetails":[{"eventTicket":{"id":0,"userId":0,"userAuthId":0,"eventId":0,"timestampBought":"0001-01-01T00:00:00.0000000","timestampActivated":"0001-01-01T00:00:00.0000000","timeStampOrdered":"0001-01-01T00:00:00.0000000","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-01T00:00:00.0000000","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-01T00:00:00.0000000","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-01T00:00:00.0000000","seriesSaleSuspensionEventEndDate":"0001-01-01T00:00:00.0000000","saleIsActive":false,"hideEvent":false,"imageUrl2":"String","directAccessCode":"String","imageUrl":"String","detailedDescription":"String","ownerImageUrl":"String","ownerImageUrl2":"String","ownerCardsNotAllowed":false,"seatingImageUrl":"String","endOfEvent":"0001-01-01T00:00:00.0000000","endOfEventUTC":"0001-01-01T00:00:00.0000000","timeZone":"String","timeOfEventUTC":"0001-01-01T00:00:00.0000000"},"eventIsToday":false,"eventisLive":false,"minutesToEvent":0}],"needs3DVerification":false,"redirectToACSForm":"String","redirectionACSFields":[{"name":"String","value":"String"}],"statusCode":0,"message":"String"}