TicketUserServices

<back to all web services

TicketHoldReleaseRequest

The following routes are available for this service:
POST/ticketHold/release
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 TicketHoldReleaseRequest implements IConvertible
{
    String? reservationTokenId;
    int? requestUnixUTCTimeStamp;
    RequestSignature? signature;

    TicketHoldReleaseRequest({this.reservationTokenId,this.requestUnixUTCTimeStamp,this.signature});
    TicketHoldReleaseRequest.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() => "TicketHoldReleaseRequest";
    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()),
    'TicketHoldReleaseRequest': TypeInfo(TypeOf.Class, create:() => TicketHoldReleaseRequest()),
});

Dart TicketHoldReleaseRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /ticketHold/release HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"reservationTokenId":"String","requestUnixUTCTimeStamp":0,"signature":{"systemId":"String","systemSecret":"String","signature":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"statusCode":0,"message":"String","reservationTokenId":"String","expiresUtc":"0001-01-01T00:00:00.0000000","lines":[{"eventSeriesTicketType":0,"eventSeriesOwnerTicketType":0,"quantity":0}],"perCategory":[{"eventSeriesTicketType":0,"eventSeriesOwnerTicketType":0,"maxTickets":0,"remaining":0}],"scarcity":false}