getsentry / getsentry/sentry

Allow Internal Integration with all-optional settings

Open
#65,073 6 comments 0 reactions 0 assignees View on GitHub
Feature Product Area: Settings - Integrations
Dominant language
Python
Stars
44.8k
Forks
4.9k
Avg merge
1d 5h
Merged PRs (30d)
624

Description

### Problem Statement

Hi team! We use Sentry for our teams and the current use-case is them setting up e.g. a slack alert and providing the channel name. We want to make this zero-configuration for the teams and create an Internal Integration with correct defaults out of the box, but configurable if needed.

If I provide a UI schema like this, I get the error `'required_fields' is a required property for element of type 'alert-rule-action'`:

```
{
"elements": [
{
"type": "alert-rule-action",
"title": "Send alert",
"settings": {
"type": "alert-rule-settings",
"uri": "/validate-alert",
"optional_fields": [
{
"type": "text",
"label": "System",
"name": "system"
},
{
"type": "select",
"label": "Destination",
"name": "destination",
"options": [
[
"one",
"one"
],
[
"two",
"two"
]
]
}
],
"description": "Description"
}
}
]
}
```

### Solution Brainstorm

Allow required_fields in UI schema for Internal Integration to be absent.

### Product Area

Settings - Integrations

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.