TicketUserServices

<back to all web services

SaveExtraInfoForm

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequired permission:Tickets.Add
The following routes are available for this service:
PUT/extraInfo/form/{EventId}
import 'package:servicestack/servicestack.dart';

class ExtraInfoError implements IConvertible
{
    String? fieldKey;
    String? code;
    String? message;

    ExtraInfoError({this.fieldKey,this.code,this.message});
    ExtraInfoError.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class ExtraInfoFormSaveResult implements IConvertible
{
    bool? success;
    List<ExtraInfoError>? errors;

    ExtraInfoFormSaveResult({this.success,this.errors});
    ExtraInfoFormSaveResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        success = json['success'];
        errors = JsonConverters.fromJson(json['errors'],'List<ExtraInfoError>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'success': success,
        'errors': JsonConverters.toJson(errors,'List<ExtraInfoError>',context!)
    };

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

class ExtraInfoFieldInput implements IConvertible
{
    int? id;
    String? fieldKey;
    String? fieldType;
    String? labelIs;
    String? labelEn;
    String? placeholderIs;
    String? placeholderEn;
    bool? isRequired;
    int? maxLength;
    String? optionsJson;
    int? sortOrder;

    ExtraInfoFieldInput({this.id,this.fieldKey,this.fieldType,this.labelIs,this.labelEn,this.placeholderIs,this.placeholderEn,this.isRequired,this.maxLength,this.optionsJson,this.sortOrder});
    ExtraInfoFieldInput.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        fieldKey = json['fieldKey'];
        fieldType = json['fieldType'];
        labelIs = json['labelIs'];
        labelEn = json['labelEn'];
        placeholderIs = json['placeholderIs'];
        placeholderEn = json['placeholderEn'];
        isRequired = json['isRequired'];
        maxLength = json['maxLength'];
        optionsJson = json['optionsJson'];
        sortOrder = json['sortOrder'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'fieldKey': fieldKey,
        'fieldType': fieldType,
        'labelIs': labelIs,
        'labelEn': labelEn,
        'placeholderIs': placeholderIs,
        'placeholderEn': placeholderEn,
        'isRequired': isRequired,
        'maxLength': maxLength,
        'optionsJson': optionsJson,
        'sortOrder': sortOrder
    };

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

class SaveExtraInfoForm implements IConvertible
{
    int? eventId;
    int? eventOwnerId;
    bool? showAlert;
    String? alertTitleIs;
    String? alertTitleEn;
    String? alertBodyIs;
    String? alertBodyEn;
    String? alertButtonIs;
    String? alertButtonEn;
    List<ExtraInfoFieldInput>? fields;

    SaveExtraInfoForm({this.eventId,this.eventOwnerId,this.showAlert,this.alertTitleIs,this.alertTitleEn,this.alertBodyIs,this.alertBodyEn,this.alertButtonIs,this.alertButtonEn,this.fields});
    SaveExtraInfoForm.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        eventId = json['eventId'];
        eventOwnerId = json['eventOwnerId'];
        showAlert = json['showAlert'];
        alertTitleIs = json['alertTitleIs'];
        alertTitleEn = json['alertTitleEn'];
        alertBodyIs = json['alertBodyIs'];
        alertBodyEn = json['alertBodyEn'];
        alertButtonIs = json['alertButtonIs'];
        alertButtonEn = json['alertButtonEn'];
        fields = JsonConverters.fromJson(json['fields'],'List<ExtraInfoFieldInput>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'eventId': eventId,
        'eventOwnerId': eventOwnerId,
        'showAlert': showAlert,
        'alertTitleIs': alertTitleIs,
        'alertTitleEn': alertTitleEn,
        'alertBodyIs': alertBodyIs,
        'alertBodyEn': alertBodyEn,
        'alertButtonIs': alertButtonIs,
        'alertButtonEn': alertButtonEn,
        'fields': JsonConverters.toJson(fields,'List<ExtraInfoFieldInput>',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'ExtraInfoError': TypeInfo(TypeOf.Class, create:() => ExtraInfoError()),
    'ExtraInfoFormSaveResult': TypeInfo(TypeOf.Class, create:() => ExtraInfoFormSaveResult()),
    'List<ExtraInfoError>': TypeInfo(TypeOf.Class, create:() => <ExtraInfoError>[]),
    'ExtraInfoFieldInput': TypeInfo(TypeOf.Class, create:() => ExtraInfoFieldInput()),
    'SaveExtraInfoForm': TypeInfo(TypeOf.Class, create:() => SaveExtraInfoForm()),
    'List<ExtraInfoFieldInput>': TypeInfo(TypeOf.Class, create:() => <ExtraInfoFieldInput>[]),
});

Dart SaveExtraInfoForm 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.

PUT /extraInfo/form/{EventId} HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SaveExtraInfoForm xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <AlertBodyEn>String</AlertBodyEn>
  <AlertBodyIs>String</AlertBodyIs>
  <AlertButtonEn>String</AlertButtonEn>
  <AlertButtonIs>String</AlertButtonIs>
  <AlertTitleEn>String</AlertTitleEn>
  <AlertTitleIs>String</AlertTitleIs>
  <EventId>0</EventId>
  <EventOwnerId>0</EventOwnerId>
  <Fields>
    <ExtraInfoFieldInput>
      <FieldKey>String</FieldKey>
      <FieldType>String</FieldType>
      <Id>0</Id>
      <IsRequired>false</IsRequired>
      <LabelEn>String</LabelEn>
      <LabelIs>String</LabelIs>
      <MaxLength>0</MaxLength>
      <OptionsJson>String</OptionsJson>
      <PlaceholderEn>String</PlaceholderEn>
      <PlaceholderIs>String</PlaceholderIs>
      <SortOrder>0</SortOrder>
    </ExtraInfoFieldInput>
  </Fields>
  <ShowAlert>false</ShowAlert>
</SaveExtraInfoForm>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ExtraInfoFormSaveResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <Errors>
    <ExtraInfoError>
      <Code>String</Code>
      <FieldKey>String</FieldKey>
      <Message>String</Message>
    </ExtraInfoError>
  </Errors>
  <Success>false</Success>
</ExtraInfoFormSaveResult>