FormWork FormWork

Import & Export

Bulk import data into forms and export entries for analysis.

FormWork provides robust import and export capabilities for managing data in bulk. Import existing data into forms or export entries for analysis, backups, or integration.

Exporting Entries

Quick Export

Export entries directly from the entry list:

  1. Go to your form’s Entries tab
  2. Select entries (or select all)
  3. Click Export
  4. Choose format
  5. Download the file

Export Options

OptionDescription
FormatCSV or JSON
FieldsAll fields or selected columns
FiltersApply current filters to export
Include MetafieldsAdd metafield values
Date RangeLimit by submission date

CSV Export

CSV exports include:

  • Header row with field labels
  • One row per entry
  • Nested fields flattened with dot notation
  • Repeatable groups expanded to multiple columns

Example:

entry_id,name,email,address.street,address.city
ent_001,John Smith,[email protected],123 Main St,New York
ent_002,Jane Doe,[email protected],456 Oak Ave,Boston

JSON Export

JSON exports preserve full structure:

{
  "entries": [
    {
      "id": "ent_001",
      "created_at": "2024-01-15T10:30:00Z",
      "answers": {
        "name": "John Smith",
        "email": "[email protected]",
        "address.street": "123 Main St",
        "address.city": "New York"
      }
    }
  ]
}

Large Exports

For forms with many entries:

  1. Export runs as a background job
  2. Progress indicator shows completion
  3. Download link provided when ready
  4. Link expires after 24 hours

Importing Entries

Preparing Import Data

Create a CSV or JSON file matching your form structure:

  1. Use field IDs as column headers (CSV) or keys (JSON)
  2. Match data types (numbers, dates, etc.)
  3. Format dates as ISO 8601 (YYYY-MM-DD)
  4. Leave optional fields empty if not applicable

Import Process

  1. Go to form Entries tab
  2. Click Import
  3. Upload your file
  4. Map columns to fields
  5. Preview the import
  6. Confirm and import

Column Mapping

The import wizard helps map your data:

  • Auto-matches columns with same names as fields
  • Manual mapping for mismatched names
  • Skip columns you don’t want to import
  • See preview of how data will be imported

Import Options

OptionDescription
Create NewAll rows create new entries
Update ExistingMatch on a key field and update
UpsertCreate new or update if exists
Skip DuplicatesSkip rows matching existing entries

Validation During Import

The import process validates:

  • Required fields have values
  • Data types match field types
  • Select/radio values exist in options
  • Custom validation rules pass

Invalid rows are flagged for review.

Handling Errors

After import attempt:

  1. View success and error counts
  2. Download error report
  3. Review specific issues
  4. Fix and re-import failed rows

Common issues:

  • Missing required fields
  • Invalid date formats
  • Values not in select options
  • Data type mismatches

Import Templates

Download Template

Get a template matching your form:

  1. Go to Import
  2. Click Download Template
  3. Template includes:
    • Column headers for all fields
    • Example data row
    • Instructions sheet

Template Format

name,email,phone,category,created_at
John Example,[email protected],555-1234,sales,2024-01-15

API Import/Export

Export via API

GET /api/v1/forms/{form_id}/entries/export
Authorization: Bearer fwk_your_api_key

Query parameters:
- format: csv or json
- fields: comma-separated field IDs
- from: start date
- to: end date

Import via API

POST /api/v1/forms/{form_id}/entries/import
Authorization: Bearer fwk_your_api_key
Content-Type: application/json

{
  "entries": [
    {
      "answers": {
        "name": "John Smith",
        "email": "[email protected]"
      }
    }
  ]
}

Best Practices

Before Importing

  • Test with a small sample first
  • Validate data in spreadsheet before upload
  • Back up existing data if updating
  • Review field mappings carefully

Data Preparation

  • Clean data before import
  • Standardize formats (dates, phone numbers)
  • Remove duplicate rows
  • Check for empty required fields

Large Imports

For imports over 1,000 rows:

  • Split into smaller batches
  • Import during off-peak hours
  • Monitor for errors
  • Consider using the API for automation

Regular Exports

For backups and analysis:

  • Schedule regular exports
  • Store exports securely
  • Use consistent naming conventions
  • Document what each export contains