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
/events/{event_id}/registration/questionsRetrieve all registration questions configured for an event.
Path parameters
| Parameter | Type | Description |
|---|---|---|
event_id | UUID | Event 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:
| Type | Description | Example Use Case |
|---|---|---|
text | Single-line text input | Company name, job title |
textarea | Multi-line text input | Special requests, comments |
email | Email address input | Additional email addresses |
phone | Phone number input | Emergency contact |
url | URL input | LinkedIn profile, website |
number | Numeric input | Years of experience |
select | Single-choice dropdown | Company size, role |
checkbox | Multiple-choice checkboxes | Dietary restrictions, interests |
date | Date picker | Date 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, notattendee_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_textandplaceholderfields 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:
- Basic Information (name, email)
- Event-Specific Questions (non-sensitive)
- 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.