TicketUserServices

<back to all web services

UpdateTicketHolderRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequired permission:ReadData
The following routes are available for this service:
POST/Ticket/UpdateHolder
import 'package:servicestack/servicestack.dart';

class TicketHolderAnswerState implements IConvertible
{
    int? extraInfoFieldId;
    String? fieldKey;
    String? value;

    TicketHolderAnswerState({this.extraInfoFieldId,this.fieldKey,this.value});
    TicketHolderAnswerState.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class UpdateTicketHolderResult implements IConvertible
{
    int? statusCode;
    String? message;
    String? ticketTokenId;
    String? holderName;
    String? holderEmail;
    String? phoneNumber;
    String? holderId;
    List<TicketHolderAnswerState>? answers;
    List<String>? changed;
    ResponseStatus? responseStatus;

    UpdateTicketHolderResult({this.statusCode,this.message,this.ticketTokenId,this.holderName,this.holderEmail,this.phoneNumber,this.holderId,this.answers,this.changed,this.responseStatus});
    UpdateTicketHolderResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        statusCode = json['statusCode'];
        message = json['message'];
        ticketTokenId = json['ticketTokenId'];
        holderName = json['holderName'];
        holderEmail = json['holderEmail'];
        phoneNumber = json['phoneNumber'];
        holderId = json['holderId'];
        answers = JsonConverters.fromJson(json['answers'],'List<TicketHolderAnswerState>',context!);
        changed = JsonConverters.fromJson(json['changed'],'List<String>',context!);
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'statusCode': statusCode,
        'message': message,
        'ticketTokenId': ticketTokenId,
        'holderName': holderName,
        'holderEmail': holderEmail,
        'phoneNumber': phoneNumber,
        'holderId': holderId,
        'answers': JsonConverters.toJson(answers,'List<TicketHolderAnswerState>',context!),
        'changed': JsonConverters.toJson(changed,'List<String>',context!),
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

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

class ExtraInfoAnswer implements IConvertible
{
    int? extraInfoFieldId;
    String? value;

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

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

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

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

class UpdateTicketHolderRequest implements IConvertible
{
    String? ticketTokenId;
    int? eventOwnerId;
    String? holderName;
    String? holderEmail;
    String? phoneNumber;
    String? reason;
    String? holderId;
    List<ExtraInfoAnswer>? answers;
    int? ticketDetailsHolderId;

    UpdateTicketHolderRequest({this.ticketTokenId,this.eventOwnerId,this.holderName,this.holderEmail,this.phoneNumber,this.reason,this.holderId,this.answers,this.ticketDetailsHolderId});
    UpdateTicketHolderRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ticketTokenId = json['ticketTokenId'];
        eventOwnerId = json['eventOwnerId'];
        holderName = json['holderName'];
        holderEmail = json['holderEmail'];
        phoneNumber = json['phoneNumber'];
        reason = json['reason'];
        holderId = json['holderId'];
        answers = JsonConverters.fromJson(json['answers'],'List<ExtraInfoAnswer>',context!);
        ticketDetailsHolderId = json['ticketDetailsHolderId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ticketTokenId': ticketTokenId,
        'eventOwnerId': eventOwnerId,
        'holderName': holderName,
        'holderEmail': holderEmail,
        'phoneNumber': phoneNumber,
        'reason': reason,
        'holderId': holderId,
        'answers': JsonConverters.toJson(answers,'List<ExtraInfoAnswer>',context!),
        'ticketDetailsHolderId': ticketDetailsHolderId
    };

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

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'TicketHolderAnswerState': TypeInfo(TypeOf.Class, create:() => TicketHolderAnswerState()),
    'UpdateTicketHolderResult': TypeInfo(TypeOf.Class, create:() => UpdateTicketHolderResult()),
    'List<TicketHolderAnswerState>': TypeInfo(TypeOf.Class, create:() => <TicketHolderAnswerState>[]),
    'ExtraInfoAnswer': TypeInfo(TypeOf.Class, create:() => ExtraInfoAnswer()),
    'UpdateTicketHolderRequest': TypeInfo(TypeOf.Class, create:() => UpdateTicketHolderRequest()),
    'List<ExtraInfoAnswer>': TypeInfo(TypeOf.Class, create:() => <ExtraInfoAnswer>[]),
});

Dart UpdateTicketHolderRequest 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 /Ticket/UpdateHolder HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	ticketTokenId: String,
	eventOwnerId: 0,
	holderName: String,
	holderEmail: String,
	phoneNumber: String,
	reason: String,
	holderId: String,
	answers: 
	[
		{
			extraInfoFieldId: 0,
			value: String
		}
	],
	ticketDetailsHolderId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	statusCode: 0,
	message: String,
	ticketTokenId: String,
	holderName: String,
	holderEmail: String,
	phoneNumber: String,
	holderId: String,
	answers: 
	[
		{
			extraInfoFieldId: 0,
			fieldKey: String,
			value: String
		}
	],
	changed: 
	[
		String
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}