Reference · Tools

Sentry.io

Manage error tracking events, issues, organizations, projects, releases, and teams in Sentry.io

Action Development v1

The Sentry.io node manages events, issues, organizations, projects, releases and teams in Sentry, on the cloud service or a self-hosted instance. A typical build is creating a tracker ticket when a new issue crosses a threshold, then resolving it in Sentry when the fix ships.

Node type
Action
Parameters
73
Outputs
Output, Error
Credentials
Sentry.io API (Cloud) , Sentry.io OAuth2 (Cloud) , Sentry.io API (Self-Hosted)

Sentry.io

Manage Sentry.io error tracking events, issues, organizations, projects, releases, and teams.

Overview

Sentry.io is an error tracking and performance monitoring platform. This tool manages events, issues, organizations, projects, releases, and teams via the Sentry REST API. Supports Sentry cloud (with API token or OAuth2) and self-hosted instances. Resources include: Event (get, getAll), Issue (get, getAll, update, delete), Organization (get, getAll, create, update), Project (get, getAll, create, update, delete), Release (get, getAll, create, update, delete), Team (get, getAll, create, update, delete).

Category: Development
Tool Name: sentry_io
Version: 1

Appearance: Icon: si-sentry | Color: #362D59

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Sentry.io API (Cloud), Sentry.io OAuth2 (Cloud), Sentry.io API (Self-Hosted) credentials. Configure the one that matches the Authentication parameter you select, not all three. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Eventevent
Issueissue
Organizationorganization
Projectproject
Releaserelease
Teamteam

Operations

Event

OperationValueDescription
GetgetGet event by ID
Get ManygetAllGet many events

Issue

OperationValueDescription
DeletedeleteDelete an issue
GetgetGet issue by ID
Get ManygetAllGet many issues
UpdateupdateUpdate an issue

Organization

OperationValueDescription
CreatecreateCreate an organization
GetgetGet organization by slug
Get ManygetAllGet many organizations
UpdateupdateUpdate an organization

Project

OperationValueDescription
CreatecreateCreate a new project
DeletedeleteDelete a project
GetgetGet project by ID
Get ManygetAllGet many projects
UpdateupdateUpdate a project

Release

OperationValueDescription
CreatecreateCreate a release
DeletedeleteDelete a release
GetgetGet release by version identifier
Get ManygetAllGet many releases
UpdateupdateUpdate a release

Team

OperationValueDescription
CreatecreateCreate a new team
DeletedeleteDelete a team
GetgetGet team by slug
Get ManygetAllGet many teams
UpdateupdateUpdate a team

Parameters

Two different parameters are labelled Organization Slug; their internal names differ, so both are shown in backticks.

Event: Get

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the event belongs to. Supports expressions like {{ $json.org }}.
Project SlugstringYesThe slug of the project the event belongs to. Supports expressions.
Event IDstringYesThe ID of the event to retrieve (either the numeric primary-key or the hexadecimal ID as reported by the raven client). Supports expressions.

Event: Get Many

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the events belong to. Find in Sentry under Settings > General Settings. Supports expressions.
Project SlugstringYesThe slug of the project the events belong to. Find in Sentry under Project Settings. Supports expressions.
FullbooleanNotrueWhether the event payload will include the full event body, including the stack trace.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)

Issue: Get

ParameterTypeRequiredDefaultDescription
Issue IDstringYesID of issue to get or delete. Supports expressions like {{ $json.issueId }}.

Issue: Delete

ParameterTypeRequiredDefaultDescription
Issue IDstringYesID of issue to get or delete. Supports expressions like {{ $json.issueId }}.

Issue: Get Many

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the issues belong to. Supports expressions.
Project SlugstringYesThe slug of the project the issues belong to. Supports expressions.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)
Additional FieldscollectionNo{}Optional filters applied to the issue listing.
— QuerystringNoAn optional Sentry structured search query. If not provided, an implied “is:unresolved” is assumed.
— Stats PeriodoptionsNoTime period of stats.
Options: 14d (14 days), 24h (24 hours)
— Short ID Lookup (shortIdLookUp)booleanNotrueWhether short IDs are looked up by this function as well.

Issue: Update

ParameterTypeRequiredDefaultDescription
Issue IDstringYesID of issue to update. Supports expressions like {{ $json.issueId }}.
Update FieldscollectionNo{}Fields to change on the issue.
— Assigned TostringNoThe actor ID (or username) of the user or team that should be assigned to this issue.
— Has SeenbooleanNotrueWhether the user has seen the event.
— Is BookmarkedbooleanNotrueWhether to bookmark this issue.
— Is PublicbooleanNotrueWhether to set the issue to public or private.
— Is SubscribedbooleanNotrueWhether to subscribe to this issue.
— StatusoptionsNoThe new status for the issue.
Options: ignored, resolved, resolvedInNextRelease, unresolved

Organization: Create

