TicketUserServices

<back to all web services

TicketHoldExtendRequest

The following routes are available for this service:
POST/ticketHold/extend
import 'package:servicestack/servicestack.dart';

class CategoryHoldLine implements IConvertible
{
    int? eventSeriesTicketType;
    int? eventSeriesOwnerTicketType;
    int? quantity;

    CategoryHoldLine({this.eventSeriesTicketType,this.eventSeriesOwnerTicketType,this.quantity});
    CategoryHoldLine.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        eventSeriesTicketType = json['eventSeriesTicketType'];
        eventSeriesOwnerTicketType = json['eventSeriesOwnerTicketType'];
        quantity = json['quantity'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'eventSeriesTicketType': eventSeriesTicketType,
        'eventSeriesOwnerTicketType': eventSeriesOwnerTicketType,
        'quantity': quantity
    };

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

class CategoryAvailability implements IConvertible
{
    int? eventSeriesTicketType;
    int? eventSeriesOwnerTicketType;
    int? maxTickets;
    int? remaining;

    CategoryAvailability({this.eventSeriesTicketType,this.eventSeriesOwnerTicketType,this.maxTickets,this.remaining});
    CategoryAvailability.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        eventSeriesTicketType = json['eventSeriesTicketType'];
        eventSeriesOwnerTicketType = json['eventSeriesOwnerTicketType'];
        maxTickets = json['maxTickets'];
        remaining = json['remaining'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'eventSeriesTicketType': eventSeriesTicketType,
        'eventSeriesOwnerTicketType': eventSeriesOwnerTicketType,
        'maxTickets': maxTickets,
        'remaining': remaining
    };

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

class TicketHoldResult implements IConvertible
{
    int? statusCode;
    String? message;
    String? reservationTokenId;
    DateTime? expiresUtc;
    List<CategoryHoldLine>? lines;
    List<CategoryAvailability>? perCategory;
    bool? scarcity;

    TicketHoldResult({this.statusCode,this.message,this.reservationTokenId,this.expiresUtc,this.lines,this.perCategory,this.scarcity});
    TicketHoldResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        statusCode = json['statusCode'];
        message = json['message'];
        reservationTokenId = json['reservationTokenId'];
        expiresUtc = JsonConverters.fromJson(json['expiresUtc'],'DateTime',context!);
        lines = JsonConverters.fromJson(json['lines'],'List<CategoryHoldLine>',context!);
        perCategory = JsonConverters.fromJson(json['perCategory'],'List<CategoryAvailability>',context!);
        scarcity = json['scarcity'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'statusCode': statusCode,
        'message': message,
        'reservationTokenId': reservationTokenId,
        'expiresUtc': JsonConverters.toJson(expiresUtc,'DateTime',context!),
        'lines': JsonConverters.toJson(lines,'List<CategoryHoldLine>',context!),
        'perCategory': JsonConverters.toJson(perCategory,'List<CategoryAvailability>',context!),
        'scarcity': scarcity
    };

    getTypeName() => "TicketHoldResult";
    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 TicketHoldExtendRequest implements IConvertible
{
    String? reservationTokenId;
    int? requestUnixUTCTimeStamp;
    RequestSignature? signature;

    TicketHoldExtendRequest({this.reservationTokenId,this.requestUnixUTCTimeStamp,this.signature});
    TicketHoldExtendRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        reservationTokenId = json['reservationTokenId'];
        requestUnixUTCTimeStamp = json['requestUnixUTCTimeStamp'];
        signature = JsonConverters.fromJson(json['signature'],'RequestSignature',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'reservationTokenId': reservationTokenId,
        'requestUnixUTCTimeStamp': requestUnixUTCTimeStamp,
        'signature': JsonConverters.toJson(signature,'RequestSignature',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'CategoryHoldLine': TypeInfo(TypeOf.Class, create:() => CategoryHoldLine()),
    'CategoryAvailability': TypeInfo(TypeOf.Class, create:() => CategoryAvailability()),
    'TicketHoldResult': TypeInfo(TypeOf.Class, create:() => TicketHoldResult()),
    'List<CategoryHoldLine>': TypeInfo(TypeOf.Class, create:() => <CategoryHoldLine>[]),
    'List<CategoryAvailability>': TypeInfo(TypeOf.Class, create:() => <CategoryAvailability>[]),
    'RequestSignature': TypeInfo(TypeOf.Class, create:() => RequestSignature()),
    'TicketHoldExtendRequest': TypeInfo(TypeOf.Class, create:() => TicketHoldExtendRequest()),
});

Dart TicketHoldExtendRequest 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 /ticketHold/extend HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<TicketHoldExtendRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <RequestUnixUTCTimeStamp>0</RequestUnixUTCTimeStamp>
  <ReservationTokenId>String</ReservationTokenId>
  <Signature>
    <Signature>String</Signature>
    <SystemId>String</SystemId>
    <SystemSecret>String</SystemSecret>
  </Signature>
</TicketHoldExtendRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<TicketHoldResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <ExpiresUtc>0001-01-01T00:00:00</ExpiresUtc>
  <Lines>
    <CategoryHoldLine>
      <EventSeriesOwnerTicketType>0</EventSeriesOwnerTicketType>
      <EventSeriesTicketType>0</EventSeriesTicketType>
      <Quantity>0</Quantity>
    </CategoryHoldLine>
  </Lines>
  <Message>String</Message>
  <PerCategory>
    <CategoryAvailability>
      <EventSeriesOwnerTicketType>0</EventSeriesOwnerTicketType>
      <EventSeriesTicketType>0</EventSeriesTicketType>
      <MaxTickets>0</MaxTickets>
      <Remaining>0</Remaining>
    </CategoryAvailability>
  </PerCategory>
  <ReservationTokenId>String</ReservationTokenId>
  <Scarcity>false</Scarcity>
  <StatusCode>0</StatusCode>
</TicketHoldResult>