Introduction

With the Forms API, you can customize a registration form for site visitors to fill out with their contact details and other relevant information. The form defines which elements are rendered on the site page during the registration process (RSVP or checkout).

To build a registration form you need to use controls (blocks), each of which may contain multiple field inputs. For example, the address control may include inputs for street address, city, state, country, and zip code. By default, name and email controls are already included in the form and they can't be removed.

You can also include the following additional controls:

  • phone
  • address
  • date
  • additionalGuests
  • dropdown
  • checkBox
  • text
  • radioButton

Each event has a published registration form by default which automatically updates when calling one of the API functions. The form becomes a draft and you can publish it by calling the publishDraft function.

The Forms API allows you to:

  • Add, delete, update controls with relevant fields on the form.
  • Publish changes or discard them in a draft form.
  • Update messages displayed on the form.
  • Get information about the form.

Terminology

  • Registration form: An interface provided by an organization, website, or service to collect essential information from individuals who wish to sign up, enroll, or participate in an event, program, service, or membership.
  • Event: A gathering organized by an individual or business for a group of people.
Was this helpful?
Yes
No

Setup

To use the Forms API, install the @wix/events package using npm or Yarn:

Copy
1
npm install @wix/events

or

Copy
1
yarn add @wix/events

Then import { forms } from @wix/events:

Copy
1
import { forms } from '@wix/events'
Was this helpful?
Yes
No

addControl( )

Adds an input control to the draft form.

Permission Scopes

For app development, you must have one of the following permission scopes:
Manage Events - all permissions
Manage Events
Learn more about permission scopes.
Copy
function addControl(eventId: string, options: AddControlOptions): Promise<AddControlResponse>
Method Parameters
eventIdstringRequired
Event ID to which the form belongs.

optionsAddControlOptions
Optional fields.
Returns
Return Type:Promise<AddControlResponse>
Was this helpful?
Yes
No

getForm( )

Retrieves an event registration form (both the draft and published versions).

Permission Scopes

For app development, you must have one of the following permission scopes:
Read Events - all read permissions
Manage Bookings Services and Settings
Manage Events - all permissions
Read Events
Manage Guest List
Manage Events
Learn more about permission scopes.
Copy
function getForm(eventId: string): Promise<Form>
Method Parameters
eventIdstringRequired
Event ID to which the form belongs.
Returns
Return Type:Promise<Form>
Was this helpful?
Yes
No

publishDraft( )

Publishes the draft form.

Permission Scopes

For app development, you must have one of the following permission scopes:
Manage Events - all permissions
Manage Events
Learn more about permission scopes.
Copy
function publishDraft(eventId: string): Promise<PublishDraftResponse>
Method Parameters
eventIdstringRequired
Event ID to which the form belongs.
Returns
Return Type:Promise<PublishDraftResponse>
Was this helpful?
Yes
No