Hi - I see we have an extension that allows us to create iCal link to all the records in a table - but what if you want a unique link for each record?
So I have stable with a list of events I run. I want to send an email to participants of each event with a iCal link so they can add it to their calendars…but I can;t see how I can do this?
Any ideas?
Gary
Hi Gary,
Currently, Airtable’s native iCal extension pulls in all records, making it always up-to-date. However, you can achieve unique iCal links for each record by following this workaround. Here’s how you can do it:
Step-by-Step Guide
1. Airtable Table Setup
Ensure your Airtable table has the following fields:
Event Name
(Single line text)
Start Date
(Date & time)
End Date
(Date & time)
Ical Link
(Formula)
HTML
(Formula)
2. Create the iCal Link Formula
In the Ical Link
formula field, use the following formula to generate the iCal data and links:
"<a href='https://www.google.com/calendar/render?action=TEMPLATE&text=" & ENCODE_URL_COMPONENT({Event Name}) &
"&dates=" & DATETIME_FORMAT({Start Date}, 'YYYYMMDD\\THHmmss\\Z') & "/" & DATETIME_FORMAT({End Date}, 'YYYYMMDD\\THHmmss\\Z') &
"&details=" & ENCODE_URL_COMPONENT({Event Name}) &
"' target='_blank'>Add to Google Calendar</a><br>" &
"<a href='https://outlook.office.com/calendar/0/deeplink/compose?subject=" & ENCODE_URL_COMPONENT({Event Name}) &
"&startdt=" & DATETIME_FORMAT({Start Date}, 'YYYY-MM-DDTHH:mm:ss') &
"&enddt=" & DATETIME_FORMAT({End Date}, 'YYYY-MM-DDTHH:mm:ss') &
"&body=" & ENCODE_URL_COMPONENT({Event Name}) &
"' target='_blank'>Add to Outlook Calendar</a><br>" &
"<a href='data:text/calendar;charset=utf8," &
"BEGIN:VCALENDAR%0AVERSION:2.0%0APRODID:-//Airtable//EN%0A" &
"BEGIN:VEVENT%0A" &
"UID:" & RECORD_ID() & "%40airtable.com%0A" &
"DTSTAMP:" & DATETIME_FORMAT(NOW(), 'YYYYMMDD\\THHmmss\\Z') & "%0A" &
"DTSTART:" & DATETIME_FORMAT({Start Date}, 'YYYYMMDD\\THHmmss\\Z') & "%0A" &
"DTEND:" & DATETIME_FORMAT({End Date}, 'YYYYMMDD\\THHmmss\\Z') & "%0A" &
"SUMMARY:" & ENCODE_URL_COMPONENT({Event Name}) & "%0A" &
"DESCRIPTION:" & ENCODE_URL_COMPONENT({Event Name}) & "%0A" &
"END:VEVENT%0AEND:VCALENDAR' target='_blank'>Download iCal File</a>"
3. Convert HTML in Airtable to Webpages
To render these HTML links properly, you’ll need to use the “Convert HTML in Airtable to Webpages” extension. Here’s how:
-
Set up the extension:
- Go to the Extensions section in Airtable.
- Add the “Convert HTML in Airtable to Webpages” extension.
-
Configure the extension:
- Select the table that contains your events.
- Use the
Ical Link
field for the HTML content.
-
Generate the Webpage Formula:
- Copy the formula provided by the extension and insert it into the
HTML
field (also a formula field).
4. Use the Generated Links
Now use that formula in the HTML field in Airtable
Example Output
Each record in your Airtable will have links like this in the Ical Link
field:
- Add to Google Calendar
- Add to Outlook Calendar
- Download iCal File
And the HTML
field will have a link to view the event page, which you can share with your participants. Here a live example for one of the records.
Screenshot
Here’s an example screenshot of what the final output might look like in your Airtable:
This method allows you to provide participants with unique iCal links for each event, ensuring they can add the event to their calendar of choice.
I hope this helps!
3 Likes