Project Config
Freeform settings can all be controlled via Craft's Project Config file.
Available Config SettingsImproved in 5.13+
If you wish to manage the configuration of Freeform settings via Craft's Project Config, here's a list of every setting currently available:
freeform:
# GENERAL INFO
edition: pro
enabled: true
licenseKey: EXAMPLETEST12EXAMPLETEST
schemaVersion: 5.0.0
settings:
# GENERAL SETTINGS
pluginName: ''
defaultView: forms
badgeType: all
sitesEnabled: true
queuePriority: ''
loggingLevel: 'debug'
# ELEMENT FIELD TYPE
formFieldShowOnlyAllowedForms: false
# EXPORTING
removeNewlines: true
exportLabels: true
exportHandlesAsNames: false
# SUBMISSION DATA
fillWithGet: true
allowDashesInFieldHandles: false
updateSearchIndexes: true
purgableSubmissionAgeInDays: '365'
purgeAssets: true
purgableUnfinalizedAssetAgeInMinutes: '180'
# FORM SUBMIT BEHAVIOR
formSubmitDisable: true
autoScrollToErrors: true
autoScroll: true
rememberPageSubmitOrder: true
csrfRefresh: once
useQueueForEmailNotifications: true
useQueueForIntegrations: true
# FREEFORM SCRIPTS
scriptInsertLocation: footer
scriptInsertType: files
# FORM SESSIONS
sessionContext: payload
sessionContextSecret: ''
sessionContextTimeToLiveMinutes: '180'
sessionContextCount: '100'
sessionEntryMaxCount: 50
sessionEntryTTL: 10800
# SAVE & CONTINUE LATER
saveFormTtl: '14'
saveFormSessionLimit: '5'
# TEMPLATE MANAGER
formTemplateDirectory: _freeform/formatting/
emailTemplateDirectory: _freeform/emails/
emailTemplateMethod: all
emailTemplateStorageType: files_database
allowBuilderTemplateCreation: true
emailTemplateDefault: files
allowFileTemplateEdit: true
emailNotificationToolbarConfiguration: 'blocks bold italic | link image'
defaultFromEmail: '{{ general.systemEmail }}'
defaultFromName: '{{ general.systemName }}'
successTemplateDirectory: _freeform/success/
# SPAM PROTECTION
spamProtectionBehavior: simulate_success
bypassSpamCheckOnLoggedInUsers: false
spamFolderEnabled: true
purgableSpamAgeInDays: '60'
submissionThrottlingCount: ''
submissionThrottlingTimeFrame: m
minimumSubmitTime: '5'
formSubmitExpiration: ''
# NOTICES & ALERTS
displayFeed: true
alertNotificationRecipients: bob@acmewidgets.net
digestFrequency: 2
digestRecipients: harry@acmewidgets.net
clientDigestFrequency: -1
clientDigestRecipients: bob@acmewidgets.net
digestOnlyOnProduction: false
# FORM BUILDER DEFAULTS
defaults:
previewHtml: true
twigInHtml: true
twigIsolation: true
richTextFieldToolbarConfiguration: 'blocks bold italic | link image'
includeSampleTemplates: true
notifications:
admin:
template:
value: admin.twig
locked: true
conditional:
template:
value: conditional.twig
locked: false
userSelect:
template:
value: admin.twig
locked: false
emailField:
template:
value: submitter.twig
locked: true
settings:
general:
formType:
value: Solspace\Freeform\Form\Types\Regular
locked: true
submissionTitle:
value: '{{ dateCreated|date("Y-m-d H:i:s") }}'
locked: false
formattingTemplate:
value: basic-light/index.twig
locked: false
dataStorage:
storeData:
value: true
locked: false
defaultStatus:
value: '2'
locked: true
collectIp:
value: true
locked: false
processing:
ajax:
value: true
locked: true
showIndicator:
value: true
locked: false
showText:
value: true
locked: false
processingText:
value: Processing...
locked: false
successAndErrors:
successBehavior:
value: reload
locked: false
returnUrl:
value: ''
locked: false
successTemplate:
value: general-success.twig
locked: false
successMessage:
value: 'Form has been submitted successfully!'
locked: false
errorMessage:
value: 'There was an error submitting the form.'
locked: false
limits:
duplicateCheck:
value: no_limit
locked: false
props:
date:
type:
value: date
locked: false
initialValue:
value: today
locked: false
locale:
value: ''
locked: false
datepicker:
value: '1'
locked: false
nativeTypes:
value: ''
locked: false
formatAsPlaceholder:
value: '1'
locked: false
dateOrder:
value: ymd
locked: false
date4DigitYear:
value: '1'
locked: false
dateLeadingZero:
value: '1'
locked: false
dateSeparator:
value: '-'
locked: false
minDate:
value: ''
locked: false
maxDate:
value: ''
locked: false
clock24h:
value: ''
locked: false
clockSeparator:
value: ':'
locked: false
clockAMPMSeparate:
value: '1'
locked: false
phone:
pattern:
value: 000-000-0000
locked: false
javascript:
value: ''
locked: false
file:
count:
value: '5'
locked: false
initialValue:
value: '1'
locked: true
uploadLocation:
value: ''
locked: false
fileKinds:
value: [image, pdf]
locked: true
maxFileSizeKB:
value: '2048'
locked: false
accentColor:
value: 3a85ee
locked: false
theme:
value: light
locked: false
placeholder:
value: ''
locked: false
removeFileMessage:
value: ''
locked: false
dialogElement:
value: ''
locked: false
dialogSelector:
value: ''
locked: false
html:
twig:
value: '1'
locked: false
table:
javascript:
value: '1'
locked: false
maxRows:
value: ''
locked: false
addButtonLabel:
value: Add
locked: false
addButtonMarkup:
value: ''
locked: false
removeButtonLabel:
value: Remove
locked: false
removeButtonMarkup:
value: ''
locked: false
tableAttributes:
value: '1'
locked: false
rating:
max:
value: '5'
locked: false
idle:
value: DDDDDD
locked: false
hover:
value: FFD700
locked: false
selected:
value: FF7700
locked: false
signature:
width:
value: '400'
locked: false
height:
value: '100'
locked: false
clear:
value: '1'
locked: false
borderColor:
value: '999999'
locked: false
backgroundColor:
value: TRANSPARENT
locked: false
penColor:
value: '000000'
locked: false
penDotSize:
value: '4'
locked: false
calculation:
decimalCount:
value: '2'
locked: false
inputType:
value: hidden
locked: true
cards:
max:
value: ''
locked: false
perRow:
value: '5'
locked: false
transform:
value: ''
locked: false
# SURVEYS & POLLS FORM TYPE
surveys:
chartTypes:
Solspace\Freeform\Fields\Implementations\CheckboxesField: Horizontal
Solspace\Freeform\Fields\Implementations\RadiosField: Horizontal
Solspace\Freeform\Fields\Implementations\DropdownField: Horizontal
Solspace\Freeform\Fields\Implementations\MultipleSelectField: Horizontal
Solspace\Freeform\Fields\Implementations\Pro\OpinionScaleField: Vertical
Solspace\Freeform\Fields\Implementations\Pro\RatingField: Vertical
Solspace\Freeform\Fields\Implementations\TextField: Text
Solspace\Freeform\Fields\Implementations\TextareaField: Text
Solspace\Freeform\Fields\Implementations\EmailField: Text
Solspace\Freeform\Fields\Implementations\NumberField: Text
Solspace\Freeform\Fields\Implementations\Pro\PhoneField: Text
Solspace\Freeform\Fields\Implementations\Pro\RegexField: Text
Solspace\Freeform\Fields\Implementations\Pro\WebsiteField: Text
highlightHighest: true
GENERAL INFO
← Options are `express`, `lite` and `pro`.
GENERAL SETTINGS
← Custom Plugin Name (Pro).
← Default CP View. Options are 'forms' or 'submissions'.
← Plugin Badge. Options are: '', 'all', 'notices', 'errors', 'submissions', or 'spam'.
← Site-Aware Forms
← Queue Job Priority. Leave empty to use the Craft default of '1024' (new in 5.5.6+)
← Logging Level. Options are: 'error', 'info' or 'debug' (New in 5.9.7+)
ELEMENT FIELD TYPE
← Restrict form options in the Form field type to the user's permissions.
EXPORTING
← Remove Newlines from Textareas for Exporting
← Use Option Labels when Exporting
← Use Field Handles for Headings when Exporting
SUBMISSION DATA
← Fill Form Values from the GET Query String
← Allow Dashes in Field Handles
← Enable Search Index Updating on New Submissions
← Automatically Purge Submission Data
← Automatically Purge Unfinalized Asset Files
← Purge Unfinalized Asset Files (in minutes)
FORM SUBMIT BEHAVIOR
← Disable Submit Button on Form Submit
← Automatically Scroll to Form on Errors and Multipage forms
← Automatically Scroll to top of the Form on AJAX submit
← Remember the Page Order in Multi-page forms (Conditional Rules page skipping)
← CSRF Token Refresh Method. Options are 'once' (recommended), 'always', or 'none'.
← Use Queue for Email Notifications
← Use Queue for Integrations
FREEFORM SCRIPTS
← Script Insert Location. Options are 'footer' (recommended), 'header', 'form', or 'manual'.
← Script Insert Type. Options are: 'files' (recommended) or 'inline'.
FORM SESSIONS
← Freeform Session Context. Options are: 'payload' (recommended), 'session' (PHP) or 'database' (DB Table).
← Secret key (Encrypted Payload only). Will use server key if left empty.
← Session length in minutes (PHP Sessions & DB Table) - the amount of active forms a user can have.
← Amount of active forms per user (PHP Sessions & DB Table) - when the sessions should expire. Set to 0 for unlimited.
← PHP Session entry limit
← PHP Session timeout (in seconds) - default 3hrs.
SAVE & CONTINUE LATER
← Number of Days to Keep Saved Form Data
← Maximum Number of Saved Forms Per Session
TEMPLATE MANAGER
← Formatting Templates Directory Path
← Email Notification Templates Directory Path
← Template Method. Options are: 'form', 'global' or 'all'.
← Template Storage Type. Options are: 'files', 'database' or 'files_database'.
← Allow New Templates to be created inside the Form Builder (New in 5.10.8+)
← New Template Type for Form Builder (Renamed in 5.10.8+)
← Allow File-based Email Templates to be managed inside the Notifications area
← Email Notification Template Toolbar Configuration
← Default 'From Email' for new Email Notification templates
← Default 'From Name' for new Email Notification templates
← Success Templates Directory Path
SPAM PROTECTION
← Spam Protection Behavior. Options are 'simulate_success' (recommended) or 'display_errors'.
← Bypass All Spam Checks for Logged in Users
← Use Spam Folder
← Days After Submission Date to Purge
← Form Submission Throttling (numeric value in minutes or seconds)
← Time Measurement for Form Submission Throttling. Options are 'm' (minutes) or 's' (seconds).
← Minimum Submit Time (in seconds)
← Form Submit Expiration (in minutes)
NOTICES & ALERTS
← Display Update Warnings & Notices
← Send Email Alerts for Failed Notifications
← Developer Digest Email Frequency. Options are '-1' (Daily), '0' (Weekly - Sundays), '1' (Weekly - Mondays), etc.
← Developer Digest Email Addresses
← Stats Digest Email Frequency. Options are '-1' (Daily), '0' (Weekly - Sundays), '1' (Weekly - Mondays), etc.
← Stats Digest Email Addresses
← Send Digest Notifications on Live Environment only
FORM BUILDER DEFAULTS (NEW IN 5.0+)
← Set defaults and locks for form builder settings.
← Live Render HTML Markup
← Allow Twig to be enabled in HTML blocks
← Render HTML block Twig in Isolated Mode
← Rich Text Field Toolbar Configuration
← Include Freeform's Sample Formatting Templates
← EMAIL NOTIFICATION TEMPLATE DEFAULTS
← ADMIN
← Default template
← CONDITIONAL
← Default template
← USER SELECT
← Default template
← EMAIL FIELDS
← Default template
← FORM BUILDER SETTING DEFAULTS
← Default Form Type
← Default Submission Title
← Default Formatting Template
← Store Submitted Data for this Form
← Default Status
← Collect IP Addresses
← Use AJAX
← Show Processing Indicator on Submit
← Show Processing Text on Submit
← Processing Text
← Success Behavior
← Options are 'reload', 'load-success-template'
and 'redirect-return-url'
← Return URL (if using 'redirect-return-url')
← Success Template (if using 'load-success-template')
← Success Message (if using 'reload')
← Error Message
← Duplicate Check
← Options are 'no_limit', 'no_limit_logged_in_users_only', 'limit_once_per_logged_in_user_only',
'limit_once_per_email', 'limit_once_per_user_or_cookie', and 'limit_once_per_user_or_ip_or_cookie'.
← FIELD SETTING DEFAULTS (NEW IN 5.13+)
← Date & Time
← Phone
← File Upload / File Upload Drag & Drop
← HTML
← Table
← Rating
← Signature
← Calculation
← Cards
SURVEYS & POLLS FORM TYPE
← Default Display for each Chart Type
← Highlight Highest Ranking Option