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 Foundation
import ServiceStack

public class SaveExtraInfoForm : Codable
{
    public var eventId:Int?
    public var eventOwnerId:Int?
    public var showAlert:Bool?
    public var alertTitleIs:String?
    public var alertTitleEn:String?
    public var alertBodyIs:String?
    public var alertBodyEn:String?
    public var alertButtonIs:String?
    public var alertButtonEn:String?
    public var fields:[ExtraInfoFieldInput] = []

    required public init(){}
}

public class ExtraInfoFieldInput : Codable
{
    public var id:Int?
    public var fieldKey:String?
    public var fieldType:String?
    public var labelIs:String?
    public var labelEn:String?
    public var placeholderIs:String?
    public var placeholderEn:String?
    public var isRequired:Bool?
    public var maxLength:Int?
    public var optionsJson:String?
    public var sortOrder:Int?

    required public init(){}
}

public class ExtraInfoFormSaveResult : Codable
{
    public var success:Bool?
    public var errors:[ExtraInfoError] = []

    required public init(){}
}

public class ExtraInfoError : Codable
{
    public var fieldKey:String?
    public var code:String?
    public var message:String?

    required public init(){}
}


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

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

{
	eventId: 0,
	eventOwnerId: 0,
	showAlert: False,
	alertTitleIs: String,
	alertTitleEn: String,
	alertBodyIs: String,
	alertBodyEn: String,
	alertButtonIs: String,
	alertButtonEn: String,
	fields: 
	[
		{
			id: 0,
			fieldKey: String,
			fieldType: String,
			labelIs: String,
			labelEn: String,
			placeholderIs: String,
			placeholderEn: String,
			isRequired: False,
			maxLength: 0,
			optionsJson: String,
			sortOrder: 0
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	success: False,
	errors: 
	[
		{
			fieldKey: String,
			code: String,
			message: String
		}
	]
}