With this plugin, you can generate OAuth 1.0a Authorization header as a way to authenticate the client to the OAuth Provider itself using Bubble API Connector.
Providing an App (a.k.a Consumer, Client) key/secret pair, and optionally token key/secret pair, this plugin action generates the Authorization header to re-use in an API GET or POST signed call.
The instructions⦠for future users⦠please add screenshots. Especially instep 3 where your āInstructionsā talk about adding an API call action but are non-specific. It took me 45 minutes to realize that API calls designated as āActionā (instead of Data), create a new action called " ". I know you provide other links, but providing screen shots would help others who maybe havenāt used API Actions to get results faster.
Otherwise⦠this plugin saved me hours and hours.
It works well with your example but when I try to send a Twitter direct messages (post method) in my app, I get a 401 Unauthorized (Could not authenticate you, code 32).
I tried the same request with my API keys/tokens on Postman and it works.
I tried to copy/paste the āAuthorizationā header generated by Postman in the Bubble API connector, and it works!
BUT when I try to programmatically set (in the workflow) the header generated by your plugin I get that error (401 Unauthorized) mentioned above.
I double-checked consumer key/secret, token key/secret and base URL that I set in your plugin action, all correct.
Do you know what can it be?
Can you provide an example in your demo/editor that shows how to use this plugin to send Twitter direct messages?
According to the documentation to send direct messages on Twitter, this API requires a user context.
User Context requires a User Access Token, available only using a 3-legged OAuth authentification, which is unfortunately not supported by this plugin, supporting only OAuth1.0 single-legged authentification.
ā· Use your plugin to generate āoauth_nonceā, āoauth_signatureā, āoauth_timestampā (giving in input the two params I got at Step 1 + Consumer App and Consumer Key that I find on the developer portal)
From steps point of view this is correct.
However, this plugin does not support 3-legged OAuth authentication. More specifically, the first step is missing.
Thanks @redvivi
Do you confirm that I can use your plugin to authorize the request of Step 1? (which Iām performing with the API connector by myself)
I mean to generate the Authorization header as explained here ā POST oauth/request_token | Docs | Twitter Developer Platform
Becuase Iām getting a 401.
3-legged and 1-legged oauth flows have the same algorithms to create the header signature?
Good news!
I managed to get the User Access Token (with user context).
But still, when I use the Authentication header generated with your plugin and call the POST API to send the message, I get 401 Unauthorized, error code 32.
Hey matteo! Would you mind sharing how you did the OAuth 1.0a with user context (3-leg authentication)? Iām trying to get Twitter metrics which requires that authentication but could not authenticate no matter how hard I tried. Willing to pay for this to be setup in my app.
As far as I understand, you must āinitialize callā in API connector setting before you can use the API call in the workflow. I found this to be true when the API call I created for this did not show up when setting up an action to add this API call like mentioned in step 3 of the instructions.
So, I tried initializing it first, but when I tried to āinitialize callā by inputting the āGenerate OAuth1.0a Headerā output as the authorization key value (copied and pasted it there), I am unable to initialize it and get the following error:
There was an issue setting up your call.
Raw response for the API
Status code 401
{āerrorsā:[{āmessageā:āCould not authenticate youā,ācodeā:32}]}
What am I doing wrong here? Any help will be greatly appreciated!