Updated July 2019: These are specific instructions for use in Transposit. For other methods, check the Slack API website. Interested in reading more? Check out the blog post we wrote about it!
Sample Slack app that presents a Terms of Service (or any other message) when a new user joins a team.
The user can accept the Terms of Service using message buttons. If a user has been presented with the Terms before and they haven't accepted, a background job can send them a reminder after a specific period of time. Eventually you can use the SCIM API to disable the user's account.
chat:write:bot
https://accounts.transposit.com/oauth/v2/handle-redirect
as a Redirect URI.Configure your Slack app's connection to Transposit:
Add Slack's credential to production under Deploy > Production Keys and follow the instructions.
newuser
in Transposit under Deployteam_join
team eventsacceptpush
in Transposit under Deploy > Endpoints
acceptpush
: The function that is called when the accept button is pressed in Slack.
newuser
: The function that is called when a new user joins a workspace.
post_tos
: The Slack API call to post the welcome message.
reminder
: A scheduled task to remind users who have not accepted the TOS to accept them.