- Getting started with Airtable
- Introduction to Airtable basics
- Contacting Airtable Support Updated
- Airtable home screen
- Glossary of Airtable terminology
- Airtable technical requirements
- Feature differences between Airtable on desktop and mobile
- Airtable keyboard shortcuts
- Using Markdown in Airtable
- Adding descriptions in Airtable
- Finding Airtable IDs
- Airtable Automations
- Automations Overview
- Automation feature walkthroughs
- Integrated automation walkthroughs
- Airtable automation walkthroughs
- Linking existing records using automations
- Conditional groups of automation actions
- Repeating groups of Airtable automation actions
- Creating recurring records using automations
- How to delay Airtable automation runs
- Prevent automations from triggering by mistake
- Use automations to timestamp status updates
- Automation Triggers
- Airtable Triggers
- Airtable automation trigger: When record matches conditions
- Airtable automation trigger: When a form is submitted
- Airtable automation trigger: When record created
- Airtable automation trigger: When record updated
- Airtable automation trigger: When record enters view
- Airtable automation trigger: At scheduled time
- Airtable automation trigger: When webhook received
- Airtable automation trigger: When a button is clicked
- Airtable automation trigger: When email received Updated
- Integrated Triggers
- Airtable Triggers
- Automation Actions
- Airtable Actions
- Airtable automation action: Send email Updated
- Airtable automation action: Create record
- Airtable automation action: Update record
- Airtable automation action: Find records
- Airtable automation action: Sort list
- Airtable automation action: Run a script Updated
- Airtable automation action: Generate with AI
- Integrated Actions
- Airtable automation actions: Slack
- Airtable automation actions: Google Workspace
- Airtable automation action: Send MS Teams message
- Airtable automation actions: Outlook
- Airtable automation actions: Jira Cloud
- Airtable automation actions: Jira Server / Data Center
- Airtable automation actions: Salesforce
- Airtable automation action: Create post in Facebook Pages
- Airtable automation actions: GitHub Issues
- Airtable automation action: Hootsuite post
- Airtable automation action: Send Twilio SMS
- Airtable Actions
- Airtable Bases
- Using Airtable Cobuilder
- Airtable bases overview
- Creating and managing Airtable bases
- Structuring bases in Airtable
- Moving bases between workspaces in Airtable
- Creating and managing tables in Airtable
- Creating Airtable base share links
- Importing third-party data into Airtable
- Using insights in Airtable
- Troubleshooting Airtable base performance
- Airtable Betas
- Collaborating in Airtable
- Airtable Enterprise Support
- General Enterprise information
- External badging in Airtable
- Using app library and components in Airtable Updated
- Ask an Expert beta overview
- European data residency at Airtable
- Airtable user groups overview
- Airtable Enterprise API
- Creating and managing data retention policies in Airtable
- eDiscovery APIs in Airtable
- Airtable and data loss prevention
- Accessing Enterprise audit logs in Airtable
- Set up Jira Server / Data Center to connect with Airtable
- Admin panel pages
- Airtable admin panel overview
- Users - Airtable enterprise admin panel
- Airtable admin panel user details
- Groups - Airtable admin panel
- Workspaces - Airtable Enterprise Admin Panel
- Bases - Airtable admin panel
- Interfaces - Airtable admin panel
- Data sets - Airtable admin panel
- Managed apps - Airtable admin panel
- Components - Airtable admin panel
- Reports - Airtable admin panel
- Settings - Airtable admin panel Updated
- Managing Enterprise organizations
- Managing Enterprise admins in admin panel
- Using Organizations
- Organization branding for apps in Airtable
- Enterprise Hub in Airtable
- Enterprise Hub: Org unit assignment with user groups Updated
- Deactivating, removing access, and reactivating users in the admin panel
- Managing user access to workspaces and bases
- Airtable Enterprise Key Management Updated
- Custom terms of use New
- Enterprise SSO
- General Enterprise information
- Airtable Extensions
- Airtable Fields
- Fields Overview
- Attachment
- Date-based fields
- Formula
- Getting Started with Formulas
- Formula Foundations
- The essentials of Airtable formulas
- Formula writing tips for beginners
- Troubleshooting formulas
- Basic calculations
- Conditional statements
- Logical arguments
- Working with dates
- Displaying DATETIME_FORMAT using the date field in Airtable
- Working with date functions in Airtable
- Calculating the difference between dates in Airtable
- Supported DATETIME_DIFF unit specifiers in Airtable
- Supported DATETIME_FORMAT format specifiers in Airtable
- Using the DATETIME_PARSE() formula in Airtable
- Working with timezones
- Record functions
- Text functions
- Numeric functions
- Common Solutions: Beginner
- Common Solutions: Intermediate
- Common Solutions: Advanced
- Long Text Field
- Linked Record Field
- Linking records in Airtable
- Limiting linked record selection to a view in Airtable
- Dynamic filtering in linked record fields
- Linking to one, many, or a subset of Airtable records
- Converting existing fields to Airtable linked records
- Reordering record links in Airtable
- Understanding linked record relationships in Airtable
- Number-Based Fields
- Other Fields
- Rollup, lookup, and count fields
- Select and user fields
- Integrating with Airtable
- API
- Getting started with Airtable's Web API
- Creating personal access tokens
- Airtable Webhooks API Overview
- Service accounts overview
- Airtable Web API - Using filterByFormula or sort parameters
- Airtable API Deprecation Guidelines
- Airtable API: Common troubleshooting
- Managing API call limits in Airtable
- URL length limitations for web API requests
- Integration services
- Third-party integrations via OAuth overview
- Troubleshooting disconnected OAuth integrations in Airtable
- Options for integrating with Airtable
- Third-party integrations - Common troubleshooting
- Low-code integrations - Common troubleshooting
- Integrating Airtable with external calendar applications
- Visualizing records from Airtable in Tableau
- Visualizing Airtable records in Microsoft Power BI & Power Query
- Integrating HubSpot with Airtable
- Using Zapier to integrate Airtable with other services
- Using Zapier's Multi-Step Zaps to find and update records
- Using IFTTT to integrate Airtable with other services
- Integrating with AWS Lambda & DynamoDB
- Developer tools
- API
- Airtable Interface Designer
- Interface Designer overview articles
- Interface layouts
- Interface elements
- Adding and removing elements in interfaces
- Adding layouts to interfaces
- Formatting elements in interfaces
- Interface element: Button
- Interface element: Calendar
- Interface element: Chart
- Interface element: Filter
- Interface element: Gallery
- Interface element: Grid
- Interface element: Kanban
- Interface element: Number
- Interface element: Record picker
- Interface element: Text
- Interface element: Timeline
- Learning and Resources
- Managing Airtable
- Airtable Policy
- Airtable Records
- Airtable Sync
- Airtable Views
- Airtable Workspaces
- 04 Dec 2023
- 4 Minutes to read
- Print
- Share
- DarkLight
- PDF
Building custom Airtable form URL fillers using ENCODE_URL_COMPONENT
- Updated on 04 Dec 2023
- 4 Minutes to read
- Print
- Share
- DarkLight
- PDF
The ENCODE_URL_COMPONENT
formula function in Airtable translates strings of text and characters into language that can be read in your browser's address field. Because URLs can only read special characters (e.g. %20 instead of a space), you have to encode any normal components in order for them to be used in a web address.
Introduction
All plan types | |
Platform(s) | Web/Browser, Mac app, and Windows app |
Related reading |
NOTE
A common Airtable scenario where this is helpful is pre-filling form URLs. This is a tutorial on how to setup a base to automatically generate unique pre-filled form URLs using ENCODE_URL_COMPONENT
.
Configuring bases
Let's say that you're on a recruiting team for a growing business, and need to hire for a few key roles. You can use an Airtable form to collect information from job applicants, but you have a few prospects in mind that you'd love to hire. Sending a prefilled form their way can save them some time filling out the form and create a positive first experience for your company.
Starting with the grid, you'll want to create a few key fields to track information. We'll track the Role / Title of the position you want to hire for, as well as the names of prospective hires. On the form, the applicant will have a space to write out why they're the best fit for the role.
Once the fields are created, add a form view to the table.
The same fields created in the grid view are now available as form fields.
You may want to adjust the field names to be more targeted to job applicants filling out the form. We'll change Role / Title to Position you're applying for, and Prospect Name to Your Name. Note that this only changes how the field name appears on the form - the actual field names, as shown in the grid view, remain the same as before.
Now you're ready to send the form - already pre-filled with their basic information - to your prospective hires. To do so, we'll need to write a formula using the ENCODE_URL_COMPONENT
function. Here's what that should look like when we're done.
Writing formulas
Step 1
We'll start writing the formula by including some of the basic information needed. Clicking on the "Share form" button will show you the newly created form's URL.
Copy the form URL, and paste into a new formula field (we called ours Encoded form URL). At the end of the URL insert a question mark, like so:
"https://airtable.com/YOURFORMURLHERE?"
Here's the result of the first part of the formula:
Step 2
Next, we'll want to add to this URL by chaining on a new function. To do this we will first insert an ampersand (&) as a separator. So we will do the following:
We are looking to prefill a form input so we'll add the text
'prefill_'
followed by another separator &.Add the
ENCODE_URL_COMPONENT
function. The encode URL function will translate the text name of your field (Role / Title
) into an encoded URL.Follow this by
& '=' &
Lastly, we'll ensure to encode the value in the field (the title in the Role / Title field) by adding
ENCODE_URL_COMPONENT({Role / Title})
Leaving us with a formula that looks like this:
'https://airtable.com/YOURFORMURLHERE?'
& 'prefill_' &
ENCODE_URL_COMPONENT('Role / Title') & '=' & ENCODE_URL_COMPONENT({Role / Title})
Building on step 1, here's the next portion of the pre-filled URL.
Clicking on one of the URLs we just created (in the Encoded form URL field) we can now see that the value for that record has been prefilled into our form. Pretty neat!
We can see that the field that should show the prospect's name is still empty though. So one step to go!
Step 3
TIP
If you'd like to prefill more than one field in the URL, you'll need to add the "&prefill_" url parameter between each field you'd like to fill, like so:
'https://airtable.com/FormUrl?'
&
'prefill_' & ENCODE_URL_COMPONENT({Field1}) & '=' & ENCODE_URL_COMPONENT({Field1})
&
'&prefill_' & ENCODE_URL_COMPONENT({Field2}) & '=' & ENCODE_URL_COMPONENT({Field2})
The last piece of information we need to add to the URL is the prospect's name. To do this:
Add another separator (
&
)This prefill will be a bit different because it is the second field we are prefilling. When prefilling multiple fields we need to add an ampersand within the prefill string. Like so
'&prefill_'
We'll follow with another separator (
&
)Add the
ENCODE_URL_COMPONENT
function. The encode URL function will translate the text name of the field ('Prospect Name'
) into an encoded URL.Add another separator (
&
) followed by ('='
) followed by another separator(&
)Lastly, we'll ensure to encode the value of
{Prospect Name}
by addingENCODE_URL_COMPONENT({Prospect Name})
'https://airtable.com/YOURFORMURLHERE?'
&
'prefill_' & ENCODE_URL_COMPONENT('Role / Title') & '=' & ENCODE_URL_COMPONENT({Role / Title})
&
'&prefill_' & ENCODE_URL_COMPONENT('Prospect Name') & '=' & ENCODE_URL_COMPONENT({Prospect Name})
The results in the full pre-filled URL for each unique record in your table:
You can test out each URL by clicking them and seeing the unique date filled in the form.