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.
https://accounts.transposit.com/oauth/v2/handle-redirectas 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.
newuserin Transposit under Deploy
acceptpushin 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.