What you’ll accomplish:
- Create a Sentry custom integration with proper permissions and webhooks
- Configure your Plane instance with Sentry credentials
- Enable error tracking and automatic issue creation from Sentry alerts
Before you begin
You’ll need:- Administrator access to your Sentry organization
- Access to your Plane instance configuration files
- Your Plane instance domain (e.g.,
plane.yourcompany.com)
Create Sentry custom integration
A custom integration (also called a public integration) connects your Sentry organization to Plane, enabling bidirectional communication for issue tracking and alert handling.- Log in to your Sentry organization.
- Go to Settings → Developer Settings → Custom Integrations.
- Click Create New Integration.
- Select Public Integration.
-
Fill in these fields on the integration creation screen:
Field Value Name Plane(or any name you prefer)Author Your organization name Webhook URL https://[YOUR_DOMAIN]/silo/api/sentry/sentry-webhook/Redirect URL https://[YOUR_DOMAIN]/silo/api/oauth/sentry/auth/callbackVerify Installation Disabled (recommended) Alert Rule Action Enabled Replace[YOUR_DOMAIN]with your actual Plane instance domain. For example, if your Plane instance is atplane.company.com, your Webhook URL would behttps://plane.company.com/silo/api/sentry/sentry-webhook/
Sentry sends event notifications to this endpoint. Plane processes these webhooks to sync Sentry issues with Plane work items. Redirect URL
After OAuth authorization, Sentry redirects users back to this URL to complete the connection. Alert Rule Action
Enables automatic Plane work item creation when Sentry alert rules trigger.
Configure integration schema
The schema defines how Sentry and Plane interact—what fields appear when creating issues and how alert rules behave. Paste this schema into the Schema field:The first element defines how users create new Plane work items from Sentry or link existing ones. Required fields (title, description, project) ensure every work item has essential information. Optional fields (assignees, priority, labels, state, module, cycle) provide flexibility for detailed work item tracking. Alert rule actions
The second element enables automatic work item creation when Sentry alerts fire. You can configure whether alerts create regular work items or intake work items for triage, and set default assignees, states, and labels.
Set permissions
Configure these permissions to allow Sentry to interact with Plane appropriately:| Permission | Access Level | Why This Matters |
|---|---|---|
| Project | Read | Access project details, tags, and debug files from Sentry |
| Team | Read | Retrieve team member lists for assignee dropdowns |
| Release | No Access | Not required for Plane integration |
| Distribution | No Access | Not required for Plane integration |
| Issue & Event | Read & Write | Create and link issues, sync status updates bidirectionally |
| Organization | Read | Resolve organization IDs and retrieve repository information |
| Member | Read | Access member details for assignee functionality |
| Alerts | Read | Enable alert rule actions for automatic issue creation |
Enable webhooks
Webhooks keep Plane and Sentry synchronized. When issues change in Sentry, Plane receives notifications and updates accordingly. Enable the issue webhook with these events:| Event | Why It’s Needed |
|---|---|
| created | Notify Plane when new Sentry issues are detected |
| resolved | Update linked Plane work items when Sentry issues are resolved |
| assigned | Sync assignee changes from Sentry to Plane |
| archived | Reflect archived status in Plane |
| unresolved | Update Plane when resolved issues reopen |
Save and retrieve credentials
After saving your integration, Sentry generates OAuth credentials:- Client ID - A public identifier for your integration
- Client Secret - A private key used to authenticate API requests
Configure your Plane instance
Add Sentry credentials to your Plane instance so it can communicate with Sentry’s API.Locate your configuration file
For Docker deployments:- Edit
plane.envin your Plane installation directory
- Edit your
custom-values.yamlfile or ConfigMap containing environment variables
Add environment variables
Add these variables to your Plane configuration: For Docker (plane.env):
custom-values.yaml):
<your_client_id> and <your_client_secret> with the credentials from Step 1.
Environment variable reference
| Variable | Required | Default | Description |
|---|---|---|---|
SENTRY_BASE_URL | No | https://sentry.io | Base URL of your Sentry instance. For self-hosted Sentry, use your Sentry domain (e.g., https://sentry.company.com) |
SENTRY_CLIENT_ID | Yes | - | Client ID from your Sentry custom integration |
SENTRY_CLIENT_SECRET | Yes | - | Client Secret from your Sentry custom integration (only shown once during creation) |
SENTRY_INTEGRATION_SLUG | No | - | The slug identifier for your integration. Find this in your integration’s URL: https://org.sentry.io/settings/developer-settings/plane-local (here plane-local is the slug) |
Using self-hosted Sentry?
If you’re running your own Sentry instance, change
If you’re running your own Sentry instance, change
SENTRY_BASE_URL to your Sentry domain. All other configuration remains the same.
