TicketUserServices

<back to all web services

SelfServiceTransferTargetEventsRequest

Requires Authentication
The following routes are available for this service:
POST/selfService/transferTicket/targetEventsEvents a buyer may exchange their ticket onto (same series, same owner, still upcoming, source event included)
import 'package:servicestack/servicestack.dart';

class SelfServiceTransferResultBase implements IConvertible
{
    bool? ok;
    int? statusCode;
    String? code;
    String? message;

    SelfServiceTransferResultBase({this.ok,this.statusCode,this.code,this.message});
    SelfServiceTransferResultBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ok = json['ok'];
        statusCode = json['statusCode'];
        code = json['code'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ok': ok,
        'statusCode': statusCode,
        'code': code,
        'message': message
    };

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

class SelfServiceTargetEvent implements IConvertible
{
    int? eventId;
    String? eventName;
    DateTime? timeOfEvent;
    bool? isSeated;
    bool? isSourceEvent;
    bool? saleNotOpenYet;
    DateTime? ticketSaleStartsUTC;

    SelfServiceTargetEvent({this.eventId,this.eventName,this.timeOfEvent,this.isSeated,this.isSourceEvent,this.saleNotOpenYet,this.ticketSaleStartsUTC});
    SelfServiceTargetEvent.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        eventId = json['eventId'];
        eventName = json['eventName'];
        timeOfEvent = JsonConverters.fromJson(json['timeOfEvent'],'DateTime',context!);
        isSeated = json['isSeated'];
        isSourceEvent = json['isSourceEvent'];
        saleNotOpenYet = json['saleNotOpenYet'];
        ticketSaleStartsUTC = JsonConverters.fromJson(json['ticketSaleStartsUTC'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'eventId': eventId,
        'eventName': eventName,
        'timeOfEvent': JsonConverters.toJson(timeOfEvent,'DateTime',context!),
        'isSeated': isSeated,
        'isSourceEvent': isSourceEvent,
        'saleNotOpenYet': saleNotOpenYet,
        'ticketSaleStartsUTC': JsonConverters.toJson(ticketSaleStartsUTC,'DateTime',context!)
    };

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

class SelfServiceTransferTargetEventsResult extends SelfServiceTransferResultBase implements IConvertible
{
    int? eventSeriesId;
    int? sourceEventId;
    String? sourceEventName;
    DateTime? sourceEventTimeOfEvent;
    double? sourceTicketPrice;
    String? sourceTicketTypeName;
    List<SelfServiceTargetEvent>? events;

    SelfServiceTransferTargetEventsResult({this.eventSeriesId,this.sourceEventId,this.sourceEventName,this.sourceEventTimeOfEvent,this.sourceTicketPrice,this.sourceTicketTypeName,this.events});
    SelfServiceTransferTargetEventsResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        eventSeriesId = json['eventSeriesId'];
        sourceEventId = json['sourceEventId'];
        sourceEventName = json['sourceEventName'];
        sourceEventTimeOfEvent = JsonConverters.fromJson(json['sourceEventTimeOfEvent'],'DateTime',context!);
        sourceTicketPrice = JsonConverters.toDouble(json['sourceTicketPrice']);
        sourceTicketTypeName = json['sourceTicketTypeName'];
        events = JsonConverters.fromJson(json['events'],'List<SelfServiceTargetEvent>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'eventSeriesId': eventSeriesId,
        'sourceEventId': sourceEventId,
        'sourceEventName': sourceEventName,
        'sourceEventTimeOfEvent': JsonConverters.toJson(sourceEventTimeOfEvent,'DateTime',context!),
        'sourceTicketPrice': sourceTicketPrice,
        'sourceTicketTypeName': sourceTicketTypeName,
        'events': JsonConverters.toJson(events,'List<SelfServiceTargetEvent>',context!)
    });

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

class SelfServiceTransferTargetEventsRequest implements IConvertible
{
    String? ticketTokenId;
    String? buyerPhone;

    SelfServiceTransferTargetEventsRequest({this.ticketTokenId,this.buyerPhone});
    SelfServiceTransferTargetEventsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'ticketTokenId': ticketTokenId,
        'buyerPhone': buyerPhone
    };

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

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'SelfServiceTransferResultBase': TypeInfo(TypeOf.Class, create:() => SelfServiceTransferResultBase()),
    'SelfServiceTargetEvent': TypeInfo(TypeOf.Class, create:() => SelfServiceTargetEvent()),
    'SelfServiceTransferTargetEventsResult': TypeInfo(TypeOf.Class, create:() => SelfServiceTransferTargetEventsResult()),
    'List<SelfServiceTargetEvent>': TypeInfo(TypeOf.Class, create:() => <SelfServiceTargetEvent>[]),
    'SelfServiceTransferTargetEventsRequest': TypeInfo(TypeOf.Class, create:() => SelfServiceTransferTargetEventsRequest()),
});

Dart SelfServiceTransferTargetEventsRequest DTOs

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

HTTP + JSV

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

POST /selfService/transferTicket/targetEvents HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	ticketTokenId: String,
	buyerPhone: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	eventSeriesId: 0,
	sourceEventId: 0,
	sourceEventName: String,
	sourceEventTimeOfEvent: 0001-01-01,
	sourceTicketPrice: 0,
	sourceTicketTypeName: String,
	events: 
	[
		{
			eventId: 0,
			eventName: String,
			timeOfEvent: 0001-01-01,
			isSeated: False,
			isSourceEvent: False,
			saleNotOpenYet: False,
			ticketSaleStartsUTC: 0001-01-01
		}
	],
	ok: False,
	statusCode: 0,
	code: String,
	message: String
}