OAuth 1.0a. | Newbie-friendly solution?

Dear fellow bubblers,

I’m quite new to setting up APIs but I’m hoping for your help and/or guidance to make this work.

I think I’ve read most of the forum posts about OAuth and fellow-bubblers having a similar problem, and I think some of you came up with really brilliant workarounds for OAuth1.0 since it is not among the supported authentication methods of the bubble API connector plugin — BUT: my problem is that I don’t fully get them so that I’d be able to make it work :frowning: I guess some more programming and API knowledge would be needed on my side!

(Newbie-side-question: is OAuth1.0 even treated the same as OAuth 1.0a. ?!)

Anyways, I’m a fast learner and I really want to get this to work — so I wanted to reach out to the community and see if I can find someone who would be kind enough to explain the part about OAuth1.0a. with bubble in a newbie-friendly way.

What probably might be helpful as well is to give you some more background about what I want to achieve:

The goal is connect my bubble app with “The Noun Project”, an external icon service I want to use to pull in their icons and use them to create designs. For now, I’ll be the only one working with the app and it won’t be public / accessible for other users yet. Why I have to use their API in the first place is because I have to keep track of my icon usage.

Unfortunately, the API is secured with OAuth 1.0a which is (as far as I can tell) currently not supported in the bubble API connector plugin for easy setup.

On top of that, the API documentation of The Noun Project seems quite limited to me (at least judging as a newbie :D). Creating an API key was pretty easy, but everything else that comes next not.

What they are giving me about the Authentication part: “The API is secured with OAuth 1.0a. You must use your client key and secret to sign requests when accessing the API. There are many established libraries that will take care of authenticating calls for you. There is no need to provide an access token as our API endpoints do not yet support granting access to a users private data. For more examples, please view our sample code.”

Neither the established libraries nor the sample code written in Python and Ruby are helpful to someone like me, unfortunately.

So … is there anyone out there who might be able to help a newbie like me set this up or provide me with some more learning resource that helps me get there on my own?
Is their a newbie-friendly workaround that you are able to explain in easy no-code language?
Is there maybe a way to avoid the OAuth and do that manually?

Thanks for whatever advice will come along — very much appreciated! :slight_smile:

Cheers,
Kevin

This is a fairly good explanation of what you need to do to “sign” and Oauth1 request.

https://developer.twitter.com/en/docs/basics/authentication/oauth-1-0a/creating-a-signature

It is tricky in Bubble, and nobody really does it in code either they just use a prebuilt thing as you have found.

There is a node.js package for it however …

So you could create a server side plugin using that ?

@NigelG many thanks for your reply, but unfortunately I have no clue what to do with it / where to start now :smiley:

  1. How do I get the node.js package into my bubble app?
  2. What do you mean by "server side plugin - how / where do I create that?

I’d love to get some more step-by-step guidance translating your way of achieving that into bubble language.

As I said: I still have to learn quite a lot about APIs so thanks for your patience! :pray:t3:

That was the shorter answer … A longer one will be along :grin:

1 Like

@NigelG you’re a legend! Looking forward to it :smiley:

I have tried in both Bubble and Webtask.io but it is proving difficult !

mh, I see! So what would you suggest to do?

Hi. Wondering if this was ever resolved. I have a similar interest in Noun Project for a Bubble app I’m building. Thanks!

Hey guys !

Can you please expand about what is your use-case an the flow with the Noun Project ?
Are you simply trying to perform a POST or GET call or trying to do an interactive login ?

Thanks.

1 Like

Hi redvivi! Thanks for reaching out — I’m not exactly sure what an interactive login means :confused: So in a first step I would be extremly happy if I were able to pull the Noun Project icons into my bubble app and use them as icon elements to create designs with them. I’m just struggling with giving bubble’s api connector the right information to connect with the Noun Project API.

At first it will be just me as the admin using the icons; in a later stage I want to open my app for other users and it would be awesome if my bubble app users could create the designs using the Noun Project icons on their own (not sure if this would even effect the OAuth issue?!)

So is this enough information for you to assess whether you solution works?
Please feel free to get back to me if you need more details.

I would be super happy if you could make it work!! :slight_smile:

Cheers, Kevin

What’s the specific API you are trying to target ?

Here is the noun project api documentation: https://api.thenounproject.com/getting_started.html

Hey @ICONIFY, here is a proposed solution here OAuth 1.0a Request Signing Handler

1 Like