> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.swellsystem.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Creating Forms

# Creating Forms

Learn how to create and configure embeddable forms using the visual form builder.

## Form Builder Interface

The form builder provides a drag-and-drop interface for creating forms:

- **Left Panel**: Field types and form elements
- **Center Panel**: Form preview and field editor
- **Right Panel**: Field settings and form configuration

## Creating a New Form

### Step 1: Start a New Form

1. Go to **Forms** → Click **"New Form"**
2. Enter form details:
   - **Name**: Form name (e.g., "Contact Form")
   - **Description**: Optional description
3. Click **"Create"** to start building

### Step 2: Add Fields

1. Click **"Add Field"** button
2. Select a field type from the dropdown
3. The field appears in the form preview
4. Configure the field (see Field Configuration below)

### Step 3: Configure Form Settings

1. Click **"Form Settings"** button
2. Configure:
   - **Theme**: Light or dark theme
   - **Thank You Message**: Message shown after submission
   - **Redirect URL**: Where to redirect after submission
   - **Progress Indicator**: Show/hide progress bar
   - **Allow Back Navigation**: Let users go back to previous steps

### Step 4: Set Up Integrations

1. Go to **Integrations** tab
2. Click **"Add Integration"**
3. Select integration type:
   - Create Contact
   - Create Company
   - Create Lead
   - Create Support Ticket
   - Subscribe to Email List
   - Webhook
   - Email Notification
4. Map form fields to integration fields
5. Set conditions (optional)

### Step 5: Publish Form

1. Click **"Publish"** button
2. Form is now live and can be embedded
3. Copy embed code from form settings

## Field Configuration

### Basic Settings

- **Label**: Field label shown to users
- **Description**: Help text below the field
- **Required**: Mark field as required
- **Placeholder**: Placeholder text in input

### Validation

- **Required**: Field must be filled
- **Email Format**: Validate email addresses
- **Phone Format**: Validate phone numbers
- **URL Format**: Validate URLs
- **Min/Max Length**: Character limits
- **Min/Max Value**: Number ranges
- **File Size**: Maximum file size
- **File Types**: Allowed file types

### Conditional Logic

- **Show/Hide**: Show field based on other field values
- **Jump Logic**: Skip to specific questions
- **Field Dependencies**: Enable/disable based on other fields

## Multi-Step Forms

### Creating Steps

1. Click **"Add Step"** button
2. Enter step title and description
3. Add fields to the step
4. Configure step settings:
   - Progress indicator
   - Transition animation
   - Step validation

### Step Navigation

- **Next Button**: Move to next step
- **Previous Button**: Go back (if enabled)
- **Progress Bar**: Visual progress indicator
- **Step Counter**: "Step 1 of 5" display

## Form Templates

### Using Templates

1. Click **"Templates"** in form builder
2. Browse available templates
3. Select a template to use as starting point
4. Customize fields and settings

### Template Categories

- Contact Forms
- Lead Generation
- Surveys
- Event Registration
- Support Requests
- Onboarding Forms

## Saving and Publishing

### Save as Draft

- Click **"Save"** to save without publishing
- Form remains in draft status
- Can be edited and tested

### Publish Form

- Click **"Publish"** when ready
- Form becomes publicly accessible
- Embed code is generated
- Form starts collecting submissions

### Unpublish Form

- Click **"Unpublish"** to stop collecting submissions
- Existing submissions remain accessible
- Form can be republished later

## Duplicating Forms

1. Go to Forms list
2. Click **"Duplicate"** on a form
3. New form is created with same structure
4. Customize as needed

## Best Practices

1. **Start Simple**: Begin with basic fields, add complexity later
2. **Test Thoroughly**: Preview and test before publishing
3. **Use Conditional Logic**: Reduce form length with smart questions
4. **Set Up Integrations**: Automate data entry
5. **Mobile Testing**: Test on mobile devices
6. **Clear Labels**: Use descriptive field labels
7. **Progress Indicators**: Show progress for long forms

## Troubleshooting

### Form Not Saving
- Check internet connection
- Ensure all required fields are filled
- Try refreshing the page

### Fields Not Appearing
- Check field visibility settings
- Verify conditional logic rules
- Ensure field is active

### Integration Not Working
- Verify field mapping is correct
- Check integration conditions
- Review integration logs