Version: 1.0.0
Last Updated: February 2026
Overview
The Process Automator is a SharePoint Framework (SPFx) application that allows you to create and manage custom forms for various business processes. This guide focuses on the Admin Module, which is used to design forms, configure settings, and manage processes.
Required Permissions
Below are the lists of permissions needed to install Process Automator fully.
- SharePoint Administrator
- To install the web part from the AppSource
- To create a SharePoint site to host the process data
- Power Platform System Administrator or System Customizer
- To import the custom connector and flow solution
- Global Administrator
- To approve API Permission. When you set your Power Automate HHTP trigger to Only users in my tenant or Selected users in my tenant, you need to give Process Automator permission to call the flow on behalf of the user.
Getting Started
For optimal organization and collaboration, we recommend creating a team site to host your Process Automator application:
1. Create a team site
Create a team site that will serve as the data store site for all your process forms and related lists.
2. Create a full page app
Create a full page app for the Process Automator web part:
- Follow the instructions at: Create a full-page app in SharePoint
This provides a dedicated, immersive experience for managing your processes
When you first open the Admin Module, the system will check for the required SharePoint list called ProcessAutomator. If it doesn’t exist, you’ll be prompted to create it automatically. Simply click the creation button and wait for the process to complete.
Managing Processes
Creating a New Process
Step 1: Initialize New Process
- Click the “New” button in the command bar
- A dialog box will appear asking for:
- Name: The title of your process (e.g.,
Employee Onboarding Request) - List Name: The SharePoint list where form data will be stored (e.g.,
EmployeeOnboarding)
- Name: The title of your process (e.g.,
- Click “Create” to generate the process scaffolding
What Happens Behind the Scenes:
- A new SharePoint list is created to store form submissions
- Supporting lists for workflow instances and tasks are created
- A form schema entry is added to the
ProcessAutomatorlist - A default form template with a Title field is created
Step 2: Open the Form Builder
- After creation, find your new process in the list
- Double-click the row or select it and click “Edit” to open the Form Builder
Viewing All Processes
The main list view shows all your processes. You can:
- Sort by clicking column headers
- Filter using the command bar options
- Search for specific processes
- Select multiple processes for bulk operations
Editing an Existing Process
- Find the process in the list
- Double-click the row or select and click “Edit”
- Make your changes in the Form Builder
- Click “Save” to apply changes
- Click “Back” to return to the list
Important: Changes to published forms take effect immediately for users
Deleting a Process
- Select one or more processes from the list
- Click “Delete” in the command bar
- Confirm the deletion
Warning: This does not delete the associated SharePoint lists or data. It only removes the form definition.
Toggling List Visibility
You can control the visibility and searchability of process-related SharePoint lists:
Toggle Hidden Status
- Select one or more processes from the list
- Click “Toggle Hidden Status” in the command bar
- Confirm the action
What This Does:
- Toggles the
Hiddenproperty of all associated SharePoint lists (main list, workflow instances, workflow tasks, and document library) - Hidden lists don’t appear in the standard SharePoint “Site Contents” view
- Users can still access the forms through your Process Automator interface
- This helps keep the SharePoint interface clean and prevents user confusion
Toggle NoCrawl Status
- Select one or more processes from the list
- Click “Toggle NoCrawl Status” in the command bar
- Confirm the action
What This Does:
- Toggles the
NoCrawlproperty of all associated SharePoint lists - When enabled, prevents SharePoint search from indexing the list contents
- Improves performance and keeps sensitive process data out of search results
- Recommended for processes containing confidential information
Best Practice: Keep both Hidden and NoCrawl enabled for production processes to maintain a clean SharePoint environment and protect sensitive data.
Form Builder Interface
The Form Builder consists of three main areas:
Top Command Bar
- Save: Saves all changes to SharePoint
- Preview: Opens a full preview of how users will see the form
- Back: Returns to the process list
Left Panel: Form Preview
Shows a live preview of your form as you build it. This is an interactive view where you can:
- See how fields are arranged
- Add fields to the form
- Drag and drop fields to reorder them
- Click on fields to edit their properties
Right Panel: Controls
Contains a single tab:
- Settings Tab: Global form settings and configurations
Adding Form Fields
- Hover over any field in the form preview
- Click the “+” (plus) button that appears above or below the field

- A popup will display all available field types
- Click on the field type you want to add
- The field editor will open automatically
Field Types Reference
Heading
- Used for section titles and organizing your form visually
- Choose from H1 (largest) to H6 (smallest) heading sizes
- Use Case: “Personal Information”, “Work Details”, “Additional Comments”
Paragraph
- Display text instructions or guidance to users
- Supports markdown-style text
- Use Case: Instructions like “Please fill in all required fields before submitting”
Text Field
- Single-line text input
- Use Case: Name, Email, Job Title, Reference Number
Text Area
- Multi-line text input for longer responses
- Use Case: Comments, Descriptions, Reasons, Explanations
Number Field
- Numeric input only
- Use Case: Age, Quantity, Budget Amount, Employee ID
Hidden Field
- Invisible field used to store backend values.
- Use Case: Values passed to power automate flows.
Date Field
- Calendar date picker
- Use Case: Start Date, Birth Date, Deadline, Event Date
Dropdown
- Single selection from a list of options
- Users see a dropdown menu
- Use Case: Department, Country, Status, Priority Level
Radio Buttons
- Single selection displayed as radio buttons
- All options visible at once
- Use Case: Yes/No questions, Gender, Employment Type (Full-time/Part-time/Contract)
Checkboxes
- Multiple selections allowed
- Use Case: Skills, Interests, Required Equipment, Training Courses
Toggle
- Simple Yes/No or On/Off switch
- Use Case: Newsletter Subscription, Acknowledge Terms, Enable Feature
Advanced Fields
People Picker
- Select SharePoint users or groups
- Configure to allow:
- Single or multiple users
- Groups or users only
- Use Case: Manager, Team Members, Approvers, Requestor
Lookup
- Reference data from other SharePoint lists
- Select which list and which field to display
- Use Case: Project names from Project List, Equipment from Assets List
User Property
- Automatically displays current user’s information
- Choose from properties like:
- Display Name
- Department
- Job Title
- Use Case: Auto-fill requestor information
Manager
- Automatically displays the current user’s manager
- Can be read-only or editable
- Use Case: Auto-populate manager for approval workflows
Container
- Organize fields into multiple columns
- Create complex layouts
- Use Case: Side-by-side fields like First Name | Last Name
Configuring Field Properties
When you click on a field or add a new one, the field editor opens. Here are the key properties:
Basic Properties
Name/Label
- The text users see above the field
- Should be clear and descriptive
- Example: “Employee Name”, “Start Date”, “Department”
Hint/Placeholder
- Helper text shown inside or below the field
- Provides additional guidance
- Example: “Enter your full legal name”, “YYYY-MM-DD format”
Default Value
- Pre-populate the field with a value
- Users can change it unless the field is read-only
- Example: Today’s date for a Date field, “Standard” for a Priority dropdown
Display Settings
Show in List View
- When enabled, this field appears in list views
- Useful for important identification fields
- Example: Enable for Name, Date, Status; Disable for long descriptions
Read Only
- Users can see but not edit the value
- Useful for auto-populated fields or display-only information
Field Validation
Visibility Condition
Control when the field appears:
- Always Visible: Field always shows
- Always Hidden: Field is hidden but can be set programmatically
- Conditional: Show/hide based on other field values
- Example: Show “Other (Please Specify)” field only when “Other” is selected in a dropdown
Required and validation condition are only evaluated when the field is visible.
Required Condition
Three options:
- Always Required: Users must fill this field
- Never Required: Field is optional
- Conditional: Required only when certain conditions are met
- Example: “Phone Number” required only if “Contact Method” = “Phone”
Validation Condition
Add custom validation rules:
- Always Valid: No additional validation
- Always Invalid: Field cannot be submitted (useful for blocking)
- Conditional: Validate based on complex rules
- Example: “End Date” must be after “Start Date”
- Example: “Budget Amount” must be less than $10,000
Conditional Logic
The system includes a powerful Condition Builder for advanced scenarios:
How to Use Conditions
- Select “Conditional” mode for any condition type
- Click “Add Condition” to start building rules
- Choose:
- Field: Which field to check
- Operator: Equals, Not equals, Contains, Is empty, etc.
- Value: What to compare against
- Add multiple conditions and group them with:
- AND: All conditions must be true
- OR: At least one condition must be true
Example Scenarios
Show field conditionally:
- Show “Explain reason” text area ONLY IF “Reason” dropdown = “Other”
Conditional required field:
- Make “Manager Approval” required ONLY IF “Amount” is greater than 5000
Complex validation:
- “Project End Date” must be after “Project Start Date” AND within 2 years
Advanced Features
Choice Field Options
For Dropdown, Radio Buttons, and Checkboxes:
- Edit the field properties
- Scroll to the Options section
- Add, edit, or remove options:
- Click “+” to add a new option
- Type directly to rename options
- Click “×” to remove options
- Options are saved when you save the field
People Picker Configuration
Allow Multiple Users
- Enable to let users select multiple people
- Disable for single person selection
Allow Groups
- Enable to allow SharePoint groups to be selected
- Disable to restrict to individual users only
Lookup Field Configuration
- Dropdown: Choose which SharePoint list to lookup
- Display Field: Choose which column from that list to show
- Allow Multiple: Enable to select multiple items
Example:
- List: “Projects”
- Display Field: “Project Name”
- Result: Users can select from all project names
Toggle Field Configuration
Customize the text shown:
- On Text: What displays when toggled on (default: “Yes”)
- Off Text: What displays when toggled off (default: “No”)
Example:
- On Text: “Approved”
- Off Text: “Pending”
Container Columns
- Select a Container field
- Choose number of columns (2-3)
- Add or drag fields into each column
- Fields in columns appear side-by-side on desktop, stacked on mobile
Subgrids (Child Lists)
Process Automator supports Master-Detail relationships through subgrids. This allows you to create lists of related items within a single form.
Creating a Subgrid
- In the Form Builder, click Add Subgrid Form on the command bar
- A dialog will appear asking for:
- Tab Name: The label shown on the tab (e.g., “Line Items”)
- List Name: The suffix for the child SharePoint list (e.g., “LineItems”)
- Click Create
Managing Subgrid Fields
Once a subgrid is created:
- Click on the subgrid tab (e.g., “Line Items”)
- Design the subgrid form just like the main form using the drag-and-drop interface
- Add fields relevant to the child item (e.g., Item Name, Quantity, Unit Price)
- Configure columns and required fields as normal
User Experience
- When users open the main form, they will see the subgrid as a separate tab
- They can add multiple rows to the subgrid
- Each row opens a modal form based on your subgrid design
- Subgrid items are automatically linked to the main parent request
Renaming a Subgrid Tab
You can rename subgrid tabs at any time to better reflect their purpose:
- Double-click the tab name at the top of the Form Builder
- The tab name becomes editable
- Type the new name (e.g., change “Line Items” to “Purchase Items”)
- Press Enter or click outside the tab to save
- Click Save in the command bar to persist the change
Best Practice: Use clear, descriptive names that users will understand (e.g., “Team Members”, “Budget Breakdown”, “Required Documents”)
Deleting a Subgrid Tab
If you no longer need a subgrid, you can delete it:
- Right-click on the subgrid tab you want to remove
- Select “Delete Tab” from the context menu
- Confirm the deletion in the dialog box
Important Warning:
The associated SharePoint list will be deleted
Cannot Delete Main Form Tab:
The primary “Main Form” tab cannot be deleted, only subgrid tabs can be removed.
Notes
- Subgrids create separate SharePoint lists linked by a lookup column
- You can have multiple subgrids per process
- The main form tab cannot be renamed or deleted
- Subgrid SharePoint lists follow naming pattern:
[MainListName][SubgridListName]
Form Settings
Click the Settings tab in the right panel to configure global form options:
Name
- The display name of your process
- Shown to users at the top of the form
- Required field
Description
- Detailed explanation of the process
- Helps users understand what the form is for
SharePoint List
- Shows which list stores the data
- Read-only – created during process setup
Status
Two options:
- Draft: Form is under development, may not be ready for users
- Published: Form is ready for production use
- Test Mode: A notice is shown that the process is in test mode and production ready
- Archived: Form is in archival mode. User can view their previous submissions, but cannot submit new requests
Best Practice: Keep as Draft while creating the form, change to Test Mode while testing
Allow Attachments
Enable this to let users attach files with their submissions:
- Documents
- Images
- PDFs
- Any file type
Use Case: Receipts for expense reports, supporting documents etc
Max Width
Control the form’s maximum width:
- Leave empty or set to “auto” for full width
- Set specific values like “600px” for narrow forms
- Use percentages like “80%” for responsive sizing
Flow Trigger URL
Integrate with Microsoft Power Automate. This is used to run the approval workflow.
- Create a Power Automate flow with an HTTP trigger
- Copy the flow’s HTTP POST URL
- Paste it here
- When forms are submitted, the flow will be triggered automatically
Testing Your Form
Before publishing:
- Keep status as “Draft”
- Click “Preview” to test the form
- Fill out all fields to test validation
- Test conditional logic by selecting different values
- Verify all required fields are working
- Test attachment uploads if enabled
- Once satisfied, change status to “Test Mode”
- Fill out test samples to confirm the process is working
- Once satisfied, change status to “Published”
Groups Management
Process Automator includes a built-in Groups Management module that allows administrators to create and manage SharePoint groups directly from the application interface. This is particularly useful when setting up approval workflows that require specific groups of approvers.
Accessing Groups Management
- Navigate to the Admin Module
- Click on “Groups” in the sidebar navigation
- The Groups page displays all existing SharePoint site groups
What You’ll See:
- Title: Name of the SharePoint group
- Description: Purpose or details about the group
- Command bar: Options to create new groups, delete groups, or search
Creating a New Group
Step-by-Step Process
- Navigate to Groups Page
- Click “Groups” in the sidebar menu
- Click “New”
- Located in the command bar at the top right
- Configure Group Properties
- Title: Enter a descriptive name (e.g., “Finance Approvers”, “HR Team”, “Executive Board”)
- Description: Explain the group’s purpose
- Members: Add initial group members using the people picker
- Save the Group
- Click “Save” to create the SharePoint group
- The new group appears in the Groups list immediately
Use Cases for Custom Groups
Finance Approvers
- Members: All finance department managers
- Purpose: Approve purchase requests, expense reports, budget changes
Department Managers
- Members: Heads of each department
- Purpose: Approve leave requests, resource requests for their teams
Executive Board
- Members: C-level executives
- Purpose: Final approval for high-value requests
HR Team
- Members: Human resources staff
- Purpose: Process onboarding forms, training requests, employee changes
Managing Existing Groups
Viewing Group Details
- In the Groups list, click on a group row
- The group details page opens showing:
- Group properties (Title, Description, Owner)
- Current members list
Adding Members to a Group
- Open the group details page
- Scroll to the Members section
- Click “Add Member”
- Use the people picker to search for users
- Select one or multiple users
- Click “Add” to grant them group membership
Best Practice: When adding members for approval workflows, ensure they:
- Understand their approval responsibilities
- Are trained on the approval process
Removing Members from a Group
- Open the group details page
- In the Members list, find the user to remove
- Click the “Remove” button next to their name
- Confirm the removal
Editing Group Properties
- Open the group details page
- Click “Edit” in the command bar
- Modify the Title, Description as needed
- Click “Save” to apply changes
Deleting Groups
Single Group Deletion
- Navigate to the Groups page
- Select the group you want to delete (checkbox appears on the left)
- Click “Delete” in the command bar
- Confirm the deletion in the dialog
Multiple Group Deletion
- Select multiple groups using checkboxes
- Click “Delete” in the command bar
- Confirm that you want to delete all selected groups
Important Warnings:
- Cannot delete system groups: Default SharePoint groups (Members, Visitors, Owners) cannot be deleted
- Check dependencies: Before deleting, ensure no active workflows reference the group
- No undo: Group deletion is permanent; members will need to be re-added if you recreate the group
- Permission impact: Deleting a group removes all permissions associated with it
Using Groups in Approval Workflows
Once you’ve created your custom groups, you can reference them in Power Automate flows:
Example: Finance Approval Workflow
- Create “Finance Approvers” group in Groups Management
- Add finance managers as members
- In your Power Automate flow:
- For an approval stage, select SPGroup and type Finance Approvers
Dynamic Approval Routing
If Total Amount >= $5,000:
→ Assign to "Finance Approvers" group
Else:
→ Assign to requestor's manager only
This conditional routing ensures high-value requests get appropriate oversight.
Power Automate Integration
This guide explains how to create a custom connector and build Power Automate flows to generate dynamic workflow plans for the Process Automator. The workflow plan determines which approvers review each request and in what order.
Only one Premium Power Automate account is required

Understanding Workflow Plans
What Is a Workflow Plan?
When a user submits a request through Process Automator:
- The form data is saved to SharePoint
- A Power Automate flow is triggered via HTTP request
- Your flow receives the request data
- Your flow builds a workflow plan based on business rules
- The flow returns the plan to Process Automator
- Process Automator creates tasks for each stage in the plan
Why Use Power Automate?
Power Automate allows you to:
- Create dynamic approval workflows based on form values
- Apply complex business rules (e.g., amounts, departments, request types)
- Route to different approvers based on conditions
- Skip or add stages based on logic
- Integrate with other systems for approver lookup
Workflow Plan Components
A workflow plan consists of:
- Version: Track changes to your workflow logic
- Created Date: Timestamp when the plan was generated
- Stages: Ordered list of approval stages
Each stage defines:
- Stage Name: Unique identifier (e.g., “Manager Approval”, “Finance Review”)
- Approver: Who reviews at this stage (user email or SharePoint group)
- Rejection Target: Where rejected requests go (“Start”, “End”, or another stage)
- Description: Instructions for the approver (optional)
- Due Days: Number of days to complete this stage. Used to set the deadline for a task
Approver
The **Approver** field specifies who is responsible for reviewing and taking action at each stage of the workflow. You can assign an approver in two ways: specify an individual user by their email address (e.g., “john.smith@company.com”) for person-specific reviews, or assign a SharePoint group name (e.g., “Finance Team”) to allow any member of that group to claim and complete the task.
Using SharePoint groups provides flexibility when multiple people can handle the same type of approval, while individual email assignments ensure specific accountability for critical decision points.
Rejection Target
The Rejection Target determines the workflow behavior when a request is rejected at a specific stage. Setting it to “Start” sends the request back to the beginning of the workflow for resubmission, “End” terminates the workflow immediately, or you can specify another stage name to route the request to a specific point in the approval chain (e.g., sending it back to “Manager Approval” for reconsideration).
This flexibility allows you to create sophisticated approval patterns that match your organization’s business processes.
Reserved Stage Names
The custom connector automatically adds:
Start Stage
- When: Added automatically to every workflow plan
- Purpose: Represents the initial submission by the requestor
- Cannot override: This is always the first stage
End Stage
- When: Used implicitly when workflow completes
- Purpose: Marks completion of the workflow
- Cannot create: This is not a stage you define
Building Your First Flow
Step1: Import our sample flow
Note: To import solutions, the user must have the System Administrator or System Customizer role, or be explicitly granted the prvImportCustomization privilege.
A complete sample flows are available for download. This flow includes:
- Process Automator – Workflow Trigger
- Process Automator – Task Notification
- Process Automator – Notify Requestor
- Download: Go to the resources section of this guide, to download the Power Platform Solution file.
- Import:
- Go to Power Automate
- Select your environment (top-right corner)
- Click Solutions → Import
- Select the downloaded zip file
- Click Next
- Wait for the package to upload and be analyzed and import
Step 2: Open and Save As New Flow
Rather than modifying the sample directly, create a copy for your specific process:
- In My flows, find the imported flow (it may be named “Generate Workflow Plan – Sample”)
- Click the three dots (…) next to the flow name
- Select Save As
- Enter a new name: “Generate Workflow Plan – [Your Process Name]”
- Example: “Generate Workflow Plan – Purchase Requests”
- Example: “Generate Workflow Plan – Leave Requests”
- Optionally change the Description to document what this flow handles
- Click Save
Why Save As?
- Keeps the original sample intact as a reference
- Creates a dedicated flow for your specific process
- Allows you to maintain multiple process types independently
- Makes it easy to start fresh if needed
Step 3: Configure SharePoint Connections
Now customize the flow for your SharePoint environment:
- Click on your new flow to open the flow editor
- Find the Get item action (usually the 3rd or 4th step)
- Update the SharePoint connection:
- Site Address: Click the dropdown and select your SharePoint site
- Or enter the full URL:
https://yourtenant.sharepoint.com/sites/yoursite
- Or enter the full URL:
- List Name: Click the dropdown and select your request list
- This should match the list name from your Process Automator form
- Example: “PurchaseRequests”, “EmployeeOnboarding”, “LeaveRequests”
- Id: Leave as is (uses dynamic content from trigger)
- Site Address: Click the dropdown and select your SharePoint site
- If there are other SharePoint actions (lookups, updates), configure them similarly
Step 4: Customize Business Logic
Adapt the approval logic to match your requirements:
To customize for your needs:
- Locate the Condition actions – these determine which stages to include
- Modify the conditions to match your business rules:
- Click on a Condition action to edit it
- Change the field being evaluated (e.g., from “Amount” to “Department”)
- Update the comparison operator (equals, greater than, less than, etc.)
- Change the comparison value
- Update Workflow Stage actions:
- Click on each Workflow stage action
- Update the stageName to match your approval stage names
- Configure the approver:
- For individual approvers: Set type to “User” and enter their email
- For group approvals: Set type to “SPGroup” and enter the SharePoint group name
- Set the rejectionTarget appropriately (“Start”, “End”, or another stage name)
- Update the description to provide context for approvers
- Add or remove stages as needed:
- To add a stage: Copy an existing Workflow stage action (three dots → Copy to clipboard), paste it, then modify
- To remove a stage: Delete the Workflow stage action and its corresponding Append to array variable action
Step 5: Update Workflow Version
Update the version to reflect your customization:
- Find the Workflow plan action (near the end of the flow)
- Update the workflowVersion field:
- Use semantic versioning: “1.0”, “1.1”, “2.0”
- Or use descriptive versions: “2025-Q1”, “v1-initial”
- Document what this version includes in the flow description
Step 6: Get the Flow Trigger URL
Once saved, retrieve the webhook URL for Process Automator:
- In the flow editor, click on the When a HTTP request is received trigger (first action)
- The trigger will expand showing its configuration
- Look for the HTTP POST URL field
- Click the copy icon next to the URL to copy it to your clipboard
Important: if you choose Any user in my tenant or Specific users in my tenant, the Process Automator web part will need API permissions to authenticate with the flow. To approve this, go to the SharePoint Admin Center, navigate to API access under Advanced settings, find the pending request, and click Approve. You’ll need the Global Administrator role to approve this permission request.
Important notes about the URL:
- This URL is unique to this flow
- It’s only generated after you save the flow
- If you see “This will be generated after save”, save the flow first
- Keep this URL secure – anyone with it can trigger your flow
- You’ll paste this URL into your Process Automator form settings
Step 5: Connect to Process Automator
Link your flow to the form:
- Open Process Automator in SharePoint
- Navigate to the Admin Module
- Find your process and click Edit
- In the Form Builder, go to the Settings tab (right panel)
- Find the Flow Trigger URL field
- Paste the HTTP POST URL you copied earlier
- Click Save to save the form settings
- Set the form status to Published if not already done
Step 8: Verify End-to-End
Test the complete integration:
- Switch to the User Module in Process Automator
- Submit a test request through your form
- Verify the workflow plan is generated:
- Check if the workflow starts
- Verify tasks are created for the correct approvers
- Check the approval stages match your logic
- If issues occur, check the flow run history:
- Go to Power Automate → My flows
- Click on your flow
- Click the 28-day run history tab
- Click on the most recent run to see details
Testing Your Flow
Important:
In order to test you flow outside of Power Automate, you need to set “Who can trigger the flow” to “Anyone”. After testing, you can reset to whatever value you want.
Using Postman
You can download postman from their website. It is free.
- Create new POST request
- URL: [Your flow’s HTTP POST URL]
- Headers:
Content-Type: application/json - Body (raw JSON):
{ "id": 2 } - Click Send
Verify the Response
Check the response:
- Status Code: Should be 200
- Body: Should contain the workflow plan JSON
- Structure: Verify stages array is populated correctly
Check Flow Run History
- Go back to your flow in Power Automate
- Click on the run that just executed
- Review each step:
- ✅ Green checkmark = Success
- ❌ Red X = Failure
- Click on each action to see inputs and outputs
SharePoint Lists Security
The Process Automator implements multiple layers of security to protect your business process data and prevent unauthorized access.
Security Architecture Overview
When you create a new process, the system automatically provisions four SharePoint lists:
- Main Process List: Stores form submissions
- Workflow Instance List: Tracks workflow execution
- Workflow Tasks List: Manages approval tasks
- Document Library: Stores attachments
Each of these lists has security controls applied automatically.
List Visibility Controls
Hidden Lists
By default, all process-related lists are created with the Hidden property set to true. This means:
- Not visible in “Site Contents”: Lists don’t appear in the standard SharePoint site contents view
- Reduces user confusion: Users don’t see technical backend lists they shouldn’t interact with directly
- Still accessible via Process Automator: Forms and workflows function normally through the application interface
- Admin access maintained: Site administrators can still access these lists via direct URL or SharePoint admin tools
To Toggle Hidden Status:
- Navigate to the Processes list in Admin module
- Select one or more processes
- Click “Toggle Hidden Status” in the command bar
- All associated lists (main list, workflow instances, tasks, and documents) will be updated together
Search Indexing (NoCrawl)
All process lists are created with NoCrawl set to true by default. This provides:
- Privacy protection: Process data doesn’t appear in SharePoint search results
- Performance improvement: Reduces search indexing load
- Compliance support: Helps meet requirements for confidential data handling
- Controlled discovery: Users can only find processes through the designated interface
To Toggle NoCrawl Status:
- Navigate to the Processes list in Admin module
- Select one or more processes
- Click “Toggle NoCrawl Status” in the command bar
- All associated lists will be updated together
Permission Management
Default Permission Level
The system creates and applies a custom permission level to the Members group of your SharePoint site:
Permission Level Name: ProcessAutomatorContributor
What This Prevents:
- No direct list access: Users cannot navigate to the SharePoint list URL and view/edit items directly
- Application-only access: Users must interact with data through the Process Automator interface
List-Level Security
This application does not implement item-level security (unique permissions per list item) due to SharePoint’s architectural limitations:
- 10,000 Item Limit: Lists with unique item permissions are effectively limited to approximately 10,000 items before becoming unmanageable
- Performance Degradation: Item-level permissions significantly slow down list operations, queries, and views
- Scalability Concerns: Growing lists would eventually become unusable
Completed Items Protection
When a workflow is completed (approved, rejected, or cancelled), the system moves the item to a special “Completed” folder with enhanced security:
Folder Location: [ProcessList]/Completed
Security Configuration:
- Read-only for members: Users can view completed requests but cannot modify them
- Audit compliance: Maintains data integrity for completed processes
- Historical record: Protects the audit trail from accidental or intentional changes
- Separate permissions: Uses SharePoint folder-level permissions independent of parent list
Permission Applied:
- Members group: Read permission only
- Cannot edit, delete, or move completed items
- Can view item details and history
- Can access attachments for reference
Hiding Edit Button From User Module Page

To hide the Edit button for a page, give users Read access at the page level:
- Go to the page in SharePoint.
- Click Settings → Site contents → Site Pages.
- Locate the page, click the … (More options), then select Manage Permissions.
- Stop inheriting permissions from the site (choose Stop Inheriting Permissions).
- Adjust the group or user permissions for this page:
- Set them to Read instead of Edit or Contribute.
- Save changes.
Users will now only be able to view the page, and the Edit button will no longer appear for them.
Security Best Practices
For Administrators
- Keep Lists Hidden
- Enable
Hiddenproperty for all production processes - Reduces attack surface and user confusion
- Review periodically to ensure setting is maintained
- Enable
- Enable NoCrawl
- Keep search indexing disabled for sensitive processes
- Only enable if you need process data in search results
- Consider data classification before enabling
- Review Permissions Regularly
- Audit who has access to the Members group
- Verify custom permission level hasn’t been modified
- Check for any direct permissions granted to lists
- Monitor Completed Items
- Ensure Completed folder permissions remain read-only
- Verify items are being moved correctly after workflow completion
- Check for any orphaned items outside the Completed folder
- Document Custom Changes
- If you modify permissions, document the changes
- Keep track of any custom security groups added
- Note any exceptions to standard security model
Troubleshooting
Troubleshooting Security Issues
Users Can’t Submit Forms
Problem: Error when trying to create new items
Solutions:
- Verify user is member of site Members group (By default, Everyone except external users are added)
- Ensure list permission inheritance is broken
- Verify list isn’t read-only
Completed Items Can Be Edited
Problem: Users can modify completed requests
Solutions:
- Check Completed folder exists in the list
- Verify folder has separate permissions (inheritance broken)
- Confirm Members group has only Read permission on folder
- Ensure item was actually moved to Completed folder
Lists Appear in Site Contents
Problem: Process lists visible to end users
Solutions:
- Verify Hidden property is set to
truefor all lists - Use Toggle Hidden Status command to reapply setting
- Check if users have site owner/admin permissions (they can always see hidden lists)
Process Data Appears in Search
Problem: Sensitive data showing in SharePoint search
Solutions:
- Verify NoCrawl property is set to
true - Use Toggle NoCrawl Status command to reapply setting
- Wait for search re-crawl (may take 24 hours)
- Consider removing items from search index manually
Troubleshooting Power Automate Issues
List Not Showing in Power Automate
Symptoms:
- The process list does not show in Power Automate
Solutions
- Unhide the lists first, set up your Power Automate flow, and then hide them again.
Problem: Flow doesn’t trigger
Symptoms:
- Form submits successfully
- You receive a flow error
- No workflow starts
- No tasks created
Solutions:
Flow error: {"error":{"code":"MisMatchingOAuthClaims","message":"One or more claims either missing or does not match with the open authentication access control policy."}}
- If you have set the Http Request Trigger to ‘Any user in my tenant’ or ‘Specific users in my tenant’, you need to approve the API Access Request.
- SharePoint Admin Center → Advanced → API access.
- Select Microsoft Flow Service Package (Process Automator) and approve.
NOTE: You require a global administrator role to approve this request
See Manage access to Microsoft Entra ID-secured APIs – SharePoint – SharePoint in Microsoft 365 | Microsoft Learn
Flow error: {"error":{"code":"DirectApiInvalidAuthorizationScheme","message":"The request has SAS authentication scheme while it is disabled under your access control policy."}}
- Confirm you copied the correct webhook URL. Refresh the Power Automate page and copy the webhook URL again.
Flow error: {"error":{"code":"OAuthAccessPolicyNotFound","message":"'Authorization' header is not allowed, The OAuth authentication policy is not enabled for the workflow."}}
- Confirm you copied the correct webhook URL. Refresh the Power Automate page and copy the webhook URL again.
- Make sure the flow is activated/turned on.
Failed to start workflow. Flow error: {"error":{"code":"WorkflowTriggerIsNotEnabled","message":"Could not execute workflow 'dd5d1721-5d5e-b0b7-42dc-d6b01cf8f339' trigger 'manual' with state 'Disabled': trigger is not enabled."}}
- Make sure the flow is activated/turned on.
Problem: Flow runs but returns error
Symptoms:
- Flow triggers and runs
- Shows red X on some actions
- Process Automator shows error
Solutions:
Error: “stageName is required”
Missing or empty stageName field
Fix: Ensure every Workflow stage action has a stageName filled
Error: “approver is required”
Missing approver object
Fix: Ensure both approver.type and approver.value are filled
Error: “Invalid email format”
approver.value is not a valid email when type is User
Fix: Check email addresses in User type approvers
Error: “Duplicate stageName”
Stage 'X' appears multiple times
Fix: Ensure each stageName is unique
Error: “Invalid rejectionTarget”
rejectionTarget references non-existent stage
Fix: rejectionTarget must be “Start”, “End”, or a valid stageName
Error: “Cannot use reserved name”
stageName cannot be 'Start' or 'End'
Fix: Change stageName to something else
Problem: Wrong approvers assigned
Symptoms:
- Tasks created but wrong people assigned
- SharePoint group not found
Solutions:
- Check Approver Type:
- Use
"User"for email addresses - Use
"SPGroup"for group names
- Use
- Verify Email Addresses:
- Must be valid format
- User must exist in your tenant
- Use lowercase for consistency
- Check SharePoint Group Names:
- Group must exist in SharePoint
- Use exact name (case-sensitive)
- No extra spaces
- Dynamic Content Issues:
- Ensure lookups return expected values
- Add “Compose” actions to debug values
- Check for null/empty values
Problem: Stages in wrong order
Symptoms:
- Approvers get tasks in unexpected order
- Manager approves after director
Solutions:
- Check Append Order:
- Stages execute in the order they’re appended to array
- Review your append actions sequence
- Verify Conditions:
- Ensure condition logic is correct
- Check TRUE/FALSE branches
- Test with Simple Flow:
- Start with 2 stages only
- Add complexity gradually
Problem: Rejections not routing correctly
Symptoms:
- Rejected request goes to wrong stage
- Workflow ends unexpectedly
Solutions:
- Check rejectionTarget Values:
- Must exactly match a stageName (case-sensitive)
- Use “Start” to send to requestor
- Use “End” to terminate
- Test Rejection Path:
- Submit test request
- Reject at each stage
- Verify routing
Best Practices
Form Design
- Start Simple: Begin with essential fields, add complexity later
- Use Headings: Break forms into logical sections (Personal Info, Work Details, etc.)
- Provide Hints: Add helpful placeholder text and instructions
- Group Related Fields: Use containers to organize related information
- Limit Required Fields: Only make critical fields required
- Test Thoroughly: Preview and test before publishing
Field Naming
- Be Clear: Use descriptive names like “Employee Start Date” not just “Date”
- Be Consistent: Use the same naming pattern throughout
- Avoid Technical Terms: Use language your users understand
- Keep It Short: Long labels can make forms look cluttered
Performance Tips
- Avoid Too Many Lookups: Lookup fields can slow down forms
- Use Conditional Visibility: Hide fields users don’t need to see
- Test with Real Data: Use realistic scenarios during testing
Workflow Integration
- Plan Flow Logic First: Design your Power Automate flow before connecting
- Test Flow Separately: Ensure the flow works before connecting to forms
- Handle Errors: Build error handling into your flows
- Document Integration: Keep notes on what the flow does
Maintenance
- Version Control: Keep notes on major changes to forms
- Backup: Export form schemas before major changes (future feature)
- Communicate Changes: Inform users when forms change significantly
- Monitor Usage: Check SharePoint lists regularly for issues
Groups Management
Naming Conventions
- Use descriptive names: “Finance Approvers” not “Group1”
- Include purpose: “HR Onboarding Team” instead of “HR Team”
- Be consistent: Use same pattern for all groups
- Avoid special characters: Stick to letters, numbers, spaces
Examples of Good Group Names:
- Finance Department – Approvers
- Executive Board – Final Approval
- IT Support Team – Requestors
- HR Admins – Process Owners
Group Size Considerations
Small Groups (1-5 members):
- Best for executive approvals
- Quick decision-making
- Easy to manage
- Example: C-Suite approvers
Medium Groups (6-20 members):
- Ideal for department approvers
- Balanced workload distribution
- Example: Finance manager pool
Large Groups (20+ members):
- Consider breaking into sub-groups
- May cause approval bottlenecks
- Harder to track individual accountability
- Example: Split “All Managers” into department-specific groups
Regular Maintenance
- Monthly Review: Check group memberships for accuracy
- Remove leavers: Update groups when employees leave
- Add new staff: Onboard new approvers promptly
- Document purpose: Keep group descriptions current
Workflow Design
- Keep It Simple:
- Start with basic workflows
- Add complexity gradually
- Test thoroughly at each step
- Use Clear Stage Names:
- Descriptive names (e.g., “Finance Director Approval”)
- Avoid abbreviations
- Be consistent across workflows
- Set Appropriate Rejection Targets:
- Use “Start” for minor issues (requestor can fix)
- Use “End” for major rejections (no resubmission)
- Use stage names for specific re-routing
- Add Descriptions:
- Provide context for approvers
- Include approval criteria
- Mention any special instructions
- Version Your Workflows:
- Increment version when logic changes
- Use semantic versioning (1.0, 1.1, 2.0)
- Document changes
Frequently Asked Questions
Q: Can I have multiple flows for different processes?
A: Yes! Create a separate flow for each process. Each form in Process Automator can have its own Flow Trigger URL in the form settings.
Q: What happens if my flow fails?
A: If the flow fails, the request remains at “Not Started” status and no tasks are created. Users can resubmit. Check flow run history to diagnose issues.
Q: Can I skip the custom connector and use HTTP actions directly?
A: While possible, using the custom connector provides validation, better error messages, and easier maintenance. The validation script ensures workflow plans are correct before Process Automator receives them.
Q: How do I handle approvers who are not in SharePoint?
A: All approvers must have SharePoint/Microsoft 365 accounts. For external approvers, you’ll need to add them as guest users or use email-based approval (custom implementation required).
Q: Can stages run in parallel?
A: Not natively. Stages execute sequentially. For parallel approvals, assign a SharePoint group where any member can approve, or implement custom logic.
Q: How do I notify approvers?
A: Process Automator creates tasks in SharePoint, which can trigger SharePoint alerts. You can add a flow to notify users or configure SharePoint task list alerts.
Q: Can I modify a workflow plan after submission?
A: No. Once generated, the workflow plan is fixed for that request. This ensures audit trail integrity. For changes, the request must be cancelled and resubmitted.
Q: What’s the maximum number of stages?
A: There’s no hard limit, but keep it reasonable (5-10 stages). Very long workflows can be confusing and slow. Consider if you really need that many approvals.
Q: Can I reuse stages in multiple workflows?
A: Create a child flow with common stage logic, then call it from multiple parent flows. This promotes reusability and easier maintenance.
Q: Do I need a Power Apps Premium license, and how many?
A. You only need one Power Apps Premium license, and it is required only for the user who creates the flows.
Resources
- Process Automator Solution – Power Automate solution that contains Process Automator connector and flow templates.
Support
If you encounter issues:
- Check SharePoint list permissions
- Review error messages in the browser console (F12)
- Document steps to reproduce the issue
- You can find our user guide here.