forms

Edit Form

Update a form.

Making the uploaded files private

The submitted_files_are_private field on the form, defines wether the files uploaded on a form should be accessible to anyone who has the link to the file, or are only accessible to anyone who has access to the form. Meaning, anyone, even of not authenticated, can see an uploaded file using its link (which needs to be shared by a form admin). But if the submitted_files_are_private is set to true, the links will be private, and only those who have access to the form can see the file.

Note If you change the submitted_files_are_private field from, it won't affect the existing links. For example, if you change it from false to true, the link to the previous files will still be publicly accessible, but the new uploads will be private.

The value for submitted_files_are_private is false by default.

Form Logic

Matrix and Table fields logic

When setting logic for a Matrix Field You can access the value selected for a given group, with the following syntax matrix_field_slug.group_slug and compare it with the desired choice. Type of these logic conditions are not choice, but matrix, since they're a specific case.

When setting logic for a Table Field You can access the value selected for a given cell, with the following syntax table_field_slug.group_slug.column_slug and compare it with the desired value. Type of these logic conditions are not choice, but table, since they're a specific case.

Example

{
  "logic": [
    {
      "type": "field",
      "identifier": "{field_1}",
      "actions": [
        {
          "action": "hide",
          "args": [
            {
              "type": "field",
              "identifier": "{field_3}"
            }
          ],
          "when": {
            "operation": "is",
            "args": [
              {
                "type": "matrix",
                "value": "{field_1}.{field_1_group_1}"
              },
              {
                "type": "choice",
                "value": "{field_1_choice_1}"
              }
            ]
          }
        }
      ]
    },
    {
      "type": "field",
      "identifier": "{field_2}",
      "actions": [
        {
          "action": "hide",
          "args": [
            {
              "type": "field",
              "identifier": "{field_4}"
            }
          ],
          "when": {
            "operation": "is",
            "args": [
              {
                "type": "table",
                "value": "{field_2}.{field_2_group_2}.{field_2_column_2}"
              },
              {
                "type": "constant",
                "value": "Tango"
              }
            ]
          }
        }
      ]
    }
  ]
}

Set fields' value based on condition(s)

Example 1 - Using Text fields

Fields:

Text Field A: mu1oEnbp
Text Field B: 7IdBlI0V

Conditions:

if A == 'Python'
then set B to 'Yay'
{
    "logic": [
        {
            "type": "field",
            "identifier": "mu1oEnbp",
            "actions": [
                {
                    "action": "set",
                    "args": [
                        {
                            "type": "field",
                            "identifier": "7IdBlI0V" 
                        },
                        {
                            "type": "constant",
                            "value": "Yay"
                        }  
                    ],
                    "when": {
                        "operation": "equal",
                        "args": [
                            {
                                "type": "field",
                                "value": "mu1oEnbp"
                            },
                            {
                                "type": "constant",
                                "value": "Python"
                            }
                        ]
                    }
                }
            ]
        }
    ]
}

Example 2 - Using Choice fields

Fields:

Choice Field A: PrJNHykP
    Option 1: dgf67dGH
    Option 2: ysFv28XR 

Choice Field B: KRwEpVNX
    Option 1: f6dyegtF
    Option 2: rO0byBlU
    

Conditions:

if A == 'Option 2'
then set B to 'Option 2'
{
    "logic": [
        {
            "type": "field",
            "identifier": "PrJNHykP",
            "actions": [
                {
                    "action": "set",
                    "args": [
                        {
                            "identifier": "KRwEpVNX",
                            "type": "field"
                        },
                        {
                            "identifier": "rO0byBlU",
                            "type": "choice"
                        }
                    ],
                    "when": {
                        "operation": "is",
                        "args": [
                            {
                                "type": "field",
                                "value": "PrJNHykP"
                            },
                            {
                                "type": "choice",
                                "value": "ysFv28XR"
                            }
                        ]
                    }
                }
            ]
        }
    ]
}
put/v3.0/forms/{slug}/

Request

  • Base URL: https://api.formaloo.me
  • URL: https://api.formaloo.me/v3.0/forms/{slug}/
  • Auth: none declared. Required headers: x-api-key

