-
Notifications
You must be signed in to change notification settings - Fork 274
Description
What problem would you like to solve? Please describe:
As GoAlert continues to evolve with more integrations, especially with features like the GraphQL API key, managing integration keys uniquely becomes crucial. Currently, relying solely on a unique "name" for integration keys presents issues:
- Users may change the name or edit the key, unintentionally creating duplicates.
- Deletion of keys by users without realizing the impact on other integrations.
Describe the solution you'd like:
Introduce externalSystemName and externalID fields for integration keys, along with the following enhancements:
- Update the integrationKeys field on services to include optional externalSystem and/or externalID fields for better filtering.
- Ensure the combination of externalSystemName and externalID remains unique, allowing for the relaxation of uniqueness constraints on key names under certain conditions.
- Differentiate externally-managed keys in the UI, possibly with a distinct marker or chip.
- Restrict editing of externally-managed keys in the UI, potentially requiring an additional confirmation step for changes.
- Implement an extra confirmation step when deleting externally-managed keys, alerting users to potential impacts on integrations.
Describe alternatives you've considered:
Alternatives might include enforcing naming conventions or using metadata fields within the current framework, but these approaches lack the clarity and enforceability of the proposed solution.
Additional context:
This feature request aims to streamline the management of integration keys for external systems, mitigating the risk of conflicts or accidental disruptions to integrations. It addresses a growing need as GoAlert's ecosystem becomes more interconnected with external tools and services.