ParameterTypeRequiredDefaultDescription
NamestringYesThe name of the new organization. Supports expressions.
Agree to TermsbooleanNofalseWhether you agree to the applicable terms of service and privacy policy of Sentry.io.
Additional FieldscollectionNo{}Optional fields for the new organization.
— SlugstringNoThe unique URL slug for this organization. If not provided a slug is automatically generated based on the name.

Organization: Get

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization to retrieve. Supports expressions.

Organization: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)
Additional FieldscollectionNo{}Optional filters applied to the organization listing.
— MemberbooleanNotrueWhether to restrict results to organizations which you have membership.
— OwnerbooleanNotrueWhether to restrict results to organizations which you are the owner.

Organization: Update

ParameterTypeRequiredDefaultDescription
Organization Slug (organization_slug)stringYesThe slug of the organization to update. Supports expressions.
Update FieldscollectionNo{}Fields to change on the organization.
— NamestringNoThe new name of the organization.
— SlugstringNoThe new URL slug for this organization.

Project: Create

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization. Supports expressions.
Team SlugstringYesThe slug of the team to create a new project for. Supports expressions.
NamestringYesThe name for the new project. Supports expressions.
Additional FieldscollectionNo{}Optional fields for the new project.
— SlugstringNoOptionally a slug for the new project. If not provided, a slug is generated from the name.

Project: Get

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization. Supports expressions.
Project SlugstringYesThe slug of the project to retrieve. Supports expressions.

Project: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)

Project: Update

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the project belongs to. Supports expressions.
Project SlugstringYesThe slug of the project to update. Supports expressions.
Update FieldscollectionNo{}Fields to change on the project.
— Bookmarked (isBookmarked)booleanNofalseWhether to bookmark the project.
— Digests Maximum Delay (digestsMaxDelay)numberNo1800Maximum interval to digest alerts.
— Digests Minimum Delay (digestsMinDelay)numberNo60Minimum interval to digest alerts.
— NamestringNoThe new name for the updated project.
— SlugstringNoThe new slug for the updated project.
— TeamstringNoThe new team name.
— PlatformstringNoThe new platform for the updated project.

Project: Delete

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the project belongs to. Supports expressions.
Project SlugstringYesThe slug of the project to delete. Supports expressions.

Release: Create

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the release belongs to. Supports expressions.
VersionstringYesA version identifier for this release. Can be a version number, a commit hash, etc. Supports expressions.
URLstringYesA URL that points to the release. This can be the path to an online interface to the sourcecode for instance. Supports expressions.
ProjectsstringYesA comma-separated list of project slugs that are involved in this release. Supports expressions.
Additional FieldscollectionNo{}Optional fields for the new release.
— Date ReleaseddateTimeNoAn optional date that indicates when the release went live. If not provided the current time is assumed.
— CommitsfixedCollectionNo{}An optional list of commit data to be associated with the release.
— — IDstringYesThe sha of the commit.
— — Author EmailstringNoAuthor email.
— — Author NamestringNoName of author.
— — MessagestringNoMessage of commit.
— — Patch SetfixedCollectionNo{}A list of the files that have been changed in the commit.
— — — PathstringYesThe path to the file.
— — — TypeoptionsNoThe types of changes that happened in that commit.
Options: add, modify, delete
— — RepositorystringNoRepository name.
— — TimestampdateTimeNoTimestamp of commit.
— RefsfixedCollectionNo{}An optional way to indicate the start and end commits for each repository included in a release.
— — CommitstringYesThe head sha of the commit.
— — RepositorystringYesRepository name.
— — Previous CommitstringNoThe sha of the HEAD of the previous release.

Release: Get

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the release belongs to. Supports expressions.
VersionstringYesThe version identifier of the release. Supports expressions.

Release: Get Many

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the releases belong to. Supports expressions.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)
Additional FieldscollectionNo{}Optional filters applied to the release listing.
— QuerystringNoThis parameter can be used to create a “starts with” filter for the version.

Release: Update

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the release belongs to. Supports expressions.
VersionstringYesA version identifier for this release. Supports expressions.
Update FieldscollectionNo{}Fields to change on the release.
— CommitsfixedCollectionNo{}An optional list of commit data to be associated with the release.
— — IDstringYesThe sha of the commit.
— — Author EmailstringNoAuthor email.
— — Author NamestringNoName of author.
— — MessagestringNoMessage of commit.
— — Patch SetfixedCollectionNo{}Files changed in the commit.
— — — PathstringYesThe path to the file.
— — — TypeoptionsNoThe types of changes.
Options: add, modify, delete
— — RepositorystringNoRepository name.
— — TimestampdateTimeNoTimestamp of commit.
— Date ReleaseddateTimeNoAn optional date that indicates when the release went live.
— RefstringNoAn optional commit reference. This is useful if a tagged version has been provided.
— RefsfixedCollectionNo{}An optional way to indicate the start and end commits for each repository.
— — CommitstringYesThe head sha of the commit.
— — RepositorystringYesRepository name.
— — Previous CommitstringNoThe sha of the HEAD of the previous release.
— URLstringNoA URL that points to the release.

Release: Delete

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the release belongs to. Supports expressions.
VersionstringYesThe version identifier of the release. Supports expressions.

