DRAFT
General Description
This example shows the user how to use ProcessMaker I/O API for the most common organization business process. This example describe on boarding process for the new customer
On-boarding Process Example
This diagram describe on boarding process for the new customer
The process diagram defined above will conduct a tracking of all on boarding request for the integration project.
Process Scheme
Participants
Process name | Description |
Main process | The company for the onboarding process |
Supervisor | A user who have permission to stop on boarding process if something was wrong |
Requester | A user who request the boarding process into the company |
Activities
Activity name | Activity type | Activity description | Forms |
---|---|---|---|
Manual request | Empty start event | Requester ask about new access and fill Manual request Form | Manual Request |
API request | Message start event | Onboarding process can be started from 3d part API | |
Record customer | User task | In this form user needs to define the workflow requirement. | Record Form (Google Form) |
Validate Workspace | User task | This task is for the validators, they need to define 2 main aspects: 1) requested workspace id is not taken, 2) a valid license file should be uploaded. | Validate workspace form |
Create Production Workspace Create Sandbox Workspace Create Development Workspace | Service task | These tasks can be performed depending of the initial request to create the workspace with requested information. | |
Generate Summary | Script task | This activity is executed by ProcessMaker I/O engine an is a script to generate a PDF with the information about the workspaces and credentials. | |
Verify Onboarding Data | User task | This activity is created to validate for the same user has approved all information generated by the other activities. | Verify Onboarding Data |
Messages
Message Title | Item | Type | Content |
---|---|---|---|
Notification to requester | "Verify Onboarding Data" User Task /Notify Requester Message event | email message | Hello {{Requester name}}, You request was approved and implemented. A workspaces for {{ClientName}} was created Please find the summary document with Credential report in the attachment Best regards! |
Notification to supervisors | "Validate workspace" User task /Notify Supervisor Message event | email message | Hello {{Supervisor name}}, We just wanted to inform you , that {{Requester name}} request for creating workspaces for {{ClientName}} wasn't validated during dedicated time Best regards! |
Documents
Document name | Item | Type | Template |
---|---|---|---|
Credential report | Generate Summary | Credential report |
Getting Started with example
To work with MVP example click on a top navigation tab labeled “Onboarding Example” on the Examples portal.
It will be selected by default when you open up the page at the first time. Top navigation will present a steps available for the selected example.
Please refer to “Readme”, “Import”, and “Process List” sections to import BPMN file with the process.
Users
For that specific example you will need three users:
“Test” - it already exists in your Instance by default and its Access Token is already pre-filled in all the forms.
“Alice” and “Bob” - these users should be created manually by issuing a set of API calls (Refer to PHP-SDK documentation about creating a user and obtaining access tokens). After creating users - access tokens should be entered into the form once. Afterwards these keys will be stored in browser cookie.
During process execution you can monitor your Process Instances and its status using “Process List” page.
Forms
Manual Request
This is jQuery form which will trigger “Manual Request” event for the Process. Fill in the form and press “Create new client” button. This will send JSON API request to appropriate PM.IO API endpoint. To ensure your Process Instance was created you may use “Process List” feature.
To see the details of request/response - you may use “Show Request” and “Show Response” buttons in Logging section. This will reveal full details about communication with API endpoint.
Google Form
This is Google Form implementation which have the same functionality as “Manual Request” jQuery form. Please note - this form is just a sample and will require manual adjustment on your Google Forms account. To use the form you need to copy the form to your Google Forms account, change API endpoint URL and Authorization token in Google Script (attached to the form), set-up Form triggers.
Record Customer
This is jQuery implementation to support User Task names “Record Customer”. It will find a delegated user task data for specified user (Refer to the selected user on top-right) and pre-fill form inputs.
Please note MVP example delegate “Record Customer” User Task to user named “Test”, so be sure proper user is selected on top-right of the page.
When you filled in the form you may press “Create workspace” button which will form JSON API request and send it to API endpoint, passing the data and moving User Task into COMPLETED state. Process Instance will be processed by PM.IO engine further according to BPMN scheme.
To see the details of request/response - you may use “Show Request” and “Show Response” buttons in Logging section. This will reveal full details about communication with API endpoint.
Validate Workspace
This is jQuery implementation to support User Task names “Validate Workspace”. It will find a delegated user task data for specified user (Refer to the selected user on top-right) and pre-fill form inputs.
Please note MVP example use round-robin delegation mechanics for “Validate Workspace” User Task, so your form will be delegated and being accessible either to Alice or to Bob depending on your case.
To see the details of request/response - you may use “Show Request” and “Show Response” buttons in Logging section. This will reveal full details about communication with API endpoint.
Verify Onboarding Data
This is jQuery implementation to support User Task names “Record Customer”. It will find a delegated user task data for specified user (Refer to the selected user on top-right) and pre-fill form inputs.
Please note MVP example delegate “Record Customer” User Task to user named “Test”, so be sure proper user is selected on top-right of the page.
To see the details of request/response - you may use “Show Request” and “Show Response” buttons in Logging section. This will reveal full details about communication with API endpoint.