-
Epic
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
ServiceNow Plugin: Optional Column-Based Filtering & Multi-Instance Support
-
S
-
False
-
-
False
-
-
To Do
-
RHIDP-8206 - ServiceNow plugin: Allow integration without changing ServiceNow infrastructure
-
QE Needed, Docs Needed, TE Needed, Customer Facing, PX Needed
-
100% To Do, 0% In Progress, 0% Done
-
-
EPIC Goal
Enable the ServiceNow plugin frontend to support the upcoming backend capability for column-based incident filtering and multi-endpoint configuration, ensuring configuration flexibility and smooth user experience in Red Hat Developer Hub (RHDH) or Backstage instances.
Background/Feature Origin
The current ServiceNow plugin implementation requires customers to configure their ServiceNow instance by adding a dedicated Backstage Entity ID column and populating it per incident. This provides secure filtering, but adds setup burden.
A new backend feature allows customers to opt into querying incidents based on any existing column (e.g., team name, email, project ID) — without modifying ServiceNow schemas. Backend support for multiple ServiceNow endpoints is also being introduced.
Why is this important?
- Reduces onboarding friction for new customers who cannot or prefer not to change their ServiceNow schema.
- Improves flexibility by allowing teams to define their own column mappings for incident retrieval.
- Supports advanced use cases where customers use multiple ServiceNow instances or authentication methods.
- Aligns with plugin extensibility goals and RHDH's broader usability requirements.
User Scenarios
- Entity-based view without entity ID column:
A customer configures the plugin to use custom_team_field=frontend_team instead of u_backstage_entity_id. The frontend should display incidents accordingly, without hardcoding field assumptions.
- Multiple endpoints per organization:
A user wants to display incidents from two ServiceNow instances (e.g., production vs. staging). The UI should support querying and presenting results appropriately.
- Fallback compatibility:
A customer still using the u_backstage_entity_id column should experience no change in UI behavior.
Dependencies (internal and external)
- Backend Plugin:
- Dynamic field-based filtering support (backend-owned)
- Multi-endpoint configuration support
- Updated API responses and query logic
- App Configuration:
- New keys for defining field mappings and endpoint identifiers (defined in app-config.yaml)
Acceptance Criteria
- Support dynamic config-driven filtering logic (e.g., use any specified field instead of hardcoded backstage entity ID field)
- Display incidents per entity regardless of which column was configured
- Support incident display from multiple ServiceNow endpoints if configured
- Ensure no regression for existing entity ID column-based setups
- Update plugin documentation to reflect new config options
- Coordinate with backend team to align on data shape and API responses
- Light unit/UX test coverage for config switch and multi-endpoint rendering
Release Enablement/Demo - Provide necessary release enablement details
and documents
DEV - Upstream code and tests merged: <link to meaningful PR or GitHub
Issue>
DEV - Upstream documentation merged: <link to meaningful PR or GitHub
Issue>
DEV - Downstream build attached to advisory: <link to errata>
QE - Test plans in Playwright: <link or reference to playwright>
QE - Automated tests merged: <link or reference to automated tests>
DOC - Downstream documentation merged: <link to meaningful PR>