Path parameters

slugstring required

Headers

x-api-keystring required

The application secret provided to the client.

x-workspacestring

The value of business_identifier for the current workspace. Not required if your're using the API Key generated for your workspace.

Request body

submit_start_timestring date-time nullable
submit_end_timestring date-time nullable
forward_submit_emails_tostring[]

A list of emails to forward the form submit emails to.

user_spreadsheet_idstring nullable required
user_spreadsheet_rangestring nullable required
sync_gsheetboolean nullable
categorystring nullable

category's slug.

admin_email_notif_templatestring nullable

email template's slug.

user_email_notif_templatestring nullable

email template's slug.

rows_pdf_templatestring nullable

pdf template's slug.

admin_pdf_templatestring nullable

pdf template's slug.

user_pdf_templatestring nullable

pdf template's slug.

tagsstring[]

tags's slug.

logicobject
form_fieldsstring[]

a list of form's field slugs.

primary_fieldstring
payment_methodstring nullable required
redirection_addressstring nullable required
fixed_payment_amountstring nullable required
shuffle_choicesboolean nullable
logo_slugstring nullable
background_image_slugstring nullable
favicon_slugstring nullable
meta_image_slugstring nullable
banner_slugstring nullable
file_slugstring

Send the slug of a file uploaded to the storage service and used in form's description, so the file is attached to the form.

file_slugsstring[]

Send the list of slugs for the files uploaded to the storage service and used in form's description, so the files are attached to the form.

languagestring nullable

The language's slug.

slugstring nullable
addressstring nullable

A unique string to identify form for users. It's auto-generated if not set by user.

titlestring nullable

the form's display name.

show_titleboolean

title visibility on form.

descriptionstring nullable

a description about form.

success_messagestring nullable

a messages to show if the form is successfully submitted.

error_messagestring nullable

a messages to show if the form is not successfully submitted.

button_textstring nullable

a text to show on the form's submit button.

localized_contentobject nullable

localized content

save_ai_responseboolean

whether to save the AI response on the row or not.

max_submit_countinteger nullable

the maximum times people can submit this form.

needs_loginboolean

whether the users need to login to submit the form.

max_submit_per_ip_per_dayinteger nullable
time_limitstring time nullable

time limit to fill this form

shuffle_fieldsboolean

shows wether to shuffle the ordering of the form field on show.

form_redirects_after_submitstring nullable

Either null or the url of destination.

include_data_on_redirectboolean

if set true, the submitted data along with aliases will be included in the redirect url.

has_recaptchaboolean

defines if show a recaptcha on form or not

send_emails_tostring email nullable

an email address to send form data copy on each submit.

submit_email_notifboolean

receive email notifications on each submit for the form.

row_update_email_notifboolean

receive email notifications when a row is updated.

send_user_confirmboolean

whether to send a copy of data to user.

can_send_notification_status'always_allow' | 'banned' | 'default' | 'soft_disable' | 'ban_admin_email'
generate_pdf_for_adminboolean

whether to generate a pdf after each submit.

generate_pdf_for_userboolean

whether to generate a pdf after each submit.

slack_accessesobject nullable

List of slack access slugs.

form_type'simple' | 'multi_step' | 'nps'
thumbnailstring binary nullable

an optional thumbnail for the form

logostring binary nullable

the logo to be shown on the top of form

logo_position'left' | 'center' | 'right'
text_colorstring nullable

the form's text color.

button_colorstring nullable

the form's button color.

theme_colorstring nullable

the form's theme color.

theme_namestring nullable

the form's theme name.

field_colorstring nullable

the form's field color.

background_colorstring nullable

the form's background color.

border_colorstring nullable

the form's border color.

submit_text_colorstring nullable

the form's submit text color.

background_imagestring binary nullable

background image for this form.

theme_configobject

the form's additional theme configuration.

custom_jsstring nullable
custom_cssstring nullable
versionstring

version of form

activeboolean

defines if the form is active and users can see and submit it.

configstring nullable

the form's additional configuration.

show_calculations_score_resultboolean

to show calculations result after user submits a form

show_submit_tracking_codeboolean

