### General example for prefilling complex field types (Sections) Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form This snippet provides a general example for prefilling field types like Name and Address that have smaller sections within them. These fields need to be contained in their own sets of curly brackets. ```JSON {"Name":{"First":"Bart","Last":"Simpson"}} ``` -------------------------------- ### Redirect URL Parameter for a Name Field Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url An example of a parameter where both the 'Key' and 'Token' match the form field's label 'Name'. This is a common and straightforward approach. ```URL Name=[Name] ``` -------------------------------- ### Sample Prompts for AI Form Generation in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/ai-forms These examples demonstrate effective natural language prompts to guide the Cognito Forms AI in generating various types of online forms. Providing clear, concise language with specific details helps the AI produce more accurate and relevant results for surveys, registrations, and other form types. ```AI Prompt Create a summer camp registration form for multiple campers with a list of programs ``` ```AI Prompt Create a survey that allows students to evaluate their professors on a scale of 1-5 ``` ```AI Prompt Create a car rental reservation form with pick-up dates and a list of vehicle models ``` ```AI Prompt Create a job application form with 2 references ``` -------------------------------- ### Base URL with Query Parameter Start Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Adding a question mark (?) to the base URL indicates the beginning of query parameters, which will carry the form data. ```URL http://www.example.com? ``` -------------------------------- ### Common CSS Properties for Form Styling Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide A list of frequently used CSS properties and their descriptions, useful for customizing the appearance of form elements. ```APIDOC background-color: The background color of the element’s box. Set it to any hex value. border-color: The color of the border around text inputs and dropdowns. border-radius: Make borders have rounded corners. You can set it to a pixel value, where 0 gives your borders sharp corners and 1px is very slightly rounded. border-width: The size of the border around text inputs and dropdowns. color: The color of text. Set it to any hex value. font-size: Changes the size of the selected text. font-weight: Bold or un-bold text. Set it to bold or normal. padding: You can set it to a pixel amount. If you want to change the padding for just one side you can use: padding-left, etc. ``` -------------------------------- ### Redirect URL Parameter for Rating Scale Fields Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Example of a parameter for a rating scale question labeled 'Question1'. The token uses 'RatingScale' as a prefix followed by the specific question label. ```URL RatingScale=[RatingScale.Question1] ``` -------------------------------- ### Configure 'Submit to IT' Action for HR Source: https://www.cognitoforms.com/support/4/data-integration/422/workflow/workflow-scenarios/serial-task-workflow Details the configuration for the 'Submit to IT' action, allowing HR to submit new setup requests to IT. It includes conditional logic for when the action is allowed, the status change it triggers, and the associated email notification settings. ```APIDOC Action: Submit to IT Allow Action: Condition: Entry status is 'Incomplete'. Change Status To: 'Pending' Send Emails: Recipient: IT Trigger: Always Content: Include employee's name, hire date, and IT workflow link. ``` -------------------------------- ### Configure Microsoft Power Automate Flow for Sending Documents to SharePoint Source: https://www.cognitoforms.com/support/4/data-integration/351/data-integration/microsoft-power-automate/sending-documents-to-sharepoint This snippet details the process of setting up a Microsoft Power Automate flow to automatically send generated PDF or Word documents from Cognito Forms entries to a specified SharePoint library. It covers trigger setup, document retrieval using the 'Get Document' action, and file creation in SharePoint with dynamic content. ```Microsoft Power Automate 1. Create a new flow. Search for Cognito Forms in the services list and then select a trigger. 2. Set Get Document as the first action. Set the name of the form in the Form field and set the Entry ID to the Entry Number dynamic element. 3. Set Template Number to the template you’d like to use. You can find this number in the Manage Document Template settings in your Cognito Forms account. 4. Add another step using SharePoint > Create file as the action. 5. Set the Site Address to the site where the file should be sent and choose the Folder Path for the folder where you’d like the document sent. 6. Set the File Name and File Content fields to the corresponding dynamic content elements under the Get Document step that was previously created. ``` -------------------------------- ### Base URL for Redirect Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url The fundamental URL to which form data will be appended. This is the starting point for constructing a parameterized redirect URL. ```URL http://www.example.com ``` -------------------------------- ### Create Google Maps API Key in Google Cloud Platform Source: https://www.cognitoforms.com/support/4/data-integration/470/data-integration/address-autocomplete This guide outlines the steps to generate a new Google Maps API key within the Google Cloud Platform, including project setup, billing activation, and enabling required APIs like Maps JavaScript API and Places API (New). ```APIDOC 1. Create or sign in to your Google account and then go to Google Cloud. 2. Select the projects dropdown in the top toolbar to create a new project or select an existing project. 3. Open the menu in the top left and select Billing. Follow the steps to set up billing information for your account. 4. Open the menu and go to Google Maps Platform > APIs & Services. 5. Find and enable Maps JavaScript API and Places API (New). 6. Open the menu and go to APIs & Services > Credentials. 7. Select + CREATE CREDENTIALS > API key. (If an API key was generated after billing setup, you may ignore this step). 8. To rename your key, select the key name from the list to open the key settings. Click Save when done. ``` -------------------------------- ### Example JSON Payload for User Data Source: https://www.cognitoforms.com/support/4/data-integration/66/data-integration/webhooks This JSON snippet illustrates a common data interchange format used on the web. It describes a user with properties such as ID, email, name, and creation date, demonstrating how different systems can communicate data efficiently. ```JSON { "id":"12345", "email":"test@test.com", "name":"Test User", "date_created":"2015-01-20T16:42.000Z" } ``` -------------------------------- ### Jotform API Key Usage for Form Import Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/faqs-for-jotform-users Instructions on how to find and use the Jotform API Key to import forms into Cognito Forms. It details the steps to generate a new key with 'Read Access' permissions and provides an example of a custom API URL format. ```APIDOC Jotform API Key Location: - In your Jotform account, select your avatar in the top right corner and then select Settings < API. Create New Key: - If you don’t have any existing API Keys, select Create New Key. - Give your key a name (Ex: Cognito Forms) and set Permissions to Read Access. Custom API URL Format: - If you have a custom API Url that does not contain api.jotform.com, enter it under Jotform API Url. - Make sure that your Url ends in a trailing slash. - Example: https://yourorganization.jotform.com/API/ ``` -------------------------------- ### Complete Redirect URL with First Name Parameter Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url An example of a full redirect URL that passes only the first name from a Name field, demonstrating the practical application of specific name field targeting. ```URL http://www.example.com?YourName=[Name.First] ``` -------------------------------- ### Configure URL for Form-to-Form Prefilling Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form This snippet demonstrates the URL structure used to redirect from one Cognito Form to another while prefilling fields. It shows the basic `?entry={}` parameter for prefilling and an example of how to include specific field values, including nested fields, using field tokens. ```URL Syntax https://cognitoforms.com/YourOrg/Form2?entry={} ``` ```URL Syntax https://cognitoforms.com/YourOrg/Form2?entry={"Name":{"First":"[Name.First]","Last":"[Name.Last]"}} ``` -------------------------------- ### Cognito Forms CSS Variable Reference Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide A comprehensive reference of useful CSS variables provided by Cognito Forms, allowing detailed customization of form elements such as borders, buttons, colors, spacing, and animations. Each variable's purpose and usage are described. ```APIDOC --border-radius: Used to round the corners of elements. To control certain elements independently of each other, see --input__border-radius, --button__border-radius and --toggle__border-radius. --button-secondary__background-color: Background color of secondary buttons, e.g. those that do not perform the primary action on the page. Not the submit button. --button-secondary__color: Text color of secondary buttons. --checkable-checked__scale: The size of checked checkboxes and radio buttons. The default is to be slightly bigger when checked. --checkable__scale: The size of checkboxes and radio buttons. --gutter: The width of the gutter between fields in different columns. Used to proportionally space everything on the form. The lower the number the less white space, the higher the number the more white space. --highlight-reverse: The color of text that goes on a background of --highlight color. --highlight: Color used to indicate active state. Used for focus indication. --icon-weight: How thin or heavy icons appear. Takes a unitless value, optimally between .2 and 2. --input__background-color: Background color of inputs. --input__border-color: Border color of inputs. --input__border-width: Border width of inputs. --input__color: Text color of inputs. --input__padding-h: The amount of white space between left and right of the text in an input and its edge. --input__padding-v: The amount of white space between top and bottom of the text in an input and its edge. --negative-reverse: The color of text that goes on a background of --negative color. --negative: Color that is mainly used for error messages. --speed: Speed of a page transitioning from one to another. All transitions are set proportionally to this. To eliminate all transitions set to zero. To speed up all transitions set to any number less that one second, e.g. .5s. --toggle__border-radius: Make toggle switches circles or just slightly round their corners. ``` -------------------------------- ### Configure Auto-Create Entries Automation Source: https://www.cognitoforms.com/support/4/data-integration/495/workflow/auto-create-entries Step-by-step guide to link forms using Lookup or Person fields and set up the 'Create Entries' action in Form A's Workflow menu to automatically generate new entries in Form B. ```English 1. Use a Lookup or Person field to link two forms, like Form A (where the workflow starts) and Form B (where entries will be created automatically). 2. In Form A, turn on "Use with Lookup Field?" or "Use with Person Field?" in the form settings. 3. In Form B, add a Lookup or Person field and select Form A under "Look Up Choices From" or "Look Up People From". 4. In Form A’s Workflow menu, go to Action Settings > Create Entries > + New Entry. 5. Choose Form B as the target form and Submit as the action. 6. Finally, prefill the Lookup or Person field in Form B with entry data from Form A. ``` -------------------------------- ### Cognito Forms CSS Selectors Reference Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide A comprehensive list of CSS selectors for targeting various elements within Cognito Forms, intended for custom styling. Users should prefix these selectors with an ID for higher specificity. ```APIDOC All buttons: .cog-button All inputs: .el-input__inner, .el-textarea__inner, .el-radio__inner, .el-checkbox__inner, .cog-signature__pad All labels: .cog-label (may not exactly correspond to html `label` element) All section titles: .cog-section__heading Check boxes and radio buttons: .el-radio__inner, .el-checkbox__inner Error messages: .cog-error-message Fields with error messages: .cog-field.is-error Form title: .cog-header h1 Help text: .cog-helptext Primary button (E.g. submit button): .cog-button--primary Required fields: .cog-field.is-required Secondary buttons: .cog-button--secondary Specific fields: Each field has a unique class. E.g. .cog-field-id--12 Text inputs, textareas, and selects: .el-input__inner, .el-textarea__inner ``` -------------------------------- ### Example SPF Record Concatenation Source: https://www.cognitoforms.com/support/4/data-integration/244/building-forms/verified-email-domains This example demonstrates how to combine multiple Sender Policy Framework (SPF) records into a single record. This is crucial when your domain's DNS already contains an SPF record, as only one SPF record is typically allowed per domain. The "include" mechanism is used to authorize multiple external mail servers. ```DNS v=spf1 include:_spf.google.com include:spf.protection.outlook.com include:mailgun.org ~all ``` -------------------------------- ### Cognito Forms Field Type CSS Classes Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide A reference detailing the CSS class names associated with different Cognito Forms field types and their subtypes, enabling targeted styling of specific field components. ```APIDOC Address: .cog-address (Subtypes: .cog-address--us, .cog-address--international) Calculation: .cog-calculation (Subtypes: .cog-calculation--singleline, .cog-calculation--yesno, .cog-calculation--decimal, .cog-calculation--percentage, .cog-calculation--currency, .cog-calculation--date, .cog-calculation--time) Choice: .cog-choice (Subtypes: .cog-choice--dropdown, .cog-choice--radiobuttons, .cog-choice--checkboxes) Content: .cog-content Currency: .cog-currency Date/Time: .cog-date (Subtypes: .cog-date--date, .cog-date--time) Email: .cog-email File Upload: .cog-file Name: .cog-name Number: .cog-number (Subtypes: .cog-number--integer, .cog-number--decimal, .cog-number--percent) Phone: .cog-phone (Subtypes: .cog-phone--us, .cog-phone--international) Rating Scale: .cog-rating-scale Section: .cog-section (Subtypes: .cog-repeating-section) Signature: .cog-signature Table: .cog-table Textbox: .cog-text (Subtypes: .cog-text--singleline, .cog-text--multiplelines) Website: .cog-website Yes/No: .cog-yesno (Subtypes: .cog-yesno--checkbox, .cog-yesno--radiobuttons, .cog-yesno--toggle) ``` -------------------------------- ### Cognito Forms Date/Time Comparison and Arithmetic Syntax Source: https://www.cognitoforms.com/support/4/data-integration/48/calculations/datetime-calculations Examples demonstrating various comparison and arithmetic operations on date and time fields in Cognito Forms, including equality, inequality, greater than, less than, and calculating the difference in days between two dates. ```Cognito Forms Expression =StartDate = EndDate // Result: false =StartDate != EndDate // Result: true =StartDate <> EndDate // Result: true =StartDate > EndDate // Result: false =StartDate >= EndDate // Result: false =StartDate < EndDate // Result: true =StartDate <= EndDate // Result: true =(EndDate - StartDate).Days // Result: 30 =DateTime.Today // Result: 5/6/2014 =StartDate.AddDays(10) // Result: 1/11/2015 =StartDate.DayOfWeek // Result: "Thursday" ``` -------------------------------- ### Calculate Event Start Time for Google Calendar Source: https://www.cognitoforms.com/support/4/data-integration/444/data-integration/zapier/creating-events-in-google-calendar Calculates the start date and time string in ISO 8601 format (yyyy-MM-ddTHH:mm) required for Google Calendar events, combining separate date and time fields from a Cognito Form. This calculation is used within a Cognito Forms Calculation field. ```Cognito Forms Calculation =StartDate.ToString("yyyy-MM-dd") + "T" + StartTime.ToString("HH:mm") ``` -------------------------------- ### Data Integration Error Troubleshooting Guide Source: https://www.cognitoforms.com/support/4/data-integration/219/entries/importing-entries This section details common errors that may occur during data import or integration processes, providing the meaning of each error and specific instructions on how to correct them to ensure successful data transfer. ```APIDOC Error: …must be formatted as … or … Meaning: Yes/No value is null. Correction: This field cannot be left blank. You must enter ‘Yes’ or ‘No’. Custom options should use ‘True’ or ‘False’. ``` ```APIDOC Error: …_Id is required Meaning: No ID value was included, or the cells are not number format. Correction: Add an ID value when using the ‘Update entries when entry IDs match’ option. Must use Number Formatted Cells. ``` ```APIDOC Error: Sheet…must have an ID column… Meaning: The Repeating Section/Table Sheet’s first column does not include a matching number from the Form_ID column. Correction: Check the numbers in the main and Repeating Data sheets’ first columns to ensure the numbers match correctly. ``` ```APIDOC Error: …must contain a sheet named… Meaning: The secondary sheet for Repeating Section/Table data is missing. Correction: Redownload import template & copy data into all columns. Do not delete secondary sheets. ``` ```APIDOC Error: …does not contain an entry with… Meaning: The Repeating Section/Table Sheet ID column is empty. Correction: Add values in the Repeating Section/Table Sheet ID column. ``` ```APIDOC Error: …which does not exist in sheet… Meaning: The ID column is not working correctly or formatted correctly. Correction: Redownload the import template and map data to the right columns and sheets. ``` ```APIDOC Error: A field exceeded quantity limits Meaning: The imported data exceeds the quantity limit. Correction: Change or remove the data in this column. If using a Quantity field, adjust the number accordingly. If exceeding the quantity limit is fine, remove the limit via the Build page before starting the import. ``` ```APIDOC Error: … contains more than one row with ID… Meaning: Duplicate number in the first column, _ID. Correction: Check all rows of the first column and change duplicate numbers. ``` ```APIDOC Error: Object reference not set to an instance of an object Meaning: The first column, _ID, is not a number. Correction: Enter a number (e.g. 1, 2, 3) in the first column. Only use integers. ``` ```APIDOC Error: …must be formatted as a date Meaning: Date format is incorrect. Correction: Update the value to use the correct format. For example, the standard US format is DD/MM/YYYY. ``` ```APIDOC Error: …must be formatted as an integer Meaning: Value in Excel is not an integer. Correction: Must be a number without a decimal value. ``` ```APIDOC Error: … contains more than one column with label… Meaning: A column label has been duplicated. Correction: One column needs to be renamed or removed. ``` ```APIDOC Error: …must be formatted as a decimal Meaning: The value must be a decimal. Correction: Must be a number with decimal places. ``` ```APIDOC Error: Index was outside the bounds of the array Meaning: The file type is incorrect. Correction: Try to import an xlsx file. ``` ```APIDOC Error: …contains no data Meaning: The file selected didn’t have any header or row data to import. Correction: Choose another file or download the import template and populate your data. ``` ```APIDOC Error: Imported file failed validation checks Meaning: The repeating section sheet ID column has no header or value. Correction: Redownload the import template and map data to the right columns and sheets. Do not delete any column headers. ``` ```APIDOC Error: … is not a valid value for DateTime Meaning: The DateTime value is incorrect. Correction: Update the format. The date format is based on the form’s localization settings. The standard US format is DD/MM/YYYY. ``` ```APIDOC Error: Couldn’t convert value to type… Meaning: Lookup value in the import does not match an existing option for that lookup. Correction: You must use only the values available to choose from on a lookup. Check to ensure the Lookup field value is correct on the source form. ``` ```APIDOC Error: …must be formatted as a time Meaning: Value does not have the correct time format. Correction: Use either HH:MM:SS AM/PM or 24-hour (e.g., 13:00) formats. ``` ```APIDOC Error: … not a legal OleAut date Meaning: The value entered does not have the correct date format. Correction: The date format is based on the form’s localization settings. The standard US format is DD/MM/YYYY. ``` -------------------------------- ### GA4 Page Path for Custom Form Page Titles Source: https://www.cognitoforms.com/support/4/data-integration/221/building-forms/analytics-tracking Provides an example of constructing a GA4 page path for forms that use custom page titles, incorporating organization and form codes. ```GA4 Configuration /orgcode/formcode/#Start ``` -------------------------------- ### Example JSON for Sending Generated Documents from Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/66/data-integration/webhooks This JSON snippet illustrates the structure of data sent from Cognito Forms via webhooks, including links to generated documents. Document links are identified by their template ID (e.g., 'Document1' for Template ID:1). ```JSON { "id":"12345", "email":"test@test.com", "name":"Test User", "date_created":"2015-01-20T16:42.000Z", "Document1": "http://cognitoforms.com/d/32k4bb324bhj2l4jkbkjbgcode=rnfrj34WGlqkvHrN68Vt7C4", "Document2": "http://cognitoforms.com/d/45jgherhhhrfe333nnkbkjbgcode=HYzrT8wASVGLNkfrle34" } ``` -------------------------------- ### Prefill Cognito Form Fields Using URL Redirect Source: https://www.cognitoforms.com/support/4/data-integration/119/faq/how-do-i-prefill-form-data-from-another-form This example illustrates the base URL structure required to prefill fields in a Cognito Form by redirecting from another form. The "?entry={}" part is where field value tokens from the source form are inserted to pass data to the target form. ```URL https://cognitoforms.com/YourOrg/Form2?entry={} ``` -------------------------------- ### Define Basic Calculations in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/2/calculations Learn how to set constant values or simple dynamic calculations in Cognito Forms fields. Calculations must begin with an equals sign (=) to be evaluated. Examples include numerical operations and date expressions. ```Cognito Forms Calculation 2 ``` ```Cognito Forms Calculation = 1 + 1 ``` ```Cognito Forms Calculation "1/1/2015" ``` ```Cognito Forms Calculation "Today" ``` -------------------------------- ### Configure Pay Action for Service Request Payment Workflow Source: https://www.cognitoforms.com/support/4/data-integration/424/workflow/workflow-scenarios/negotiation-workflow Describes the setup for the 'Pay' action, which handles payment processing for service requests. It details the conditional logic for enabling the action, automatically updating the entry status upon payment, and sending a payment receipt to the customer. ```APIDOC Action: Pay Allow Action: Condition: 'When' status is 'Awaiting payment' Purpose: Prevent payment before technician completes work. ``` ```APIDOC Action: Pay Change Status To: New Status: 'Closed' Purpose: Automatically update entry to Closed once payment is made. ``` ```APIDOC Action: Pay Send Emails: Email: Customer Receipt To: Customer's email (prefill) Send Condition: 'Always' Include: Receipt (tick box) Purpose: Send customer a receipt for their invoice payment. ``` -------------------------------- ### Cognito Forms: Conditional 'if' Statement Source: https://www.cognitoforms.com/support/4/data-integration/72/document-generation/merge-syntax Demonstrates how to use the 'if' tag to display content conditionally based on a field's value. This example shows displaying a 'Please explain' prompt if customer service was rated 'No'. ```Cognito Forms Syntax {if (DidYouFindOurCustomerServiceSatisfactory = "No")} Please explain. {PleaseExplain} { end if } ``` -------------------------------- ### Perform basic numeric and comparison calculations in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/50/calculations/numeric-calculations Examples of common arithmetic and comparison operations using 'Adults' and 'Children' number fields. This includes addition, subtraction, multiplication, division, equality checks, and inequality checks. Blank values are treated as zeros in these calculations. ```CognitoForms Calculation =Adults + Children ``` ```CognitoForms Calculation =Adults - Children ``` ```CognitoForms Calculation =Adults * Children ``` ```CognitoForms Calculation =Adults / Children ``` ```CognitoForms Calculation =Adults = Children ``` ```CognitoForms Calculation =Adults == Children ``` ```CognitoForms Calculation =Adults != Children ``` ```CognitoForms Calculation =Adults <> Children ``` ```CognitoForms Calculation =Adults > Children ``` ```CognitoForms Calculation =Adults >= Children ``` ```CognitoForms Calculation =Adults < Children ``` ```CognitoForms Calculation =Adults <= Children ``` -------------------------------- ### New Employee IT Onboarding Workflow Statuses Source: https://www.cognitoforms.com/support/4/data-integration/422/workflow/workflow-scenarios/serial-task-workflow Defines the three key statuses used in the New Employee IT Onboarding workflow to track the progress of a request from HR submission to IT completion. ```APIDOC Statuses: - Incomplete: The default status for all entries that have not been submitted. - Pending: The request for setup has been submitted by HR to IT. - Complete: IT has completed the requested setup. ``` -------------------------------- ### Apply Global or Form-Specific CSS Variables to Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide This CSS snippet demonstrates how to define custom CSS variables that apply either globally to all Cognito forms on a page using `.cog-cognito` or to a specific form using its unique ID class (e.g., `.cog-1`). Prefixing with `:root` ensures higher specificity, overriding default styles. ```CSS :root .cog-cognito{ [your CSS variables go here] } ``` -------------------------------- ### Parameters for Create Entry Settings Source: https://www.cognitoforms.com/support/4/data-integration/495/workflow/auto-create-entries Detailed explanation of the 'Create Entries' dialog options, including Target Form selection, Action assignment, and Prefill Fields configuration, along with their requirements and implications. ```APIDOC Target Form: - Description: Select the form to create new entries on. The current form and the target form must be connected with Lookup or Person fields to auto-create entries. Additionally, you must have Administrator permissions on both forms. Action: - Description: Select the workflow action on the target form. This will assign the entry to the corresponding workflow status. Prefill Fields: - Description: Select one or more Lookup fields or Person fields to prefill with fields from the current form. ``` -------------------------------- ### Configure 'Submit to HR' Action for IT Source: https://www.cognitoforms.com/support/4/data-integration/422/workflow/workflow-scenarios/serial-task-workflow Details the configuration for the 'Submit to HR' action, allowing IT to notify HR that a request has been completed. It includes conditional logic for when the action is allowed, the status change it triggers, and the associated email notification settings, along with field requirements. ```APIDOC Action: Submit to HR Allow Action: Condition: Entry status is 'Pending'. Change Status To: 'Complete' Send Emails: Recipient: HR Trigger: Always Content: Include new employee's name and HR workflow link. Field Requirements: Section: IT Equipment Setup Condition: Required when 'Submit to HR' action is performed. ``` -------------------------------- ### Substring Function for Text Extraction Source: https://www.cognitoforms.com/support/4/data-integration/52/calculations/text-calculations Extracts a substring from a text instance based on a specified starting character position and length. ```APIDOC Substring(Number, Number) Returns: Text Description: Returns a substring of this instance starting at the specified character position and until the specified length. ``` -------------------------------- ### Configure Organization-Wide Single Sign-On (SSO) in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/443/account-organizations/user-management/user-authentication-settings This guide outlines the steps to require all organization members to sign up or log in with a selected SSO provider (Google, Facebook, or Microsoft) in Cognito Forms. It also includes important considerations for managing existing users and changing providers. ```APIDOC To require single sign-on for all user accounts: 1. Find your organization’s name in the top left corner of the sidebar and select Settings. 2. Click Users & Authentication in the left-hand navigation. 3. Toggle on Require single sign-on for all users in your organization. 4. Select an SSO provider (Google, Microsoft, or Facebook). You must be logged in with your selected provider before you can enable SSO. 5. Select Save. If you want to change your SSO provider, you must turn off Require Single Sign-On and then repeat steps 3 and 4. Managing users: - Once you restrict users to your selected SSO provider, all organization members must sign up or log in with an email address associated with your provider. - If your existing users have the right credentials, they can continue to log in as usual. If you enable SSO and a user does not have the right credentials, you can turn it off and allow them to log in and update their email address. - If any existing users are members of multiple Cognito Forms organizations, they must navigate to an organization-specific Url to login with SSO. You can find your organization’s Url when logged in to your organization dashboard (ex: https://www.cognitoforms.com/yourorganization). - Please note that enabling SSO does not affect user permissions for new or existing users. ``` -------------------------------- ### Cognito Forms: Event Signup Sheet Calculation Examples Source: https://www.cognitoforms.com/support/4/data-integration/51/calculations/repeating-sectionstables Demonstrates various calculated fields for an event registration form, including attendee counts, registration fees, and optional item costs, using Cognito Forms' calculation language for repeating data sections. ```Cognito Forms Calculation Language Number of Adults: =Attendees.Count(AdultOrChild = "Adult") ``` ```Cognito Forms Calculation Language Adult Registration Fee: =NumberOfAdults * 150 ``` ```Cognito Forms Calculation Language Number of Children: =Attendees.Count(AdultOrChild = "Child") ``` ```Cognito Forms Calculation Language Child Registration Fee: =Math.Max(NumberOfChildren - NumberOfAdults, 0) * 25 =NumberOfChildren > NumberOfAdults ? (NumberOfChildren - NumberOfAdults) * 25 : 0 ``` ```Cognito Forms Calculation Language Number of T-Shirts: =Attendees.Count(TShirt != "None") ``` ```Cognito Forms Calculation Language T-Shirt Fee: =Attendees.Count(TShirt.Contains("Youth")) * 15 + Attendees.Count(TShirt.Contains("Adult")) * 20 ``` ```Cognito Forms Calculation Language Number Playing Golf On Friday: =Attendees.Count(GolfOnFriday) ``` ```Cognito Forms Calculation Language Golf Registration Fee: =NumberPlayingGolfOnFriday * 65 ``` ```Cognito Forms Calculation Language Total Arcade Bucks: =Attendees.Sum(ArcadeBucks) ``` ```Cognito Forms Calculation Language Arcade Bucks Fee: =TotalArcadeBucks * 0.75 ``` ```Cognito Forms Calculation Language Total Registration Fee: =AdultRegistrationFee + ChildRegistrationFee + TShirtFee + GolfRegistrationFee + ArcadeBucksFee ``` -------------------------------- ### Prefilling Lookup Fields Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form Demonstrates how to prefill a Lookup field by targeting a specific entry using a combined form ID and entry ID. ```JSON {"LookupField":"20-11"} ``` -------------------------------- ### Assemble Workflow in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/build Instructions on how to build a custom workflow using the Workflow menu on the form's Build page, combining custom actions, statuses, and roles to automate processes. ```APIDOC On your form’s Build page, open the Workflow menu to assemble your workflow using a combination of custom actions, statuses, and roles. ``` -------------------------------- ### Configure Update Action for Service Request Negotiation Workflow Source: https://www.cognitoforms.com/support/4/data-integration/424/workflow/workflow-scenarios/negotiation-workflow Details the setup for the 'Update' action, which is used by multiple roles in a service request negotiation. It outlines conditional logic for action visibility and the configuration of three distinct email notifications triggered by specific workflow statuses and user signatures. ```APIDOC Action: Update Allow Action: Condition: 'When' entry status is NOT 'Incomplete' Purpose: Ensure only fully submitted requests can be updated. ``` ```APIDOC Action: Update Send Emails: Email 1: Notify Customer Estimate Ready To: Customer's email (prefill) Include: Customer workflow link Send Condition: 'When' Estimator's signature is filled AND entry status is 'Estimate pending' Purpose: Inform customer that an estimate is ready for review. ``` ```APIDOC Action: Update Send Emails: Email 2: Notify Service Estimate Approved To: Service department Include: Technician workflow link Send Condition: 'When' Customer's signature is filled in 'Estimate Approval' field AND entry status is 'Estimate approved' Purpose: Inform service department that an estimate has been approved by a customer. ``` ```APIDOC Action: Update Send Emails: Email 3: Send Customer Invoice To: Customer's email (prefill) Include: Customer workflow link Send Condition: 'When' Technician's signature is filled out AND entry status is 'Awaiting payment' Purpose: Send customer an invoice once service is completed, allowing access for payment. ``` -------------------------------- ### Prevent Form Submission with Seamless Embed Source: https://www.cognitoforms.com/support/4/data-integration/62/data-integration/client-side-events This example demonstrates how to capture the 'beforeSubmit' event for a seamlessly embedded Cognito Form. It prevents the form submission if the first name entered by the user is 'Bob'. ```HTML ``` -------------------------------- ### Complete Redirect URL with Single Parameter Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Combines the base URL with a single parameterized field 'Name', using a custom key 'YourName'. This shows how a full redirect URL is constructed. ```URL http://www.example.com?YourName=[Name] ``` -------------------------------- ### Prevent Form Submission with Iframe Embed Source: https://www.cognitoforms.com/support/4/data-integration/62/data-integration/client-side-events This example illustrates how to capture the 'beforeSubmit' event for a Cognito Form embedded within an iframe. It prevents the form submission if the first name entered by the user is 'Bob'. ```HTML ``` -------------------------------- ### Reformat Expression to Insert Space Between Captured Groups Source: https://www.cognitoforms.com/support/4/data-integration/44/building-forms/form-field-reference/textbox-field This reformat expression uses the captured groups ($1 and $2) from a regular expression to insert a space between them. For example, 'abcd' would be reformatted to 'ab cd'. ```Regex $1 $2 ``` -------------------------------- ### Overview of Folder Permissions and Access Source: https://www.cognitoforms.com/support/4/data-integration/164/account-organizations/user-management/user-permission-levels Describes the general rules for folder permissions, including inheritance, how to access folder settings, and the capabilities of different administrative roles. ```APIDOC Folder Permissions Overview: - Availability: Available to organizations on the Enterprise plan. - Inheritance: By default, folder/form permissions are inherited from global permission levels. - Accessing Permissions: Hover over the folder name in the sidebar, click the ellipsis (…) to open the folder menu, and select Folder Permissions. - Role Capabilities: - Global Administrators: Can manage the folder and create new folders. - Folder Administrators: Can manage the folder, but cannot create new folders. - Editors/Reviewers: Can view forms in the folder, but cannot make changes to the folder. - Limited Access users: Cannot make any changes to the folder, and cannot view the folder unless it contains forms the user has permission to access. ``` -------------------------------- ### Check if First Name Starts With a Character Source: https://www.cognitoforms.com/support/4/data-integration/52/calculations/text-calculations Demonstrates using the StartsWith function to check if a text field's value begins with a specified substring. Returns true if it does, false otherwise. ```CognitoForms Formula = Name.First.StartsWith("J") ``` -------------------------------- ### Prefilling Forms via Public Link or URL Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form Illustrates how to prefill form data by appending a JSON object to a form's public link or webpage URL using the `?entry=` parameter. ```URL http://mysite.com/contactus?entry={"Name":{"First":"John","Last":"Smith"},"Address":{"Line1":"1234 King Street","Line2":"Apt.1601","City":"Los Angeles","State":"California","PostalCode":"90210","Country":"United States"}} ``` -------------------------------- ### Make Integration Key Terms Source: https://www.cognitoforms.com/support/4/data-integration/328/data-integration/make Defines core terminology used within the Make platform for building integrations with Cognito Forms, including concepts like scenarios, modules, aggregators, iterators, and bundles. ```APIDOC Scenario: A scenario is what users create to connect different apps or services together in order to transfer data (ex: Cognito Forms and MailChimp). A scenario is comprised of a sequence of modules. Module: Modules allow you to define how an app or service responds to a request. You can use five different types of modules when creating a scenario. Aggregators: An aggregator is a type of module that merges together multiple bundles (multiple arrays of data) into one single bundle. Iterators: An iterator is a type of module that allows you to take one bundle of data (an array of data) and divide into separate bundles. Bundle: A bundle is a basic unit that is returned or received by modules. A bundle consists of items like text, numbers, boolean values, date times, and more. ``` -------------------------------- ### Sum Specific Fields in Cognito Forms Repeating Section Source: https://www.cognitoforms.com/support/4/data-integration/122/faq/how-do-i-total-a-repeating-section Illustrates how to use the Sum() function to add up values from a specific field within a repeating section, for example, summing the 'PricePerGuest' field for all guests. ```Cognito Forms Calculation =Guests.Sum(PricePerGuest) ``` -------------------------------- ### Define Workflow Actions for Job Offer Approval Source: https://www.cognitoforms.com/support/4/data-integration/421/workflow/workflow-scenarios/parallel-approval-workflow Outlines the primary actions available within the Job Offer Approval workflow, detailing their purpose and the roles involved. ```APIDOC Action: Submit Purpose: For HR admins to submit a new Job Offer Approval, initiating the workflow. Action: Approve Purpose: For the Hiring Manager and Department Head to approve an entry. Action: Update Purpose: For HR admins to update an entry as needed. ``` -------------------------------- ### Jotform to Cognito Forms Feature Equivalents Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/faqs-for-jotform-users This table provides a mapping of Jotform field types and features that are not directly imported into Cognito Forms, along with their recommended alternative features or functionalities within Cognito Forms. ```APIDOC Jotform: Appointment Cognito Forms Alternative: Use our Date/Time field to gather appointment bookings on your forms. Jotform: Approval flows Cognito Forms Alternative: Our Workflow features allow you to automate an endless variety of processes, including approvals, tasks, negotiations, and more. Jotform: Captcha Cognito Forms Alternative: Our forms use what’s known as a smart captcha. Jotform: Conditions Cognito Forms Alternative: Control what fields your users see and when they see them with our easy-to-use conditional logic builder. Jotform: Custom CSS Cognito Forms Alternative: Customize your form styles on the Publish page or style your form with your own CSS. Jotform: Fill in the Blank Cognito Forms Alternative: Use a Content field to insert values from other fields directly into your message. Jotform: Jotform Sign Cognito Forms Alternative: Our Signature field allows you to collect typed or handwritten electronic signatures on your forms. Jotform: Notification emails Cognito Forms Alternative: Notify the right people at the right time with custom email notifications. Jotform: Payment Cognito Forms Alternative: Connect your payment forms to your PayPal, Stripe, or Square account. Jotform: Widgets Cognito Forms Alternative: Use a variety of field types from the Add Field menu to display links and images, collect uploaded files, create checklists, enforce quantity limits, and more. ``` -------------------------------- ### General Parameter Structure for Redirect URL Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Defines the structure for a single parameter. It consists of a user-defined 'Key' for external use and a 'Token' (the form field's label) enclosed in brackets, separated by an equal sign. ```URL Key=[Token] ``` -------------------------------- ### Prefilling Yes/No Fields Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form Explains how to prefill a Yes/No field by setting its value to either TRUE or FALSE. ```JSON {"FieldName":"TRUE"} ``` -------------------------------- ### Customize Iframe CSS for Single Form Source: https://www.cognitoforms.com/support/4/data-integration/168/style-publish/iframe-embedding This JavaScript snippet demonstrates how to apply custom CSS styles directly to a single embedded Cognito Form using the Cognito.setCss method. The example targets the primary button's background color. ```JavaScript ``` -------------------------------- ### Jotform API Key Configuration for Form Import Source: https://www.cognitoforms.com/support/4/data-integration/445/faq/can-i-import-my-forms-from-jotform Instructions on how to locate or create a Jotform API Key within your Jotform account settings, set its permissions to 'Read Access', and understand that Cognito Forms does not store this key. This key is essential for initiating the form import process. ```APIDOC Jotform API Key: Location: Jotform Account -> Settings -> API Creation: Create New Key (if none exists) Name: (e.g., Cognito Forms) Permissions: Read Access Usage Note: Used solely for form import; not transmitted or stored by Cognito Forms. ``` -------------------------------- ### Calculate Past Dates using AddMonths Source: https://www.cognitoforms.com/support/4/data-integration/48/calculations/datetime-calculations This example demonstrates how to calculate a date three months prior to the current date using the DateTime.Today.AddMonths() function in Cognito Forms calculations. Positive and negative numbers can be used for adding or subtracting time units. ```Calculations =DateTime.Today.AddMonths(-3) ``` -------------------------------- ### Calculate Total Days Between Two Dates in Form Expressions Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/calculations This snippet shows how to calculate the total number of days between a start date and an end date using a simple subtraction in a Calculation field. The result is the difference in days. ```Cognito Forms Expression =(EndDate - StartDate).Days ``` -------------------------------- ### Add Help Text to Form Fields Source: https://www.cognitoforms.com/support/4/data-integration/40/building-forms/form-field-reference/repeating-section Describes the functionality of help text, which provides additional instructions directly under a field. It supports rich formatting, hyperlinks, images, and populating values from other fields, with the exception of protected fields. ```APIDOC Feature: Help Text Purpose: Provide additional instructions to users. Location: Displays directly under the field. Capabilities: - Formatting toolbar for text formatting. - Insert hyperlinks. - Insert images. - Populate values from other fields. Limitations: Values from protected fields cannot be inserted. ``` -------------------------------- ### Name Field Property: Help Text Source: https://www.cognitoforms.com/support/4/data-integration/34/building-forms/form-field-reference/name-field Provides additional instructions to the user, displayed directly under the field. Supports rich text formatting and value insertion, with a restriction on protected fields. ```APIDOC Name field property: Help Text Description: Used to assist the user by providing additional instructions. Display: Directly under the field. Formatting: Supports text formatting, hyperlinks, images, and values from other fields (via formatting toolbar). Limitations: Values from protected fields cannot be inserted into the help text. ``` -------------------------------- ### Set Item Name and Description for Payment (Cognito Forms) Source: https://www.cognitoforms.com/support/4/data-integration/403/collecting-payment/taking-deposits These expressions dynamically set the item name and description for the payment transaction based on the customer's chosen options and their decision to pay in full or a deposit. ```Cognito Forms Expression =ChooseYourOption + (if ChooseAddons.Count()>0 then " with " +ChooseAddons else null) ``` ```Cognito Forms Expression =DoYouWantToPayInFullToday ``` -------------------------------- ### Count Items in Cognito Forms Repeating Section Source: https://www.cognitoforms.com/support/4/data-integration/122/faq/how-do-i-total-a-repeating-section Demonstrates how to use the Count() function to get the total number of entries in a repeating section, such as counting guests in an RSVP form. This calculation field should be placed outside the repeating section. ```Cognito Forms Calculation =Guests.Count() ``` -------------------------------- ### Cognito Forms: Conditional 'if' with .Contains Source: https://www.cognitoforms.com/support/4/data-integration/72/document-generation/merge-syntax Illustrates using the 'if' tag with the '.Contains' calculation property to check if a multi-select field (like checkboxes) includes a specific value. This example checks for 'First Choice'. ```Cognito Forms Syntax {if (Checkboxes.Contains("First Choice"))} First choice was made! {end if} ``` -------------------------------- ### Conditionally Require Form Fields Source: https://www.cognitoforms.com/support/4/data-integration/47/calculations/conditional-logic This expression defines a condition under which a form field becomes mandatory. In this example, a field is required only if the 'IsYourOrderForDeliveryOrPickup' field's value is 'Pick-up', ensuring necessary data collection for specific choices. ```Cognito Forms Expression Language =IsYourOrderForDeliveryOrPickup = "Pick-up" ``` -------------------------------- ### Complete Redirect URL with Rating Scale Parameter Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Demonstrates a full redirect URL including a parameter for a rating scale field, showing how the rating value is passed. ```URL http://www.example.com?RatingScale=[RatingScale.Question1] ``` -------------------------------- ### Auto-Capitalize Name Field in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/calculations This guide explains how to automatically capitalize the first letter of each word in a Name field within Cognito Forms. It utilizes a default value expression that splits the input string, capitalizes each word, and then reassembles it. ```Cognito Forms Expression =(Name.Split(' ').Select(it.Substring(0,1).ToUpper() + it.Substring(1))+ "").Replace(", ", " ") ``` -------------------------------- ### Override Cognito Forms Label Color with ID Prefix Source: https://www.cognitoforms.com/support/4/data-integration/165/style-publish/advanced-css-guide This CSS snippet demonstrates how to override the default color of Cognito Forms labels by prefixing the selector with an ID from the parent webpage, leveraging CSS specificity to ensure custom styles take precedence. ```CSS #my-awesome-website .cog-label { color: red; } ``` -------------------------------- ### Make Integration Actions Source: https://www.cognitoforms.com/support/4/data-integration/328/data-integration/make Outlines the available action modules in Make that allow reading or writing data to or from Cognito Forms, including creating, updating, deleting entries, and setting form availability. ```APIDOC Create entry: Creates a new form entry. This entry will be assigned the subsequent status following Incomplete. Set Form Availability: Sets the availability of a form. Update entry: Updates an existing entry. Delete entry: Deletes a specified entry. ``` -------------------------------- ### Populating Tables with Repeating Data using Merge Syntax Source: https://www.cognitoforms.com/support/4/data-integration/73/document-generation/styling-formatting Learn how to use the { each } and { end each } tags within a Microsoft Word table to dynamically populate rows with data from a repeating section in a Cognito Form. This method allows for condensing list-based field data into a structured table format. ```Merge Syntax | Name | Attending? | | --- | --- | | { each RepeatingSection }{Name} | {Attending}{ end each } | ``` -------------------------------- ### URL Encoding for Prefill Links Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form Provides a reference table for HTML encodings of special characters used in Cognito Forms prefill links to ensure compatibility across browsers. ```APIDOC Character | HTML Encoding --- | --- { | %7B } | %7D " | %22 , | %2C & | %26 [space] | + ``` -------------------------------- ### Cognito Forms: Format Numbers with Decimal Places (N Format) Source: https://www.cognitoforms.com/support/4/data-integration/50/calculations/numeric-calculations Demonstrates how to use the 'N' format specifier with `ToString()` to control the number of decimal places for a number field, without thousand separators. Examples show varying precision levels. ```CognitoForms Expression =Form.Number.ToString("N") ``` ```CognitoForms Expression =Form.Number.ToString("N0") ``` ```CognitoForms Expression =Form.Number.ToString("N1") ``` ```CognitoForms Expression =Form.Number.ToString("N2") ``` ```CognitoForms Expression =Form.Number.ToString("N3") ``` ```CognitoForms Expression =Form.Number.ToString("N10") ``` -------------------------------- ### Redirect URL Parameter with Custom Key Source: https://www.cognitoforms.com/support/4/data-integration/181/building-forms/posting-data-through-the-redirect-url Demonstrates using a custom 'Key' (e.g., 'YourName') while still referencing the form field 'Name' via its 'Token'. This allows for more flexible naming conventions outside the form. ```URL YourName=[Name] ``` -------------------------------- ### Calculate Total Hours from Date/Time in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/calculations This snippet provides an expression to calculate the total duration in hours between a start and end date/time in Cognito Forms. It combines date and time fields, converts them to minutes, calculates the difference, and rounds it to 15-minute increments. ```Cognito Forms Expression =(Math.Round((EndDate.AddMinutes(EndTime.Minute + (EndTime.Hour * 60)) - StartDate.AddMinutes(StartTime.Minute + (StartTime.Hour * 60))).TotalMinutes / 15) / 4) ``` -------------------------------- ### Cognito Forms: Displaying Images from File Upload Source: https://www.cognitoforms.com/support/4/data-integration/72/document-generation/merge-syntax Provides the basic syntax for displaying uploaded images as actual pictures using the 'image' tag, replacing the default text list. ```Cognito Forms Syntax { image FileUpload } ``` -------------------------------- ### Cognito Forms Card on File Payment Templates Source: https://www.cognitoforms.com/support/4/data-integration/196/collecting-payment/card-on-file-payments Overview of pre-built Cognito Forms templates demonstrating various card on file payment scenarios, including contracts, credit card authorizations, booking forms, and payment plan agreements. ```APIDOC Contract – Create a contract for services that allows customers to pay a lump sum or split up their payment. Credit Card Authorization Form – Capture a customer’s credit card billing information for later use. No payment is collected when the form is submitted. Credit Card Booking Form – Obtain payment for the entire amount due and also authorize future charges. Payment Plan Agreement – Collect a down payment and capture customers’ billing information for later use. ``` -------------------------------- ### Delay Event Execution with Promise for Asynchronous Validation Source: https://www.cognitoforms.com/support/4/data-integration/62/data-integration/client-side-events This advanced usage example demonstrates how to return a JavaScript Promise from an event handler to delay the normal execution of an event. This allows for asynchronous operations, such as remote validation, to complete before deciding whether to allow or prevent the event's default behavior. ```JavaScript Cognito.on('beforeSubmit', function(event) { return performRemoteValidation(event.data.entry).then(function(validationResult) { if (!validationResult.isValid) event.preventDefault(); }); }); ``` -------------------------------- ### Reference Lookup/Person Field Values in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/447/calculations/sections-and-lookups Examples demonstrating how to reference values from Lookup and Person fields in Cognito Forms calculations. This includes direct references, referencing a field inside a section, and referencing a field from a source form's section. ```Cognito Forms Calculation =Lookup.LocationName ``` ```Cognito Forms Calculation =Section.Lookup.LocationName ``` ```Cognito Forms Calculation =Lookup.Section.LocationName ``` -------------------------------- ### Prefilling Checkbox Choice Fields Source: https://www.cognitoforms.com/support/4/data-integration/65/data-integration/prefilling-a-form Shows how to prefill a Choice field configured as Checkboxes by providing an array of selected options. ```JSON {"ChoiceField":["First Choice","Second Choice"]} ``` -------------------------------- ### Calculate Total Days Between Dates in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/199/faq/how-do-i-calculate-the-number-of-business-days-between-a-date-range This expression calculates the total number of days between a Start Date and an End Date field in Cognito Forms. It should be placed in a Calculation field set to Number type and internal view only. ```Cognito Forms Expression =(EndDate - StartDate).Days ``` -------------------------------- ### Form Permissions Comparison by Role Source: https://www.cognitoforms.com/support/4/data-integration/164/account-organizations/user-management/user-permission-levels Compares the capabilities of different user roles (Administrator, Editor, Reviewer, Limited Access) regarding form management and entry handling within Cognito Forms. ```APIDOC Form Permissions: - Assign form permissions: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Build form: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Copy form: Administrator (Yes*), Editor (No), Reviewer (No), Limited Access (No) - Delete form: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Archive form: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Publish form: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - View form in Dashboard: Administrator (Yes), Editor (Yes), Reviewer (Yes), Limited Access (Yes**) - Move form to/from a folder: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - View/export form details: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) Entries Permissions: - View entries: Administrator (Yes), Editor (Yes), Reviewer (Yes), Limited Access (Yes**) - View integration audit data: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Create new entries: Administrator (Yes), Editor (Yes), Reviewer (Yes**), Limited Access (Yes**) - Auto-Create entries: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Create new entry view: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Edit entries: Administrator (Yes), Editor (Yes), Reviewer (Yes**), Limited Access (Yes**) - Change status: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Import entries: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Export entries: Administrator (Yes), Editor (Yes), Reviewer (Yes**), Limited Access (Yes**) - Download files: Administrator (Yes), Editor (Yes), Reviewer (Yes), Limited Access (No) - Delete entries: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Create documents: Administrator (Yes), Editor (Yes), Reviewer (Yes), Limited Access (Yes**) - Manage document templates: Administrator (Yes), Editor (No), Reviewer (No), Limited Access (No) - Share entries: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Email entries: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Mark entries as Read/Unread: Administrator (Yes), Editor (Yes), Reviewer (No), Limited Access (No) - Print entries: Administrator (Yes), Editor (Yes), Reviewer (Yes), Limited Access (Yes**) *Users with Administrator form permissions can copy a form if: 1) their global permission level is also Administrator or 2) they have Administrator permissions for at least one folder. **Reviewers and Limited Access users are granted these permissions only for specific shared entry views. Additionally, Limited Access users can only generate document templates set to the role they’ve been assigned and cannot export entries using the All Fields option. ``` -------------------------------- ### Implement Deferred or Onsite Payments in Cognito Forms Source: https://www.cognitoforms.com/support/4/data-integration/faq/tags/collecting-payment Configure your Cognito Form to support 'Pay Now' or 'Pay Later' options for customers. This setup uses a Choice field and conditional logic on the 'Require Payment When' setting to control when payment is mandatory. ```Cognito Forms Expression =(PaymentOptions = "Pay Now") ``` -------------------------------- ### Add Field Help Text Source: https://www.cognitoforms.com/support/4/data-integration/44/building-forms/form-field-reference/textbox-field Details the use of help text to provide additional instructions under a field, supporting rich formatting, hyperlinks, images, and value population from other fields (excluding protected fields). ```APIDOC Field.helpText: type: string description: Provides additional instructions directly under the field. features: - formatting: Toolbar for text, hyperlinks, images. - value_population: Populate values from other fields. constraints: - protected_fields: Values from protected fields cannot be inserted. ```