Skip to main content

Event Registration Forms

The Event Registration Forms API allows you to create, retrieve, update, and delete registration forms for events. These forms define the fields that users need to complete when registering for an event.

Authentication

All requests to the Event Registration Forms API must be authenticated using the ONLIVE.SITE authentication scheme. Please refer to the Authentication Guide for detailed instructions.

Base URL

https://openapi.onlive.site/api/v1/event-registration-forms

Endpoints


Create Registration Form

Creates a new event registration form with custom fields.

HTTP Request

POST /api/v1/event-registration-forms

Request Body

FieldTypeRequiredDescription
namestringYesThe name of the registration form (max 255 characters)
descriptionstringNoThe description of the registration form
fieldsarray of objectsYesThe form fields configuration

CreateEventFieldDto

Each field in the fields array should follow the CreateEventFieldDto structure:

PropertyTypeRequiredDescription
namestringYesThe unique name of the field
descriptionstringNoAn optional description for the field
fieldTypestringYesThe data type of the field. Options: boolean, text, number, date, time, datetime, object, email, phone, url, firstName, lastName
FieldComponentstringYesThe HTML element to use. Options: input, textarea, select, checkbox, switch, radio
isMultiSelectbooleanNoIndicates if the field allows multiple selections (applicable to select, checkbox, radio)
fieldOptionsarray of FieldOptionNoOptions for selection-based fields (select, radio, checkbox)
requiredbooleanNoIndicates if this field is required for submission
isFilterablebooleanNoIndicates if this field can be used as a filter in queries
isSearchablebooleanNoIndicates if the content of this field is searchable
isSortablebooleanNoIndicates if lists can be sorted by this field
isPubliclyVisiblebooleanNoIndicates if the field is publicly visible
viewPermissionsarray of stringsNoRoles that can view this field. Options: read, write
editPermissionsarray of stringsNoRoles that can edit this field. Options: read, write

FieldOption Object

PropertyTypeRequiredDescription
valuestringYesThe value of the option that will be stored
labelstringYesThe human-readable label for the option

Example Request Body

{
"name": "Conference Registration Form",
"description": "Registration form for annual tech conference",
"fields": [
{
"name": "firstName",
"description": "First Name",
"fieldType": "firstName",
"FieldComponent": "input",
"required": true,
"isSearchable": true
},
{
"name": "lastName",
"description": "Last Name",
"fieldType": "lastName",
"FieldComponent": "input",
"required": true,
"isSearchable": true
},
{
"name": "email",
"description": "Email Address",
"fieldType": "email",
"FieldComponent": "input",
"required": true,
"isSearchable": true
},
{
"name": "company",
"description": "Company Name",
"fieldType": "text",
"FieldComponent": "input",
"required": false,
"isSearchable": true,
"isFilterable": true
},
{
"name": "role",
"description": "Job Role",
"fieldType": "text",
"FieldComponent": "select",
"required": true,
"isFilterable": true,
"fieldOptions": [
{ "value": "developer", "label": "Developer" },
{ "value": "designer", "label": "Designer" },
{ "value": "manager", "label": "Manager" },
{ "value": "other", "label": "Other" }
]
},
{
"name": "dietaryRestrictions",
"description": "Dietary Restrictions",
"fieldType": "text",
"FieldComponent": "textarea",
"required": false
},
{
"name": "attendWorkshops",
"description": "Attend Workshops",
"fieldType": "boolean",
"FieldComponent": "checkbox",
"required": false
}
]
}

Response

Returns the created EventRegistrationForm object.

Example Response

{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Conference Registration Form",
"description": "Registration form for annual tech conference",
"fields": [
{
"name": "firstName",
"description": "First Name",
"fieldType": "firstName",
"FieldComponent": "input",
"required": true,
"isSearchable": true
},
{
"name": "email",
"description": "Email Address",
"fieldType": "email",
"FieldComponent": "input",
"required": true,
"isSearchable": true
}
],
"createdAt": "2025-10-12T10:30:00.000Z",
"updatedAt": "2025-10-12T10:30:00.000Z"
}

Get Registration Form

Retrieves a specific event registration form by its ID.

HTTP Request

GET /api/v1/event-registration-forms/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the registration form

Query Parameters

ParameterTypeRequiredDescription
withTrashedbooleanNoInclude trashed registration forms

Response

Returns the EventRegistrationForm object.


Update Registration Form

Updates an existing event registration form.

HTTP Request

PUT /api/v1/event-registration-forms/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the registration form

Request Body

All fields are optional. Only the fields you want to update need to be included. The structure is the same as the Create Registration Form request.

Example Request Body

{
"name": "Updated Conference Registration Form",
"fields": [
{
"name": "firstName",
"description": "First Name",
"fieldType": "firstName",
"FieldComponent": "input",
"required": true
},
{
"name": "email",
"description": "Email Address",
"fieldType": "email",
"FieldComponent": "input",
"required": true
},
{
"name": "phoneNumber",
"description": "Phone Number",
"fieldType": "phone",
"FieldComponent": "input",
"required": false
}
]
}

Response

Returns the updated EventRegistrationForm object.


Search Registration Forms

Retrieves a paginated list of event registration forms based on query parameters.

HTTP Request

GET /api/v1/event-registration-forms

Query Parameters

ParameterTypeRequiredDescription
limitnumberNoMaximum number of items to return (default: 10, min: 1)
pagenumberNoPage number (starts at 1, default: 1, min: 1)
sortstringNoField name and direction to sort results by. Use "ASC" or "DESC". (default: "createdAt DESC")
withTrashedbooleanNoInclude soft-deleted registration forms in the results

Example Request

GET /api/v1/event-registration-forms?search=Conference&page=1&limit=20

Response

Returns a paginated response with an array of EventRegistrationForm objects.

Example Response

{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Conference Registration Form",
"description": "Registration form for annual tech conference",
"fields": [
{
"name": "firstName",
"type": "text",
"required": true
}
],
"createdAt": "2025-10-12T10:30:00.000Z",
"updatedAt": "2025-10-12T10:30:00.000Z"
}
],
"meta": {
"total": 1,
"page": 1,
"limit": 20,
"totalPages": 1
}
}

Delete Registration Form

Deletes an event registration form by its ID.

HTTP Request

DELETE /api/v1/event-registration-forms/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the registration form

Query Parameters

ParameterTypeRequiredDescription
withTrashedbooleanNoInclude trashed registration forms

Response

Returns the deleted EventRegistrationForm object.


EventRegistrationForm Object

The EventRegistrationForm object represents a form definition for event registration.

Properties

PropertyTypeDescription
idstring (uuid)The unique identifier of the registration form
namestringThe name of the registration form
descriptionstringThe description of the registration form
fieldsarrayThe form fields configuration
organizationobjectThe organization associated with the event registration form
createdAtstring (ISO 8601)The date and time when the form was created
updatedAtstring (ISO 8601)The date and time when the form was last updated
deletedAtstring (ISO 8601)The deletion date of the registration form (if deleted)

Field Types

The following field types are supported:

  • boolean - Boolean value (true/false)
  • text - Text string
  • number - Numeric value
  • date - Date value
  • time - Time value
  • datetime - Date and time value
  • object - JSON object
  • email - Email address
  • phone - Phone number
  • url - URL
  • firstName - First name (specialized text field)
  • lastName - Last name (specialized text field)

Field Components

The following field components are supported:

  • input - Standard input field
  • textarea - Multi-line text area
  • select - Dropdown selection
  • checkbox - Checkbox
  • switch - Toggle switch
  • radio - Radio button group