Reputation: 406
As the title suggests, I'm wondering how we could:
right after the user installs the Slack app (distributable app) for the first time in a workspace?
A similar question was asked previously but the answer was too concise, and I wonder if someone could be so kind to give a hint using this sample Django Slack app code? Cheers.
Upvotes: 0
Views: 576
Reputation: 406
After reading Suyash's explanations, I carefully examined the sample code provided by bolt-python
for Django again and realized:
bolt-python
takes care of OAuth flow and we only need to specify the correct URLs (for redirect URLs as well as event subscriptions, interactivity, etc.) in the app panel.DjangoInstallationStore.save
method because that's when an installation is finally completed. In my case I created a SlackManager
with a specific method which I could use (via local import
) to perform post-installation actions.Upvotes: 0
Reputation: 2861
On the 'OAuth & Permissions' page of your app, there is a section for 'Redirect URLs'
What it does is that when user installs the app, it redirects to the user implemented endpoint.
OAuth Flow
when the user installs the app using 'Add To Slack' button or using https://slack.com/oauth/authorize
Details here : https://api.slack.com/legacy/oauth#authenticating-users-with-oauth__the-oauth-flow__step-1---sending-users-to-authorize-andor-install
The generated code is redirected to your specified endpoint - "Redirect URL" https://api.slack.com/legacy/oauth#authenticating-users-with-oauth__the-oauth-flow__step-2---users-are-redirected-to-your-server-with-a-verification-code
Solution: Now you need to implement this endpoint to generate access token https://api.slack.com/legacy/oauth#authenticating-users-with-oauth__the-oauth-flow__step-3---exchanging-a-verification-code-for-an-access-token
Upvotes: 2