Templates Plugins Courses

Help needed with the Gmail API plugin

Hi everyone!

I have purchased the ‘Gmail - Small Business’ plugin by @jarrad and would like to build a simple app in Bubble that does the follow:

  1. User authenticates with their Gmail account
  2. Our app reads what emails are newsletters (based on the metadata for example)
  3. Newsletters are fetched to our Bubble app and whole body is displayed there

Is this doable using the plugin and if so, is there anyone who would be kind enough to help answer a few questions since I’m missing any documentation.

Many thanks in advance!
Juraj

Hi @juraj.pal,

Thanks for reaching out. I’m afraid we are not able to assist since it is a plugin developed by another author, but you can check this thread instead https://forum.bubble.io/t/gmail-full-small-business-edition-enterprise-edition/18729 and ask for help there from original publisher.

Or you can check our Gmail Small Business plugin:

To preview all available features. Your described functionality seems to be doable, but please note that it would require Bubble development to actually meet the requirements.

Hope it helps.

Best,
Alex

Thanks for getting back to me, Alex!

I’m playing around with your Gmail Small Business plugin and checked out the demo too but I’m missing a guide on how to set up this simple feed that would fetch emails into my Bubble app.

The demo mostly shows how to send email from the app or display 1 email based on its ID.

Thanks for any additional tips!
Juraj

Also - do you have some documentation on where we are choosing the scopes to be included in the auth flow?

Thanks @juraj.pal for feedback.

Let me provide insights here.

If you’d like to build a feed with emails, you’ll need to to some Bubble dev to build a RepeatingGroup and fetch emails by using plugin’s data calls. Our demo is simply demonstrating the core functionalities of this plugin so you can have an idea of how it can be used later on, based on your project requirements.

Are you actually looking for something specific?

Because you don’t need to do anything at auth flow level; you just set the API keys that you grab from your Google Console, then simply use the plugin with all its features. All the scopes are already in place and everything is taken care of.

P.s: sorry for misleading, apparently our Gmail Small Business plugin was inherited from Jarrad, so if you use it, I am able to assist :pray:

Hope it helps.

Best,
Alex

Thanks @alexandru.rusnac, appreciate your help!

I’m building the repeating group as we speak. Can you advise on what calls to make under ‘Type of content’ and ‘Data source’ if I’d like to build a feed?

Many thanks!

Thanks @juraj.pal,

You can simply use List Messages data call and extract the messages in your RepeatingGroup. Data source would require to Get data from an external API, since you are trying to get it from an external source, and use the same List Messages, as example. Because Get a Message would return a single one but you are willing to build a feed.

Hope it helps!

Thanks @alexandru.rusnac - that helped a lot but I’m running into this issue now:

Screen Shot 2020-11-14 at 9.13.05 AM

Hi @juraj.pal,

Thanks for feedback. As you can see, it is saying you need to place a List actually, because in your RepeatingGroup you want to fetch multiple entries and not a single one, so you need to change it as suggested in this issue message.

image

image

If you’d require more Bubble related help, it is best to post your request here instead - https://forum.bubble.io/

Hope it helps

Thanks for your help, Alex!

Is the idea that once the user authenticates and logs in with their Gmail account, the repeating group gets filled with the email field?

If so, can you please advise what else needs to be built? Right now, the group doesn’t get generated with emails once I have the users logged in (see below):

Thanks!
Juraj

Hi @juraj.pal,

Thanks for feedback. Well yes, once you authorize with your Google account, it should be populated with your emails data, but you actually need to display this data. Because now, you just set the RepeatingGroup with type of content and data source, but there is no content to be displayed yet. You can do it by using Text elements or any other way you want.

Please note that Bubble development and custom plugin implementations are beyond our support services, unfortunately. We can only provide a hint into right direction.

I’d highly recommend you research how RepeatingGroup element works within Bubble and how to fetch data from external API.

These resources might help:

Thanks for understanding. :pray:

Thanks @alexandru.rusnac, I realize my last question was a bit dumb. Sorry about that! :slight_smile:

So one last question regarding the plugin documentation. I’m playing with different options for displaying the data in the Text element but I can’t find what do I need to refer to in the dynamic field to get the body of the email.

Is that documented somewhere? Not finding much relevant stuff when I look under ‘Get data from an external API’?

Thanks once again!

Hi @juraj.pal,

This hasn’t been documented because it actually implies some regular work with RepeatingGroups which should be relatively easy. This is actually work with RE elements as previously mentioned that can be found in some helpful videos or ones shared above. You just need to select the Current cell’s List… and extract the data.

Thanks!

Hi @alexandru.rusnac,

I get that but it seems to me that the only 2 types of content I can get are these IDs. Where in the plugin do I specify that I want to get the whole email body or the subject line for example?

Screen Shot 2020-11-17 at 1.52.53 PM

Thanks!

Sorry @juraj.pal for misleading,

This way of implementing it is not that easily possible (for security measurements), so you don’t just accidentally pull all of your email messages with full body.

How you are able to make it work is actually using a combination of two data calls: List Messages and Get a Message (or Get Message Attachments as Base64, a bit later on this).

Your RepeatingGroup setups:

image

image

And when you place a Text element within your RE, you can pull the email message this way:

image

image

So you actually display just a snippet of the email body message, and your users will have a glimpse of it, and if they want to preview the whole body they can click on it and redirected to their account, as example.

Or, you can still display the whole body of the email by using Get Message Attachments as Base64 data call, but in this case you’ll have to decode the message yourself and display it already decoded. This was also done for security reasons.

It is still doable but just would require a bit of tweaks and workarounds. :pray:

Hope it helps!

Thanks @alexandru.rusnac - this is all extremely helpful, appreciate your time.

The last bit that I’m missing here are the values I need to specify under (path)/id and (path)userId. Can you advise please?

Hi @juraj.pal,

Sure, the /id is the Message ID that you can extract from your first data call List Message, based on current cell:

And then simply select the ID:

image

And for /userId you can just leave it as me:

image

It already understands the logged in user with your current Google email.

Thanks!

Thank you @alexandru.rusnac!

1 Like

Always welcome @juraj.pal!

If you like our plugin, could you please rate it by going to Plugins tab in Bubble editor? You can find the plugin by name and give it as many stars as it deserves. The more feedback we get, the more motivated we are to build great plugins :pray: