OAuth for int recipes

Hi @dipro

thanks for the explanation, it helped me to understand it better.

Installation link works fine, but when I remove response_type=install from authorization url, I can get the authorization from a specific user (monday perform oauth callback to my site) and token works. But there is no state in oauth callback coming from monday and therefore we don’t know which account id and user id was authorizing our request. URL looks like this:
https://auth.monday.com/oauth2/authorize?client_id=662bffd00af626513cbf55f02ae36470

When monday users authorize our app when opening integration recipe, it works fine. What I am trying to achieve is to authorize our app from monday user before he comes to the integration recipe, because we need to prepare a template before customers use it in the recipe.

Is there such option?

Thanks,
Lubos

Hi @lubos.husivarga!

It sounds like what you’re trying to do is to have some other sort of authorization screen prior to the user heads to the integration center to add one of your app recipes-- is that right?

You can also accomplish this when a user goes to the apps marketplace to install your app. This way, they are also redirected to the OAuth confirmation page if that makes sense.

Are you still dealing with this issue?

-Helen

Hi @Helen!

Exactly, I need authorization screen before users heads to the integration center to add a recipe.

This is the issue I can’t accomplish this with app installation, because Install from marketplace does not trigger OAuth callback. The screen looks exactly the same as authorization screen and only visual difference is the blue button: Install vs. Authorize.

The installation only informs admin about required permissions by the app and admin actually allows users to use the app, but no authorization is granted during the installation.

I can trigger the authorization request from our external site with url mentioned in my post above, but OAuth callback from monday does not contain state parameter as it does when the OAuth callback is triggered from integration recipe directly from monday.

So my concern is about missing state parameter holding account and user ID when the authorization is triggered from external authorization URL vs. internal integration recipe authorization request. We get the code parameter, so we can retrieve API token and it works, but we don’t know which user authorized it.

Hope it makes sense, please let me know!

Thanks,
Lubos

Ahh okay! I see what you’re saying.

Sorry for my misunderstanding earlier-- you are indeed correct in that the OAuth flow can only be triggered once a user has navigated into the integration center to set up one of your recipes.

When you say “prepare a template before customers use it in the recipe,” what template are you referring to? To the recipe template?

If so, why couldn’t the user select the necessary areas in the integration itself when setting it up? I don’t believe you’re able to set up a “template” recipe.

We are doing automated document creation, so user needs to create document template first. This is because in integration recipe he needs to select the document template to be able to complete the sentence and add it to the board. I realized this chicken & egg dilemma when I was creating a video guide.

I had to navigate user to integration recipes first to get API access and abandon the recipe creation. Then to create template, connect it with board (API access required) and select monday columns which will be printed into document. And then again into integration recipes to create recipe with document template created.

I have solved it with external authorization link so customer can authorize our app from our web where he is able to create template. Then he goes back to monday and setup the recipe. Because of missing account and user ID from first authorization he has to authorize our app again in this step.

Here’s the video: Automated PDF document creation for monday.com with Eledo - YouTube

It works, but I would like to avoid second authorization request for better customer experience. The second authorization request is of course cut out of the video guide, but it’s required in reality.

Thanks,
Lubos

Ahh okay, that makes a lot of sense!

That is quite a cool app, I can definitely see how useful it would be. So you would almost be changing the integration recipe offered based off of what a user has selected in their board template, right?

While this isn’t a possibility currently, I would be more than happy to pass this along as feedback for our team’s consideration!

Thank you @Helen!

I will be looking forward to updates!

And yes and no. The only difference would be the existence of document template in integration recipe template chooser, when the integration recipe is configured after the template is created. It’s all about the user experience :slight_smile:

1 Like

Absolutely! I can understand that.

Hopefully we come out with something to support this soon.