Team: Create

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the team belongs to. Supports expressions.
NamestringYesThe name of the team. Supports expressions.
Additional FieldscollectionNo{}Optional fields for the new team.
— SlugstringNoThe optional slug for this team. If not provided it will be auto generated from the name.

Team: Get

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the team belongs to. Supports expressions.
Team SlugstringYesThe slug of the team to get. Supports expressions.

Team: Get Many

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization for which the teams should be listed. Supports expressions.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)

Team: Update

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the team belongs to. Supports expressions.
Team SlugstringYesThe slug of the team to update. Supports expressions.
Update FieldscollectionNo{}Fields to change on the team.
— NamestringNoThe new name of the team.
— SlugstringNoThe new slug of the team. Must be unique and available.

Team: Delete

ParameterTypeRequiredDefaultDescription
Organization Slug (organizationSlug)stringYesThe slug of the organization the team belongs to. Supports expressions.
Team SlugstringYesThe slug of the team to delete. Supports expressions.

All Operations

ParameterTypeRequiredDefaultDescription
AuthenticationoptionsNoaccessTokenThe authentication method to use. It selects which of the node’s three credential types is read, and for Self Hosted it also supplies the instance URL.
Options: accessToken (Access Token, Sentry cloud), oAuth2 (OAuth2, Sentry cloud), accessTokenServer (Access Token, self-hosted instance)
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

The Sentry API response is merged onto the input item JSON — the fields already on the item pass through and the response object is written on top of them. Binary data is forwarded unchanged.

OperationOutput items per input item
Every getAll (event, issue, organization, project, release, team)Fans out — one item per record returned
Every get, create and updateOne item carrying the Sentry object
issue / delete, project / delete, release / delete, team / deleteOne item carrying success: true
{
  "success": true
}

List operations always page through the API’s full result set and then trim client-side, so Return All off with a small Limit still walks the cursor before handing you the first Limit records. Prefer a narrower filter (Issue’s Query, Release’s Query, Event’s Project Slug) over a small Limit when the project is large.

Reference the result downstream by expression, e.g. {{ $json.id }}, {{ $json.shortId }} or {{ $json.slug }}.

Usage Examples

  • Get all unresolved issues from a Sentry project
  • Create a new release in Sentry with commit information
  • Update the status of a Sentry issue to resolved
  • List all teams in a Sentry organization
  • Delete a project from Sentry

Example Configuration

List unresolved issues from a project over the last 24 hours:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessToken",
    "resource": "issue",
    "operation": "getAll",
    "organizationSlug": "my-org",
    "projectSlug": "my-project",
    "returnAll": false,
    "limit": 100,
    "additionalFields": {
      "query": "is:unresolved",
      "statsPeriod": "24h"
    }
  }
}

Resolve an issue and assign it:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessToken",
    "resource": "issue",
    "operation": "update",
    "issueId": "{{ $json.id }}",
    "additionalFields": {
      "status": "resolved",
      "assignedTo": "nathan@example.com"
    }
  }
}

Create a release with commit and ref data:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessToken",
    "resource": "release",
    "operation": "create",
    "organizationSlug": "my-org",
    "version": "{{ $json.version }}",
    "url": "https://github.com/my-org/my-repo/releases/tag/{{ $json.version }}",
    "projects": "my-project, my-other-project",
    "additionalFields": {
      "commits": {
        "commitProperties": [
          {
            "id": "{{ $json.sha }}",
            "repository": "my-org/my-repo",
            "message": "{{ $json.commitMessage }}"
          }
        ]
      }
    }
  }
}

Get one event including its full body:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessToken",
    "resource": "event",
    "operation": "get",
    "organizationSlug": "my-org",
    "projectSlug": "my-project",
    "eventId": "{{ $json.eventId }}"
  }
}

List the teams in an organization on a self-hosted instance:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessTokenServer",
    "resource": "team",
    "operation": "getAll",
    "organizationSlug": "my-org",
    "returnAll": true
  }
}

Rename an organization:

{
  "type": "sentry_io",
  "parameters": {
    "authentication": "accessToken",
    "resource": "organization",
    "operation": "update",
    "organization_slug": "my-org",
    "updateFields": {
      "name": "My Renamed Org",
      "slug": "my-renamed-org"
    }
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Manage Sentry.io error tracking: events, issues, organizations, projects, releases, and teams via REST API.

Frequently asked questions

Does it work with self-hosted Sentry?

Yes — there are separate credentials for Sentry Cloud (API token or OAuth2) and for a self-hosted server, so pick the one matching your deployment.

What can it manage besides issues?

Events, organizations, projects, releases and teams, so release tracking and project administration are both reachable rather than only triage.

Why manage releases from a workflow?

Creating the release as part of a deploy pipeline is what lets Sentry attribute regressions to the change that introduced them.

Which credentials are available?

Sentry.io API for cloud, Sentry.io OAuth2 for cloud, and a separate self-hosted server credential.

Build with the Sentry.io node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Sentry.io API (Cloud) credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.