Registration Questions API

Fetch custom registration questions for event registration forms

Overview

The Registration Questions API allows you to collect custom information from attendees during event registration. EventNerds provides a comprehensive question library with pre-built templates for common use cases (dietary restrictions, accessibility needs, diversity tracking), and you can also create custom questions specific to your event.

Key Features:

  • Pre-built question library with 20+ templates
  • Custom question creation with multiple input types
  • Privacy-first architecture (responses stored per-order, not on profiles)
  • Sensitive data handling for diversity and personal questions
  • Export functionality with privacy controls

Endpoints

Get registration questions

GET
/events/{event_id}/registration/questions

Retrieve all registration questions configured for an event.

Path parameters

ParameterTypeDescription
event_idUUIDEvent ID

Example request

curl "https://eventnerds.com/api/v1/developer/events/EVENT_ID/registration/questions" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "questions": [
    {
      "id": "uuid",
      "question_type": "text",
      "question_text": "What is your company name?",
      "question_key": "company_name",
      "help_text": "This helps us understand our audience",
      "placeholder": "e.g., Acme Corporation",
      "is_required": true,
      "is_sensitive": false,
      "options": null,
      "display_order": 0,
      "standard_category": null
    },
    {
      "id": "uuid",
      "question_type": "select",
      "question_text": "What is your role?",
      "question_key": "job_role",
      "help_text": "Select your primary job function",
      "placeholder": null,
      "is_required": false,
      "is_sensitive": false,
      "options": {
        "choices": [
          "Developer/Engineer",
          "Product Manager",
          "Designer",
          "Executive",
          "Other"
        ]
      },
      "display_order": 1,
      "standard_category": "demographic"
    },
    {
      "id": "uuid",
      "question_type": "checkbox",
      "question_text": "Do you have any dietary restrictions?",
      "question_key": "dietary_restrictions",
      "help_text": "Select all that apply",
      "placeholder": null,
      "is_required": false,
      "is_sensitive": false,
      "options": {
        "choices": [
          "Vegetarian",
          "Vegan",
          "Gluten-free",
          "Dairy-free",
          "No restrictions"
        ]
      },
      "display_order": 2,
      "standard_category": "food"
    },
    {
      "id": "uuid",
      "question_type": "select",
      "question_text": "Gender identity (optional)",
      "question_key": "gender_identity",
      "help_text": "This information is confidential and helps us track diversity",
      "placeholder": null,
      "is_required": false,
      "is_sensitive": true,
      "options": {
        "choices": [
          "Man",
          "Woman",
          "Non-binary",
          "Prefer to self-describe",
          "Prefer not to say"
        ]
      },
      "display_order": 3,
      "standard_category": "diversity"
    }
  ],
  "total": 4
}

Question types

EventNerds supports the following question types:

TypeDescriptionExample Use Case
textSingle-line text inputCompany name, job title
textareaMulti-line text inputSpecial requests, comments
emailEmail address inputAdditional email addresses
phonePhone number inputEmergency contact
urlURL inputLinkedIn profile, website
numberNumeric inputYears of experience
selectSingle-choice dropdownCompany size, role
checkboxMultiple-choice checkboxesDietary restrictions, interests
dateDate pickerDate of birth, availability

Standard question library

EventNerds provides a library of pre-built questions organized by category:

Demographic questions

  • Company size
  • Job role
  • Years of experience
  • Industry
  • T-shirt size
  • LinkedIn profile
  • Twitter/X handle
  • GitHub username

Food & Dietary Questions

  • Dietary restrictions (Vegetarian, Vegan, Gluten-free, etc.)
  • Specific allergies or requirements

Accessibility questions

  • Wheelchair accessibility
  • Sign language interpreter
  • Hearing/visual assistance
  • Service animal
  • Quiet room access
  • Additional requirements

Diversity & Inclusion Questions (Sensitive)

  • Gender identity
  • Race/ethnicity
  • Underrepresented group status

Note: All diversity questions are marked as is_sensitive: true and are optional by default.

Other common questions

  • How did you hear about us?
  • Emergency contact information
  • Special requests

Submitting responses

Registration responses are submitted as part of the registration/order creation flow via the Registration API.

Include responses in registration payload

{
  "event_id": "uuid",
  "ticket_id": "uuid",
  "quantity": 1,
  "attendee": {
    "email": "attendee@example.com",
    "first_name": "Jane",
    "last_name": "Doe"
  },
  "registration_responses": [
    {
      "question_id": "uuid",
      "response_value": "Acme Corporation"
    },
    {
      "question_id": "uuid",
      "response_value": "Developer/Engineer"
    },
    {
      "question_id": "uuid",
      "response_value": ["Vegetarian", "Gluten-free"]
    }
  ]
}

Response value types

  • Text questions: String value
  • Select questions: String value (single selection)
  • Checkbox questions: Array of strings (multiple selections)
  • Number questions: Number value
  • Date questions: ISO 8601 date string

Validation

  • Required questions must be answered
  • Response values must match question type
  • For select/checkbox questions, values must be from the provided options
  • Missing optional questions are allowed

Error response (400)

{
  "error": "Registration question validation failed: company_name is required"
}

Privacy & data handling

EventNerds takes privacy seriously, especially for sensitive data like diversity questions.

Per-order storage

Important:Registration responses are stored per-order, NOT on the attendee's global profile.

  • Responses are linked to order_id, not attendee_id
  • If the same attendee registers for multiple events, each registration has separate responses
  • Sensitive data is isolated and never exposed across events
  • Responses are deleted when orders are deleted

Sensitive data flags

Questions marked with is_sensitive: true receive special handling:

  • Clearly marked in the UI with warning badges
  • Can be excluded from exports by default
  • Always optional (cannot be made required)
  • Stored with extra access controls

GDPR compliance

  • Attendees can request data export (includes registration responses)
  • Attendees can request data deletion (removes all responses)
  • Sensitive fields are clearly labeled in exports
  • Organizers can choose to exclude sensitive data from exports

Best practices

1. Always fetch questions dynamically

Don't hardcode questions in your registration form. Always fetch them from the API to ensure you have the latest configuration.

2. Respect required vs optional

  • Mark required fields clearly in your UI
  • Validate required questions before submission
  • Don't force users to answer optional questions

3. Handle sensitive data appropriately

  • Display privacy notices for sensitive questions
  • Make it clear that sensitive questions are optional
  • Consider showing sensitive questions on a separate step or with additional context

4. Provide clear help text

  • Display help_text and placeholder fields to guide users
  • For select/checkbox questions, display all options clearly

5. Validate response types

  • Ensure response values match the question type
  • For select questions, validate against the provided options
  • For checkboxes, accept arrays of strings

6. Progressive disclosure for long forms

If you have many questions, consider breaking them into sections:

  1. Basic Information (name, email)
  2. Event-Specific Questions (non-sensitive)
  3. Optional Diversity Questions (sensitive, clearly marked)

Related documentation

Registration API

Learn how to submit registration responses as part of the order creation flow.

Developer Tutorial

See a complete example of building a registration form with custom questions.

Registration Questions User Guide

Learn how to create and manage registration questions in the EventNerds dashboard.

Orders API

Manage orders and view registration responses after attendees register.

Ready to get started?

Create your free EventNerds account and start building amazing events today. No credit card required.

Built by EventNerdsStrategic Nerds

The API-first event engine for developers who mean business