Overview
Ticket forms control:- What information users provide when creating tickets
- How fields are displayed and validated
- Integration with external ticketing systems (Zendesk, HelpScout)
- Embedding external forms (HubSpot, Typeform, etc.) directly in the chat
- AI-powered ticket prefilling
- Post-submission user experience
Creating Ticket Forms
Basic Setup
- Navigate to Settings → Ticket Forms
- Click Create New Form
- Configure form properties
- Add and arrange fields
- Save and set as default (optional)
Form Properties
Field Configuration
Available Field Types
Field Properties
Conditional Fields
Show or hide fields based on user selections to create dynamic, streamlined forms.Basic Conditional Field
category equals technical.
Multiple Trigger Values
Show a field for multiple parent values:Nested Conditionals
Chain conditions for complex forms:Conditional Options
Options within a select field can also be conditional:Grouped Options
Create hierarchical dropdown menus with option groups.Configuration
Add agroup property to options:
Display
Options with groups appear in a hierarchical hover menu:Option Messages
Show a contextual message below the field when a specific option is selected. Useful for warning users about expected delays, asking them to attach extra documents, or pointing them to a self-serve resource before submitting.Configuration
Open the field builder, expand an option’s extras panel, fill in the Info message text, and pick a style:
The message appears immediately below the field as soon as the option is picked, and disappears if the user changes their selection.
External System Integration
Zendesk Field Mapping
Map form fields to Zendesk custom fields usingexternal_id:
Zendesk Group Assignment
Route tickets to specific Zendesk groups: Via Option external_id:Tagger Fields (Zendesk Tags)
Create fields that apply tags to Zendesk tickets:HelpScout Tags
For HelpScout, use the specialtag_helpscout external_id:
Name Extraction
Configure fields to extract user names for ticket requesters.First Name Field
Last Name Field
Full Name Split
For a single “Full Name” field, the system attempts to split it automatically.Form-Level Settings
Static Tags
Apply tags to all tickets from this form:Brand Assignment (Zendesk)
Route tickets to a specific Zendesk brand:Group Assignment (Zendesk)
Route all tickets to a specific group:Private Comment Content
Include all field values in the private comment:AI Prefilling
Configure AI to extract ticket information from conversations and pre-fill form fields automatically.How It Works
When a user requests to create a ticket, the AI analyzes the conversation and extracts relevant information to pre-fill the ticket form. This includes standard fields (subject, body, priority, typology) and any custom fields you enable for AI pre-fill. Pre-filled fields are marked with a sparkles icon so users can review and adjust the values before submitting.Enabling AI Pre-fill for Custom Fields
Each custom field on a ticket form can be individually enabled for AI pre-fill:- Navigate to Settings > Ticket Forms
- Open a form in the builder
- In the Fields section, click the sparkles icon next to any field to toggle AI pre-fill
- Save the form
System Prompt
Customize the AI extraction behavior with a system prompt:Best Practices
- Enable AI pre-fill only for fields where automated extraction adds value
- Be specific about expected formats and lengths in the system prompt
- Provide examples for ambiguous fields
- List available options for select fields
- Define keywords that indicate priority levels
Example: E-commerce Support
Embedded External Forms
Instead of using the built-in inline form, you can embed an external form (such as HubSpot, Typeform, or any web form) directly in the chat. When a user requests to talk to a human, the embedded form is displayed inside the conversation.Setting Up Embed Mode
- Navigate to Settings > Ticket Forms
- Create or edit a form
- In the General tab, set Form Mode to Embedded Form
- Go to the Embed tab
- Paste your Embed HTML Code (e.g., a HubSpot form script tag)
- Optionally set a Description to display above the form
- Save the form
Embed HTML Code
Paste raw HTML embed code (such as a HubSpot or Typeform script tag) directly. The HTML is rendered inside the chat conversation and auto-resizes to fit the content. Example — HubSpot form:Submission Detection
The system automatically detects when a user submits the embedded form. Detection is supported for:- HubSpot — HubSpot form callback events
- Generic HTML forms — standard
<form>submit events
AI Prefilling in Embed Mode
AI prefilling works in embed mode. When a user requests to create a ticket, the AI analyzes the conversation to extract relevant information and automatically fills matching fields in the embedded form. Field matching uses exact name matching against the following standardized field names:
Verify your HubSpot form properties use these internal names for auto-fill to work.
Form Data Capture
When a user submits an embedded form, the system captures the form field values and stores them in the ticket record. This works automatically for standard HTML forms, HubSpot forms, and AJAX-based form submissions. The captured data is used to populate the ticket subject and body, and the raw field values are stored for reference.Limitations
- Submission detection depends on the form provider supporting cross-origin messaging (HubSpot is supported; Google Forms is not)
- Auto-fill requires form fields to use the standardized field names listed above
Success Messages
Customize post-submission experience.Basic Message
With Markdown
With Action Link
Complete Form Examples
Simple Contact Form
Enterprise Support Form
Multi-Product Form with Routing
Best Practices
Form Design
- Keep forms concise - Only ask for essential information
- Use conditional fields - Show complexity only when needed
- Provide clear labels - Avoid jargon and abbreviations
- Add placeholders - Give examples of expected input
- Order logically - Most important fields first
Field Configuration
- Set sensible defaults - Pre-fill when possible
- Use appropriate types - Email fields validate emails, etc.
- Mark critical fields required - But don’t overdo it
- Group related options - Use hierarchical dropdowns
Integration
- Test field mappings - Create test tickets to verify
- Validate external IDs - Double-check Zendesk/HelpScout IDs
- Monitor for errors - Check logs after deployment
Troubleshooting
Field not appearing
Field not appearing
- Check
conditional_fieldmatches parent field ID exactly - Verify
conditional_field_valuematches option value (not label) - Verify field is included in form configuration
- Check browser console for errors
Values not mapping to external system
Values not mapping to external system
- Verify
external_idformat (e.g.,ticket_field_12345for Zendesk) - Check field type matches external system expectations
- Test with a simple ticket first
- Review AGO logs for mapping errors
Prefilling not working
Prefilling not working
- Verify
system_promptis set on the form - Verify AI pre-fill is enabled (sparkles icon) on the desired custom fields
- Check conversation has enough context
- Review AI instructions for clarity
- Test with explicit conversation content
Related
- Ticketing — Feature overview
- Ticketing Tool — Agent ticketing tool
