Skip to main content

Overview

The Sentry integration allows you to migrate from Sentry to Proliferate or run both platforms in parallel. Import your existing Sentry issues, sync their status, and maintain continuity in your error tracking workflow. Key capabilities:
  • Import existing issues from Sentry projects
  • Sync issue status (resolved, ignored, unresolved)
  • Poll for new issues automatically
  • Maintain historical error data during migration
  • View Sentry metadata alongside Proliferate data
This integration is primarily designed for migration scenarios. It creates a bridge between Sentry and Proliferate, allowing you to gradually transition or compare data from both platforms.

What You Get

Issue Import

Import existing issues from your Sentry projects into Proliferate

Status Sync

Keep issue statuses synchronized between Sentry and Proliferate

Historical Data

Preserve your error history when migrating to Proliferate

Automatic Polling

Continuously poll Sentry for new issues and updates

Setup Process

1

Navigate to Integrations

Go to Settings → Integrations in your Proliferate dashboard.
2

Connect Sentry Account

Click Install on the Sentry integration card. You’ll be redirected to Sentry for authorization.
3

Authorize Access

On the Sentry OAuth page:
  • Log in to your Sentry account if prompted
  • Review the requested permissions
  • Select which Sentry organization to connect
  • Click Authorize to grant access
You need admin access to your Sentry organization to authorize the integration.
4

Verify Connection

After authorization, you’ll be redirected back to Proliferate. The Sentry integration should now show as Connected.
5

Configure Polling

Set up automatic polling to sync issues:
  • Choose which Sentry projects to monitor
  • Set polling frequency (default: every 15 minutes)
  • Configure which issue statuses to import
6

Trigger Initial Import

Run a manual import to bring in existing issues:
  • Click Poll Now to trigger an immediate sync
  • Monitor the import progress
  • Review imported issues in your dashboard

How Polling Works

The Sentry integration uses a polling mechanism to keep issues synchronized:
┌─────────────────┐
│   Proliferate   │
│   (Background   │
│     Task)       │
└────────┬────────┘

         │ Every 15 minutes

┌─────────────────┐
│   Sentry API    │
│  (Fetch Issues) │
└────────┬────────┘

         │ Returns unresolved issues

┌─────────────────┐
│   Proliferate   │
│   Database      │
│                 │
│  Create/Update  │
│  Tasks/Problems │
└─────────────────┘

What Gets Imported

For each Sentry issue, the integration creates:
  • A Task record with Sentry metadata
  • Linked Problem for grouping similar errors
  • Issue metadata (title, culprit, status, counts)
  • First seen and last seen timestamps
  • User impact metrics (affected user count)

Manual Polling

Trigger a manual import at any time:
  1. Go to Settings → Integrations
  2. Click on the Sentry integration
  3. Click Poll Now
  4. View the import results and newly created problems
Manual polling is useful for initial imports or when you want to force an immediate sync without waiting for the next scheduled poll.

Migration Use Case

The Sentry integration is designed to support gradual migration from Sentry to Proliferate:

Phase 1: Parallel Operation

Run both Sentry and Proliferate in parallel:
  • Keep your existing Sentry SDK in place
  • Add the Proliferate SDK alongside it
  • Use the integration to import Sentry issues
  • Compare error tracking between both platforms

Phase 2: Transition Period

Gradually shift to Proliferate:
  • Start using Proliferate for new projects
  • Keep the integration running for legacy projects
  • Monitor the quality and completeness of data in Proliferate

Phase 3: Full Migration

Complete the transition:
  • Replace Sentry SDKs with Proliferate SDKs
  • Import final historical data from Sentry
  • Optionally keep the integration for reference

Testing Your Connection

After connecting Sentry, test the integration:
  1. View Connected Organizations:
    GET /api/v1/integrations/sentry/test
    
    This shows:
    • Connected Sentry user and email
    • Accessible Sentry organizations
    • Sample projects and their issue counts
    • Recent issues from the first project
  2. Trigger a Manual Poll:
    POST /api/v1/integrations/sentry/poll
    
    Response includes:
    • Number of issues imported
    • Problems created or updated
    • Any errors encountered

API Endpoints