whether to show the tracking code after user has submitted the form.

assign_submit_numberboolean

if set to true, each new row will have an incremental submit number starting from 1.

show_answersboolean

whether to show the reslts page containing answers and answer sheet after form submit.

form_currency_type'dollar' | 'USD' | 'EUR' | 'GBP' | 'AUD' | 'CAD' | 'CHF' | 'NOK' | 'SEK' | 'DKK' | 'MXN' | 'NZD' | 'BRL' | 'JPY' | 'INR' | 'AED' | 'IDR' | 'SGD'
public_statsboolean

if set true, form stats will be publicly shared by a link.

public_rowsboolean

if set true, submitted data will be publicly shared by a link.

address_is_universalboolean

If set true, form's address should be universally unique, and the forms is accessible on the root domain, otherwise, it's only available on the user's domain and subdomain.

custom_domainstring nullable

user can set this on the form, if they want to show this form on a custom domain (e.g. https://example.co/).

accept_draft_answersboolean

users can have draft answers on this form or not.

meta_tagsstring nullable

the form's meta tags, which will be added to all pages related to this form.

ai_modeboolean
meta_descriptionstring nullable

Meta description for the form.

auto_translation_enabledboolean
allow_indexingboolean
run_field_logics_on_updateboolean

Whether to run field logics on row update or not.

last_export_start_timestring date-time nullable

when was last excel export task was started for the form?

spreadsheet_idstring nullable

id for the corresponding google sheet.

spreadsheet_urlstring nullable

url for the corresponding google sheet.

is_google_integration_enabledboolean

whether google sheets integration is enabled for this form.

last_submit_timestring date-time nullable

when was the last submit on the form?

total_submits_countinteger

shows how many submits the form has.

total_sizeinteger

shows total size of the form and it's fields' fields in bytes.

create_type'api' | 'excel' | 'google_forms' | 'google_sheets' | 'magic_import' | 'magic_create' | 'recurring_submission'
primary_emailinteger nullable

an email field in the form, to send the submitted data to.

Response

submit_start_timestring date-time nullable
submit_end_timestring date-time nullable
forward_submit_emails_tostring[]

A list of emails to forward the form submit emails to.

fieldsobject
fields_listobject
submit_countinteger
visit_countinteger
has_email_fieldsboolean
user_spreadsheet_idstring nullable required
user_spreadsheet_rangestring nullable required
user_spreadsheet_urlstring nullable

url for the corresponding google sheet of user.

sync_gsheetboolean nullable
export_in_progressboolean

Shows if there's an excel export task in progress for the form.

last_export_filestring uri nullable
last_export_timestring date-time nullable

when was last excel export created.

copied_fromstring
categorystring nullable

category's slug.

admin_email_notif_templatestring nullable

email template's slug.

user_email_notif_templatestring nullable

email template's slug.

rows_pdf_templatestring nullable

pdf template's slug.

admin_pdf_templatestring nullable

pdf template's slug.

user_pdf_templatestring nullable

pdf template's slug.

tagsstring[]

tags's slug.

logicobject
subdomainstring
owner_custom_domainstring
logic_metadataobject
full_form_addressstring
primary_fieldstring
shared_accessstring
row_tagsobject
combined_localized_contentstring
payment_methodstring nullable required
redirection_addressstring nullable required
fixed_payment_amountstring nullable required
logo_urlstring
background_image_urlstring
favicon_urlstring
meta_image_urlstring
banner_urlstring
languagestring nullable

The language's slug.

deletedstring date-time
created_atstring date-time
updated_atstring date-time
slugstring nullable
addressstring nullable

A unique string to identify form for users. It's auto-generated if not set by user.

titlestring nullable

the form's display name.

show_titleboolean

title visibility on form.

descriptionstring nullable

a description about form.

success_messagestring nullable

a messages to show if the form is successfully submitted.

error_messagestring nullable

a messages to show if the form is not successfully submitted.

button_textstring nullable

a text to show on the form's submit button.

localized_contentobject nullable

localized content

save_ai_responseboolean

whether to save the AI response on the row or not.

max_submit_countinteger nullable

the maximum times people can submit this form.

needs_loginboolean

whether the users need to login to submit the form.

max_submit_per_ip_per_dayinteger nullable
time_limitstring time nullable

time limit to fill this form

shuffle_fieldsboolean

shows wether to shuffle the ordering of the form field on show.

form_redirects_after_submitstring nullable

Either null or the url of destination.

include_data_on_redirectboolean

if set true, the submitted data along with aliases will be included in the redirect url.

has_recaptchaboolean

defines if show a recaptcha on form or not

send_emails_tostring email nullable

an email address to send form data copy on each submit.

submit_email_notifboolean

receive email notifications on each submit for the form.

row_update_email_notifboolean

receive email notifications when a row is updated.

send_user_confirmboolean

whether to send a copy of data to user.

can_send_notification_status'always_allow' | 'banned' | 'default' | 'soft_disable' | 'ban_admin_email'
generate_pdf_for_adminboolean

whether to generate a pdf after each submit.

generate_pdf_for_userboolean

whether to generate a pdf after each submit.

slack_accessesobject nullable

List of slack access slugs.

form_type'simple' | 'multi_step' | 'nps'
thumbnailstring uri nullable

an optional thumbnail for the form

logostring uri nullable

the logo to be shown on the top of form

logo_position'left' | 'center' | 'right'
text_colorstring nullable

the form's text color.

button_colorstring nullable

the form's button color.

theme_colorstring nullable

the form's theme color.

theme_namestring nullable

the form's theme name.

field_colorstring nullable

the form's field color.

background_colorstring nullable

the form's background color.

border_colorstring nullable

the form's border color.

submit_text_colorstring nullable

the form's submit text color.

background_imagestring uri nullable

background image for this form.

theme_configobject

the form's additional theme configuration.

custom_jsstring nullable
custom_cssstring nullable
versionstring

version of form

activeboolean

defines if the form is active and users can see and submit it.

configstring nullable

the form's additional configuration.

show_calculations_score_resultboolean

to show calculations result after user submits a form

show_submit_tracking_codeboolean

whether to show the tracking code after user has submitted the form.

assign_submit_numberboolean

if set to true, each new row will have an incremental submit number starting from 1.

show_answersboolean

whether to show the reslts page containing answers and answer sheet after form submit.

form_currency_type'dollar' | 'USD' | 'EUR' | 'GBP' | 'AUD' | 'CAD' | 'CHF' | 'NOK' | 'SEK' | 'DKK' | 'MXN' | 'NZD' | 'BRL' | 'JPY' | 'INR' | 'AED' | 'IDR' | 'SGD'
public_statsboolean

if set true, form stats will be publicly shared by a link.

public_rowsboolean

if set true, submitted data will be publicly shared by a link.

address_is_universalboolean

If set true, form's address should be universally unique, and the forms is accessible on the root domain, otherwise, it's only available on the user's domain and subdomain.

custom_domainstring nullable

user can set this on the form, if they want to show this form on a custom domain (e.g. https://example.co/).

accept_draft_answersboolean

users can have draft answers on this form or not.

meta_tagsstring nullable

the form's meta tags, which will be added to all pages related to this form.

ai_modeboolean
meta_descriptionstring nullable

Meta description for the form.

auto_translation_enabledboolean
allow_indexingboolean
run_field_logics_on_updateboolean

Whether to run field logics on row update or not.

last_export_start_timestring date-time nullable

when was last excel export task was started for the form?

spreadsheet_idstring nullable

id for the corresponding google sheet.

spreadsheet_urlstring nullable

url for the corresponding google sheet.

is_google_integration_enabledboolean

whether google sheets integration is enabled for this form.

last_submit_timestring date-time nullable

when was the last submit on the form?

total_submits_countinteger

shows how many submits the form has.

total_sizeinteger

shows total size of the form and it's fields' fields in bytes.

create_type'api' | 'excel' | 'google_forms' | 'google_sheets' | 'magic_import' | 'magic_create' | 'recurring_submission'
primary_emailinteger nullable

an email field in the form, to send the submitted data to.

Changes

No recorded changes to this operation across all 1 revision of this API.