[New Plugin] ICS Maker - iCalendar file (.ics) maker

Unfortunately, many inputs don’t offer the “:converted to list” operator. I am currently trying to test this with a simple page where I can set the name and timezone via input elements and the start and end dates via datetimepickers.

The eventual use case would be:

  1. Creating a new “Session” which has startdate, enddate, description, and name.
  2. Creating an ICS for this session.
  3. Sending a confirmation email for this session with ICS attached.

Here is a screenshot of what I get when trying to use the “results of step 1, create a new session”

There is no option to convert the start date to a list.

You’ll have to put the “:convert to list” before the startDate field

I sort of got it working. It’s a bit limited due to the list requirement. I will look into using the JSON feature to have more control over the ICS parameters.

Yes, the reason for the JSON feature was to give you access to more parameters. Reason plugin is defaulted to consume lists was because bubble already has a workflow to accommodate emailing single calendar events

Got it! The issue with sending a meeting request via Bubble is that you can’t use a specific SendGrid template, only the one utilized by all app emails. This plugin offers the opportunity to attach an ics file to any SendGrid emails.

1 Like

Hey not sure if to post here or in the parser but basically I can create a ics file using this plugin but on the parser end I can’t recieve the start and end date. I seam to get back the vevents but with blank start and end

Hi @chad5 ,

Thanks for your using the plugin.

Since formats can vary, there are other parser sources in the plugin. See instructions here and you can test out your link there to see which api call will work for your case: https://d39.bubble.is/site/equina-playground/ics_parser

Ultimately, you can also use the iCal to JSON function and then create your own workflows to interpret your ical file.

DM me if you are still having issues.


So I created the ICS with your plugin, shouldn’t your parser decode your ICS plugin created file?

Hi Chad,

The ICS maker plugin used a local time with timezone ref and I hadn’t included that variant in the initial pre-made parser calls. I just updated the plugin to include that and you can test it in the playground app.

You can grab ics-maker sample file link at [https://d39.bubble.is/site/equina-playground/ics_maker](https://ICS Maker Playground)

[https://d39.bubble.is/site/equina-playground/ics_parser](https://ICS Parser Playground)

and paste in the parser playground:

In order to capture different variants and allow you to pull other information from ics files and not rely on preset calls, I highly recommend using the ical to JSON plugin action and re-create the plugins preset calls to fit your needs and get full control. Here’s how you set that up:

  1. Create a backend workflow and call is say, “icsparser”

  1. Use the parser plugins “ics2json” plugin action as first step

Set up the action as such:

  1. For step 2 in the workflow, use the “Return data from API” action and setup as such:

  1. Then go to API Connector and create a new API call referencing this backend workflow

  1. Now you can use your own ical link to define outputs when you set up the API call, and then use this call in your app.

Hope this helps,


Hi @muneer.hameer - this looks just what I need, I’m considering purchasing it.

Is it possible to add the DESCRIPTION and ORGANIZER fields to the plugin, please, as optional fields? I need to publish more information about each event into the calendar.

EDIT: And the ATTENDEE field too, please!

Thank you,


Hi @michael.fielding,

To customize the ics file, you can use the json-ics function in the plugin. Please see https://d39.bubble.is/site/equina-playground/ics_maker for more details.



Hi @muneer.hameer,

Thank you for the suggestion. However, it looks like it would be slightly easier to create the ics file directly, than to create the json and convert it with the plugin. Unless I’ve misunderstood some behind the scenes magic.

Your documentation is excellent by the way, a shining example.



Nice work on the plugin!

Do you have any plans to add functionality to the workflow actions, such as being able to include a description in the ics file?

Can I also recommend being able to create a single event rather than having to use a list

Hi Simon,

Thanks for using the plugin.

To allow single events just add the “:converted to list” operator.
Screen Shot 2021-09-02 at 11.41.16 AM

To customize the ics file, you can use the json-ics function in the plugin. Please see https://d39.bubble.is/site/equina-playground/ics_maker for more details.

Hope this helps,



I also found using :separated by (,) was another good way to turn an item into a ‘list’.

I had tried the JSON format, but it wasn’t playing nicely, especially trying to find exactly how to format data to get what I needed. There were a lot of hoops to jump, just to add a description - it would be super useful if just this option was added to the simpler action.

Hi @muneer.hameer ,

When uploading the ICS File to your domain, you’re usually able to use Website home URL in the (path) Your App Domain field which will add version-test in development sites, but not in live sites, this way you do not have to manually add version-test to your dev site and change it in the live site.

However, when using this, the plugin throws the following Workflow error - Unable to resolve DNS for https

Can you look into this?

1 Like

Hi @muneer.hameer

Thanks for this plugin!
The ‘Button Prime JSON-ICS’ seems to be broken and I’m not able to see the JSON format. Hoping you can help.

Hi @julie.b

Thanks for using the plugin.

If you go to the editor of that page, you can see the workflow tied to that button. It’s only there to show you the json format, which you can see in the editor workflow.



Thanks for responding @muneer.hameer The screenshot below is what I’m currently seeing.

Hi @julie.b,

It’s fine on my end. See screenshot below. Could you please reach out to bubble support.