NEW PLUGIN... Send Beautiful Calnedar Invites

Pretty familiar with Postmark’s API. My app heavily uses it for all notification emails, outreach (since it’s a PR software), and to track clicks and opens.

I’ve tried Sendgrid but saw that a lot of emails landed in spam.

Hi @SJL,

I have two questions to clarify before start using your plugin at my app:

  1. Can I send an “all day” event. Those that I don’t need to put hours on, that appear on the top of calendars on appointed day
  2. Can I use it without Sendgrid templates at all? I just start using the standard mail feature of Bubble. So I’m sending those simple text emails for now.

I decided to give it a try and test. But I’m recieving the following error. Do you know what it may be?
Btw, I created a legacy template at sendgrid (with no content) just to fill the required input

image

Hi @felipe.haidar

I haven’t set the plugin up to do all day meetings, yet but will look into it.

I can look into using the regular Bubble mail system, but I don’t think it will be possible, given how the invite needs to be attached for it to work properly.

Usually errors like this are because you haven’t formatted the attendee emails properly - make sure they are in the format of “name”:“email” or “email”:“email” if you don’t have the person’s name. There’s a few posts in this thread about this that might help.

Cheers
Simon

Thanks for the answer @SJL,

But I don’t think it is about the attendee emails input.
I already had some errors on that before correcting them. And they all seems to point to a “parseEmails” function, as shown below:
image

As you can see, the errror that I’m receiving doesn’t include the “parseEmails” function.
And now, I’m puting everything by hand on the inputs, with no variables, just to test it. So I’m really lost on how to debug it.

About the “all day” event. Would you be able to update the plugin to include it? It’s mandatory for my app use case.

Hey @felipe.haidar

I’m adding the all day function as we speak, so should come out as soon as bubble approves the update.

Can you post your settings in the plugin. And I’ll have a look.

Cheers

@SJL

Unbelievable, I just solved the problem 1 minute after posting. And it was a newbie one.
I forgot to add the main API key of Sendgrid on plugin settings. :upside_down_face:
Don’t know if this is possible on the plugin development itself, but would be helpful to force a Bubble issue checker for that, like it did for the inputs on the workflow action.

Awesome! Now that I am able to continue developing, I will let the implementation working, just waiting for the update.

About the subscription, do you thing of proposing a one-time purchase also?

I think we’ve all been there! I’ll look at quality of life updates further down the track.

At this stage, I’m not planning to have a one-time purchase option

UPDATE - ALL DAY EVENTS

Minor feature update - you can now set all day events by leaving the duration field empty - note, 0 minutes is not the same as leaving the field empty - if you do this, you will send a 0 minute long event.

This will set a 20 minute event
image

This will set a 0 minute long event
image

This will set an all-day event
image

Will be available as soon as Bubble approves the update

1 Like

UPDATE - V4 API and BUG FIX

Hey Team,

Just dropped an update to the V4 API, so BCI will continue to work after January.

I also discovered a bug that BCI was not returning Success/Errors and have fixed this as well.

Will be released as soon as Bubble approves the update.

Cheers
Simon

Hi @SJL,

Is there a way for us to cancel an invite sent?
I saved the unique invite id, and now whant to “cancel” the event before it happens, so no one will see the invite anymore.

1 Like

Hey @felipe.haidar ,

Just trigger BCI again using the CANCEL method, and this will send a cancelltion to the user.

You will need to make sure you’re using the same Unique Event ID for the invite and an incremented sequence number (or having left that blank for an automated sequence number

Cheers
Simon

1 Like

Loving the plugin so far.

One issue is that the automatic acceptance doesn’t work. It always asks the user to RSVP.

Thanks @pathpeer ,

I’m looking into this - Gmail definitely respects the setting, but it looks like Outlook does not. It could be that Outlook will only respect this on a reply, not an initial invitation.

Gmail will still allow the user to change the RSVP, no matter what it’s sent as.

What email client are you using as the recipient?

Outlook definitely doesn’t work.

But Gmail is strange. It sometimes works and sometimes not. The first email doesn’t accept because the user has never gotten emails from me before, which is normal. The second email accepts automatically but every email after requires RSVP.

That’s intereseting you say Gmail is inconsistent on the way it handles things.

My plugin leverages another library to create the ICS file, so I’ll have to work with them to nut out what might be going on.

Providing an update on the RSVP status, I’ve raised an issue with the library I’m using to generate the ICS file, but have still not had a response.

I’ll update as soon as I have something to report.

So I wanted to track the RSVP’s from each page and then tie it back to a user.

I looked at the Microsoft Graph API to extract the data, but unfortunately, the invite it being sent from SendGrid and thus, Microsoft has no view of this.

Any knowledge on how I can implement this?

Hi @anon82888199 ,

Since the invite is not sent from a Microsoft application as far as I am aware, it’s not possible to track this at all. I believe the same goes for any calendar application - even if you set the “from” address as a Gmail address, as it wasn’t actually sent from Gmail, you will not be able to track replies in Gmail either.

Depending on your use case, you might be better off sending an ordinary email to the user with a button for them to click and accept an invite, which goes back to bubble which sends them the calendar invite.

You would then be able to track those clicks.

@SJL seems like an awesome plugin, I subscribed however I’m struggling a bit…

Is it perhaps so that adding a logo and/or unsubscribe preferences or literally adding anything to the template is enough? Because with an empty template, the invitation does not result in any invites. I’m also struggling to add the subject to the email that includes the invite as I’m using this empty dynamic template.

Additionally, I’m wondering about the Calendar UID. Is it fine to create any random string here and refer to that when updating / cancelling or should I first create a calendar event (e.g. using Google Calendar API) and then refer to the UID of that event?

Appreciating your help :pray: