Testing App Panels

Late to this thread but I have the same. I have my app (which doesn’t do anything but has the callback url) and added my App Panel. When I click install, I get sent to my callback URL but the docs don’t seem to say what I do to confirm installation back to Pipedrive. There’s no use config on my end after the callback, just log in and go.
Yet I can’t get my sandboxed preview App to be installed. After hitting install and hitting my callback, it never shows as installed in the Marketplace Apps section

Hey @dombarnes
Welcome to the community :wave:

Just to clarify, are you referring to handling the installation flow ? If so, you can refer to this section - OAuth authorization

Let me know if it’s a different challenge

Hi @Hem
Sort of. I have the OAuth callback flow set up. The docs say just put in my callback URL, then get my user (me) to log in, and finish any setup on my end. There is no further setup (after oauth I do a simple permission check on my user). But then what is meant to happen after that?
I’m not embedding anything from Pipedrive into my platform. So I have no need to use the refresh/access token for anything. So I don’t.
But do I need to then redirect back to Pipedrive when done to confirm installation is complete on my end (vs e.g sending the user to an access denied if they don’t have the right permission).
For now I’ve just configured my app to redirect back to the marketplace manager URL just to have it do something.

Just to clarify, my steps are:

  1. Visit Marketplace Manager
  2. Click Preview next to my draft app
  3. Click Install
  4. Get sent to a Pipedrive permission approval page. Click OK
  5. Get sent to my callback URL. If user is not logged in, I get directed to MY oauth page. Then back to my callback URL (where I get the code). I have no further steps here.
  6. ???
  7. App is showing as Installed in Marketplace Apps

Whats step 6? Do I need to arbitrarily use the code to get an API token even though I don’t need it?

App Panels use their own HTTP header auth which is set up.

Thanks for your patience @dombarnes

I understand that it is more of a static app panel and even if performs something, it is not gonna access PD data. Could you please share the use case as well? Making sure I don’t miss the context :slight_smile:

Unfortunately, at the moment, all apps are required to have a callback URL to be functional (including app-panel only apps too).

However, I have taken note of this and will share it with the concerned team.

I have a functioning callback, in as far as it’s a valid URL and does something. It responds with a 200 status code when called. But do I need to actually use the callback code provided and get a refresh token for it to register as installed?

Thanks for sharing the use-case as well @dombarnes.

Yes, you need to. But to make things easier, we have a boilerplate app to start with :slight_smile: !
The app already has the logic required to handle token retrieval.

That’s perfect Hem. The missing piece of the puzzle in my case. I’ve configured my app (.net Core MVC) to consume the auth code and get a token and all is good.
Just now debugging my app panel in devtools. Appreciate the useful feedback there from failed app panel loads. Worth highlighting in the docs.

1 Like