Known Platform Limitations
Formify is built on Atlassian's UI Modifications API. This API has platform-level limitations that affect all apps using it, including Formify. Understanding these limitations helps you design effective rules and troubleshoot unexpected behavior.
These are not limitations of Formify itself, but constraints imposed by Jira's platform architecture.
Multiple UI Modifications Apps Limit
Limitation: Maximum 5 UI Modifications apps can run simultaneously for any combination of project, issue type, and screen.
What This Means
If you have more than 5 apps installed that use the UI Modifications API (like Formify, ScriptRunner, Jira Misc Workflow Extensions, etc.), only the first 5 apps will apply their changes. Changes from the 6th app onward are disregarded.
Affected combinations:
- Project + Issue Type + Screen (Global Issue Create, Issue View, or Issue Transition)
Example scenario:
- Project: "Customer Platform"
- Issue Type: Bug
- Screen: Global Issue Create
- Apps configured: 6 UI Modifications apps
- Result: Only 5 apps apply changes; the 6th app's rules don't execute
How to Work Around This
Audit installed apps:
- Go to Jira Settings → Apps → Manage apps
- Check which apps use UI Modifications API
- Consolidate functionality into fewer apps when possible
Prioritize Formify:
- If you hit the 5-app limit, consider whether other apps provide functionality you can replicate with Formify
- Formify is specifically designed for field behavior management
Contact support:
- If you need multiple apps and hit the limit, contact our support team for advice on configuration strategies
Conflicts Between Multiple Apps
Limitation: When multiple UI Modifications apps modify the same field using the same method, conflicts occur.
What This Means
If Formify and another app (e.g., ScriptRunner) both try to hide the same field, they may conflict. The app that finishes running last "wins" - its changes override earlier apps' changes.
Application order is random - apps run asynchronously, so you can't predict which app will finish last.
User Experience
When conflicts occur:
- Users see a notification: "Some changes couldn't be applied due to conflicts"
- The final field state reflects whichever app finished last
- Unpredictable behavior if multiple apps fight over the same field
How to Avoid Conflicts
Coordinate with other apps:
- Document which fields Formify manages
- Configure other apps to avoid modifying the same fields
- Use Formify for field visibility/validation; use other apps for different purposes
Test thoroughly:
- Test your rules in a staging environment with all apps installed
- Verify that rules work consistently with other apps present
Consolidate where possible:
- If two apps do similar things, choose one to avoid conflicts
- Formify provides comprehensive field management - consider migrating field logic here
Flash of Unmodified Fields (Global Issue Create)
Limitation: UI modifications load after the Create issue dialog finishes loading. Users briefly see fields before modifications are applied.
What This Means
When a user opens the Create issue dialog:
- Dialog loads with all fields visible (unmodified state)
- Formify evaluates and applies rules
- Fields hide/show/lock/change according to rules
This happens very quickly (typically under 1 second), but users may notice:
- A field briefly visible before being hidden
- Default field labels before they change
- Unmodified dropdown options before being limited
Visual indicator: Small spinner icon appears next to field labels while modifications are loading.
User Experience Impact
Minimal for most users:
- Loading happens fast on modern browsers
- Spinner icon indicates changes are in progress
- Final state is correct once loading completes
Noticeable on slow connections:
- Users with slow internet may see longer flash duration
- Mobile users may experience more noticeable delays
Cannot Be Eliminated
This is a platform limitation - all UI Modifications apps experience this behavior. The Atlassian API doesn't support pre-loading modifications before the dialog appears.
Workaround: Design rules with this in mind. Don't rely on hidden fields for security - use Jira permissions for sensitive data.
"Show Fields" and "Find Your Field" Limitations
Limitation: Jira's native "Show fields" feature doesn't interact well with UI Modifications apps.
Show Fields Behavior
Users can hide fields individually using Jira's "Show fields" button. When a user hides a field this way:
- Data for hidden fields is not sent to Formify
- Rules cannot evaluate conditions based on user-hidden fields
- Rules cannot show/hide/modify user-hidden fields
Example problem:
- Rule: "Hide Root Cause when Priority not equals High"
- User hides Priority field using "Show fields"
- Formify doesn't receive Priority value
- The condition can't be checked, so it isn't met
- Root Cause stays visible even when Priority isn't High
Find Your Field Behavior
Jira's "Find your field" search doesn't know about fields hidden by Formify.
Example problem:
- Rule hides "Root Cause" field for Stories
- User creating a Story searches "Find your field" for "Root"
- "Root Cause" appears in search results
- User clicks field but it doesn't appear on form
- Confusing user experience
How to Work Around This
Communicate with users:
- Educate users not to use "Show fields" to hide fields that rules depend on
- Explain that Formify manages field visibility automatically
Design resilient rules:
- Don't create complex dependencies on user-controllable fields
- Use required fields in conditions (users can't hide required fields)
Consider native Jira configuration:
- For sensitive fields, use Jira field configurations instead of dynamic rules
- Combine Formify with native Jira permissions
Image Previews During Issue Creation
Limitation: Image previews may show "Preview unavailable" during issue creation.
What This Means
When users add images to Description or rich text fields during issue creation:
- Images upload successfully
- Preview shows "Preview unavailable" message
- Preview displays correctly after issue is created and page is refreshed
Why this happens: Permissions to display images aren't available until the issue exists in Jira's database.
User Experience Impact
Not a blocker:
- Images still upload and save correctly
- Preview appears after issue creation
- Users can continue creating issues normally
Slightly confusing:
- Users may think upload failed
- "Preview unavailable" message isn't very explanatory
Workaround
Communicate expectation:
- Inform users that image previews appear after issue creation
- Add help text to rich text fields explaining this behavior
This affects all UI Modifications apps - not specific to Formify.
Required User Permissions
Limitation: Users must have specific Jira permissions to see UI modifications work.
Permission Requirements by Screen
| Screen | Required Permission | What Happens Without It |
|---|---|---|
| Global Issue Create | "Create issues" permission | User sees error: "We couldn't load the UI modifications configuration for this form" |
| Issue View | "Browse projects" permission | Rules don't apply; user sees unmodified fields |
| Issue Transition | "Transitions issues" permission | Rules don't apply on transition dialogs |
What This Means
If a user lacks the required permission:
- Formify cannot run
- Fields appear in default state (no modifications)
- User may see error message (Global Issue Create only)
How to Handle This
Verify user permissions:
- Ensure users have appropriate permissions for their role
- Check project permission schemes in Jira Settings
Error message troubleshooting:
- If users report seeing the error message, check their permissions
- Grant "Create issues" permission if they should be creating issues
Design for permission levels:
- Don't rely on Formify for security enforcement: a hidden field's value stays readable in search, list views, bulk edit, the REST API, Automation and the Jira mobile app
- Use Jira permissions or issue security levels for actual access control
- Use Formify for UX improvements (hiding irrelevant fields)
Screen-Specific Limitations
Some actions don't work on certain screens due to API constraints.
Issue View Screen
"Make Field Required" and "Set Field Value" not supported:
- Dynamic required validation and setting values aren't available on Issue View
- Use these actions only on Global Issue Create or Issue Transition
Empty read-only fields are hidden:
- Jira automatically hides empty read-only (locked) fields
- If you lock a field with no value, users won't see it at all
- This is Jira platform behavior, not Formify limitation
Jira Software projects only:
- Issue View rules run in Jira Software projects (company-managed and team-managed)
- In other project types, rules on the Issue View tab have no effect
Some fields can't be locked:
- Status, Due date, Issue type, Resolution, Target start, Target end and Request type can't be locked on the Issue View, so Formify doesn't offer the Read-only tab for them there
- Due date, Target start and Target end can be locked on Global Issue Create only, and Resolution on Issue Transition only. Status, Issue type and Request type can't be locked on any screen
Locking is UI-only:
- Locked fields can't be edited inline on the issue page
- Inline editing in list view cells, bulk edit, the REST API, Automation and the Jira mobile app can still change the field
- Use Jira permissions or workflow properties if the data must be protected everywhere
Issue Transition Screen
Company-managed Jira Software projects only:
- Transition rules run in company-managed Jira Software projects
- Team-managed projects have no Transition tab; in other project types, rules on the Transition tab have no effect
Some fields aren't available here:
- Due date, Target start, Target end, Components and People fields can't be changed in a transition dialog (see Field-Specific Limits)
- Summary and Resolution can't be made required
Field-Specific Limits
Jira lets apps change some fields on some screens only. The rule editor can offer more: a rule outside these limits saves, but has no effect.
- Due date, Target start and Target end only work on Global Issue Create: Jira doesn't let apps change them in a transition dialog or on the Issue View, so no rule on them (show/hide, required, lock, label, description, set value) has an effect there, even though the editor lets you create one. The one exception is a Must not be empty validation, stated right after this list.
- Resolution appears only in transition dialogs, and can't be made required there
- Original estimate works on the Issue View and in transition dialogs, not in the Create dialog
- Components and People fields work on Global Issue Create and the Issue View, not in transition dialogs
- Issue type takes only Set Value and Limit Options, on Global Issue Create and Issue Transition; rules that hide, require, lock or relabel it have no effect
- Fix versions: Limit Options works in transition dialogs only
- Summary can't be made required (Jira always requires it), and on the Issue View it can only be locked
- On the Issue View, Change Description doesn't work on Description and Priority
- Status can't be changed by rules; use it in the Issue status condition
- Request type can't be changed by rules on any screen
The exception is a Must not be empty validation: on a field Jira doesn't share with apps on that screen (Components, People, Target start, Target end and Due date in a transition dialog; Original Estimate on Global Issue Create) it always fails and blocks the form, even when the field is filled. See the gotchas in Defining Field Validations.
App Permissions
When you install Formify, Jira lists the permissions the app asks for. Formify uses them to:
- Read work items - to check conditions against field values (e.g., "Priority = High")
- Change field values - for Set value rules
- Read users, groups and roles - for User group, User role and User permission conditions
- Read and manage project configuration - to list a project's fields, screens and work types, and to set up your rules in Jira's forms
- Store data - to keep the rules you create
Jira grants an app only the permissions it declares, which is why they're listed at install time.
User Privacy and Data Access
Formify accesses:
- Field values - to evaluate conditions (e.g., "Priority = High")
- User information - for user-based conditions (e.g., "User in group Managers")
- Project and issue type data - for scope filtering
- Field metadata - names, descriptions, visibility settings
Data is not stored or transmitted outside of rule evaluation. Formify processes data in real-time to determine field behavior, then discards it. The app stores only your rules.
Supported Project Types
Formify works with:
- Company-managed Jira Software projects
- Team-managed Jira Software projects
- Company-managed Jira Work Management projects
- Team-managed Jira Work Management projects
Issue View rules run in Jira Software projects only, and Transition rules in company-managed Jira Software projects only (see Screen-Specific Limitations). Formify rules run in Jira Software and Jira Work Management projects; they don't run in Jira Service Management projects, neither on the customer portal nor when agents create requests.
Formify is a Jira Cloud app; there's no version for Jira Data Center.
Entry Point Limitations
Global Issue Create
Supported entry points:
- Global Create button (top navigation)
ckeyboard shortcut- "Add a child issue" button (from Issue View)
- "Create subtask" button (from Issue View)
- Custom UI apps using
CreateIssueModal
Important: "Add a child issue" and "Create subtask" only trigger Global Issue Create with UIM if the summary and at least one other field is set as mandatory for the issue type.
Getting Help with Limitations
These are platform limitations - they affect all UI Modifications apps, not just Formify.
If you encounter issues:
- Check if it's a documented limitation on this page
- Review Atlassian UI Modifications documentation
- Contact Formify support for configuration advice
- Report bugs to Atlassian if you discover platform issues
Vote for improvements:
- Atlassian tracks feature requests for the UI Modifications API
- Search Jira issue tracker for existing requests
- Vote for features you need to increase priority
Related Pages
Screen capabilities:
- Screens & Contexts - What works where
- Screen-Specific Limitations - Detailed screen constraints
Field support:
- Supported Field Types - Which fields are supported
Troubleshooting:
- Common Issues - "Rule not working" debugging
- Debugging Rules - Troubleshooting strategies
Best practices:
- Designing Effective Rules - Work within limitations
- Testing Rules - Verify rules work with constraints
This page documents known limitations as of the latest Atlassian UI Modifications API version. Limitations may change as Atlassian enhances the platform.