The Sentry integration provides these endpoints:
EndpointMethodDescription
/api/v1/integrations/sentry/connectGETStart Sentry OAuth flow
/api/v1/integrations/sentry/callbackGETHandle OAuth callback
/api/v1/integrations/sentry/testGETTest connection and view projects
/api/v1/integrations/sentry/pollPOSTManually trigger issue polling
/api/v1/integrations/sentry/disconnectDELETERemove Sentry connection

Polling Configuration

Customize how the integration polls Sentry:
Set how often to check for new issues:
  • Every 5 minutes: Frequent updates (higher API usage)
  • Every 15 minutes: Default, balanced approach
  • Hourly: Lower API usage, delayed updates
  • Manual only: Only poll when triggered manually
Choose which Sentry projects to monitor:
  • All projects: Import from every accessible project
  • Specific projects: Select individual projects to monitor
  • Projects can be added or removed at any time
Filter which issues to import:
  • Status: Unresolved, resolved, ignored
  • Date range: Only issues from the last N days
  • Severity: Only errors above a certain level
  • User impact: Only issues affecting N+ users
The integration respects Sentry API rate limits:
  • Automatically backs off if rate limited
  • Spreads requests across projects to avoid throttling
  • Monitors API quota usage

Troubleshooting

Checklist:
  • Verify the Sentry connection is active
  • Check that you selected projects to monitor
  • Ensure there are unresolved issues in Sentry
  • Review polling logs for errors
  • Confirm your Sentry API token hasn’t expired
Sentry OAuth tokens can expire. To refresh:
  • Disconnect the integration in Proliferate
  • Reconnect and re-authorize
  • The new token will be stored automatically
Proliferate stores a refresh token to automatically renew access. Token expiration should be rare.
If you see duplicate issues:
  • Check that you haven’t connected multiple Sentry organizations
  • Verify issue fingerprinting is working correctly
  • Review the sentry_issue_id field to identify duplicates
  • Contact support if duplicates persist
Common polling errors:
  • 401 Unauthorized: Token expired, reconnect integration
  • 403 Forbidden: Insufficient Sentry permissions
  • 429 Rate Limited: Too many requests, polling will retry
  • 500 Server Error: Sentry API issue, will retry automatically

Permissions Required

The Sentry integration requests these permissions:
PermissionPurpose
project:readRead project information and settings
project:releasesAccess release data for version tracking
org:readRead organization information
member:readRead member information for assignment
team:readRead team information
All permissions are read-only. The integration does not modify your Sentry data.

Understanding Imported Data

Each imported Sentry issue creates a Task in Proliferate with these fields:
FieldDescription
titleIssue title from Sentry
sourceAlways “sentry”
source_external_idSentry organization/project slug
sentry_issue_idUnique Sentry issue ID
statusIssue status (open, resolved, ignored)
metadataFull Sentry issue data (level, culprit, counts, etc.)
The task is also linked to a Problem for grouping related errors.

Best Practices

1

Start with a Test Project

Connect a small test project first to verify the integration works as expected before importing production issues.
2

Set Reasonable Filters

Don’t import every issue. Use filters to import only active, high-impact issues to avoid cluttering your dashboard.
3

Monitor API Usage

Keep an eye on your Sentry API quota, especially if you have many projects or frequent polling.
4

Plan Your Migration

If migrating, create a timeline:
  • Start with parallel operation
  • Verify data completeness
  • Gradually shift traffic
  • Complete the migration
5

Clean Up After Migration

Once fully migrated to Proliferate, you can disconnect the Sentry integration and reduce API overhead.

Managing the Integration

Viewing Imported Issues

To see issues imported from Sentry:
  1. Go to your Dashboard or Issues page
  2. Filter by source: source:sentry
  3. Click on any issue to view full Sentry metadata

Disconnecting Sentry

To remove the integration:
1

Disable Polling

First, disable automatic polling to stop importing new issues.
2

Disconnect in Proliferate

  • Go to Settings → Integrations
  • Click disconnect on the Sentry card
  • Confirm the disconnection
3

Revoke OAuth (Optional)

  • Go to Sentry organization settings
  • Navigate to Developer Settings → Authorized Applications
  • Revoke access for Proliferate
Disconnecting the integration will stop polling for new issues. Existing imported issues will remain in Proliferate.

Data Retention

Imported Sentry issues follow Proliferate’s standard data retention policies:
  • Issues are retained according to your plan limits
  • Sentry metadata is preserved in the metadata field
  • Disconnecting the integration does not delete imported issues
  • You can manually delete imported issues if needed