External User Approval in webMethods Developer Portal using Slack

Tech Community - Oct 11 '22 - - Dev Community

Summary

This article describes the step-by-step process of user onboarding using External Approval System in webMethods Developer Portal from Slack.

Flow

Image 26

Prerequisites

  • User should have a working webMethods.io Integration cloud tenant.

  • User should have a working Slack account.

  • Access to Developer Portal on the cloud tenant.

Steps to follow

  1. Login to webMethods.io Integration tenant.
  2. Create a new project or choose an existing project.
  3. Click on the Import icon at the top right corner to import the workflow into your project. import_workflow
  4. Select the archive file “PostMsg_DevPortalToSlackChannel.zip” shared in the article.
  5. The workflow name and description are preloaded. workflow_settings
  6. Authorize Slack by either Default or Manual configuration.
  7. Select the channel from the dropdown on successful authorization.
  8. Click on “Import” to import the workflow into your project.
  9. The workflow is imported successfully, enabled, and ready to use. workflow_preview
  10. Click on the import again and select the archive file “DevPortal_UserApp_Slack.zip” shared in the article. import_workflow2
  11. Authorize Slack by either Default or Manual configuration.
  12. Select the channel from the dropdown on successful authorization.
  13. Click on “Import” to import the workflow into your project.
  14. The workflow is imported successfully, enabled, and ready to use. workflow_preview2
  15. Edit “ PostMsg_DevPortalToSlackChannel ” workflow and provide mandatory inputs and map the appropriate fields. Also, select the proper “webhook authentication” type and copy the Webhook URL then save the workflow. worfklow_edit worfklow_edit2
  16. Edit “DevPortal_UserApp_Slack” workflow and pass the Developer Portal tenant URL in the “updateDevPortalUserReq” step. worfklow_edit3
  17. Provide the authentication details in HTTP step. authentication_details
  18. Save the workflows.
  19. Login to webMethods Developer Portal.
  20. Click on profile icon then on Administration and go to Webhooks in the side navigation. webhooks
  21. Click on “Create” button and paste the webhook URL copied from webMethods.io flow into URL field. webhooks2
  22. Select Type as “Provider” and pass the security credentials to trigger the webMethods.io flow.
  23. Select the event type as “External verification”. set_event_type
  24. The webhook has been configured to listen to the event generated by user onboarding strategy and it is pointing to a webMethods.io flow which sends a message to slack channel requesting for approval.
  25. Go to “Onboarding” tab in the side Navigation. Onboarding
  26. In the “ User Onboarding ”, enable the “ External Approval “ in Onboarding Strategy.
  27. The external approval strategy generates an “ External Verification ” event and a webhook will listen to this event and triggers the workflow.
  28. External approval will be done using third party tool “ Slack ”.
  29. Logout from Developer Portal and go to signup screen. signup
  30. Enter the required details.
  31. Click on Sign up button and you will get the below message “ Success: Thank you for registering. Please check your email for the next steps ”. Success
  32. A message will be sent to slack channel for approval.
  33. Go to Slack UI and you will find an approval message in the channel. slack_message
  34. The Approver has two options, either to approve/reject by copy/paste either of the line and send message. slack_message2
  35. When the Approver sends back a message, a webMethods.io flow gets executed which will be listening to slack channel for messages and updates the user status in Developer Portal and a successful email will be sent to User.

Useful links | Relevant resources

DevPortal_UserApp_Slack.zip (54.8 KB)

PostMsg_DevPortalToSlackChannel.zip (23.2 KB)

Read full topic

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .