Bugsink (2.2.2)

Download OpenAPI specification:

Bugsink API Documentation

events

List events

List events for an issue. The list response omits the full event data payload.

Authorizations:
BearerAuthNone
query Parameters
cursor
string

The pagination cursor value.

issue
required
string

Filter events by issue UUID or friendly ID (required).

order
string
Enum: "asc" "desc"

Sort order of digest_order (default: desc).

Responses

Response samples

Content type
application/json
{}

Retrieve an event

Retrieve an event by internal Bugsink event UUID. The detail response includes the full data payload.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

Bugsink-internal

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "ingested_at": "2019-08-24T14:15:22Z",
  • "digested_at": "2019-08-24T14:15:22Z",
  • "issue": "984f8aab-1dc8-4804-8ae1-d0944856240b",
  • "grouping": 0,
  • "event_id": "a7a26ff2-e851-45b6-9634-d595f45458b7",
  • "project": 0,
  • "timestamp": "2019-08-24T14:15:22Z",
  • "digest_order": 9223372036854776000,
  • "data": null,
  • "stacktrace_md": "string"
}

Render an event stacktrace

Render the event's stacktrace (frames, source, locals) as Markdown-like text.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

Bugsink-internal

Responses

Response samples

Content type
text/markdown
Traceback (most rece...

issue-comments

Create an issue comment

Add a comment to an issue. issue accepts an issue UUID or friendly ID.

Authorizations:
BearerAuthNone
Request Body schema: application/json
required
issue
required
string
comment
required
string

Responses

Request samples

Content type
application/json
{
  • "issue": "string",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "issue": "string",
  • "project": 0,
  • "timestamp": "2019-08-24T14:15:22Z",
  • "comment": "string",
  • "user": 0
}

issues

List issues

List issues for a project.

Authorizations:
BearerAuthNone
query Parameters
cursor
string

The pagination cursor value.

order
string
Enum: "asc" "desc"

Sort order (default: asc).

project
required
integer

Filter issues by project id (required).

sort
string
Enum: "digest_order" "last_seen"

Sort mode (default: digest_order).

Responses

Response samples

Content type
application/json
{
  • "results": [
    ]
}

Retrieve an issue

Retrieve an issue by issue UUID or friendly ID.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Delete an issue

Delete an issue.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Mute an issue

Mute this issue.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Mute an issue for a period

Mute this issue for a relative period, e.g. for 3 days.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Request Body schema: application/json
required
period_name
required
string (PeriodNameEnum)
Enum: "year" "month" "week" "day" "hour" "minute"
  • year - year
  • month - month
  • week - week
  • day - day
  • hour - hour
  • minute - minute
nr_of_periods
required
integer >= 1

Responses

Request samples

Content type
application/json
{
  • "period_name": "year",
  • "nr_of_periods": 1
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Mute an issue until a threshold is reached

Mute this issue until a threshold is reached, e.g. more than 10 events in 1 hour.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Request Body schema: application/json
required
period_name
required
string (PeriodNameEnum)
Enum: "year" "month" "week" "day" "hour" "minute"
  • year - year
  • month - month
  • week - week
  • day - day
  • hour - hour
  • minute - minute
nr_of_periods
required
integer >= 1
gte_threshold
required
integer >= 1

Responses

Request samples

Content type
application/json
{
  • "period_name": "year",
  • "nr_of_periods": 1,
  • "gte_threshold": 1
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Resolve an issue

Mark this issue as resolved.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Resolve an issue in the latest release

Mark this issue as resolved in the latest release.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Resolve an issue in the next release

Mark this issue as resolved by the next release.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

Unmute an issue

Unmute this issue.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this issue.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "friendly_id": "string",
  • "project": 0,
  • "digest_order": 9223372036854776000,
  • "last_seen": "2019-08-24T14:15:22Z",
  • "first_seen": "2019-08-24T14:15:22Z",
  • "digested_event_count": -9223372036854776000,
  • "stored_event_count": 0,
  • "calculated_type": "string",
  • "calculated_value": "string",
  • "transaction": "string",
  • "is_resolved": true,
  • "is_resolved_by_next_release": true,
  • "is_muted": true
}

projects

List projects

List projects ordered by name.

Authorizations:
BearerAuthNone
query Parameters
cursor
string

The pagination cursor value.

team
string <uuid>

Optional filter by team UUID.

Responses

Response samples

Content type
application/json
{}

Create a project

Create a project. team is the team UUID. visibility and alert settings are optional.

Authorizations:
BearerAuthNone
Request Body schema: application/json
required
team
required
string <uuid>
name
required
string <= 255 characters
visibility
string (ProjectVisibilityEnum)
Enum: "joinable" "discoverable" "team_members"
  • joinable - joinable
  • discoverable - discoverable
  • team_members - team_members
alert_on_new_issue
boolean
alert_on_regression
boolean
alert_on_unmute
boolean
retention_max_event_count
integer <int64> [ 0 .. 9223372036854776000 ]

Responses

Request samples

Content type
application/json
{
  • "team": "95527efb-6695-4aae-916e-c9869b1fb2bd",
  • "name": "string",
  • "visibility": "joinable",
  • "alert_on_new_issue": true,
  • "alert_on_regression": true,
  • "alert_on_unmute": true,
  • "retention_max_event_count": 9223372036854776000
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "team": "95527efb-6695-4aae-916e-c9869b1fb2bd",
  • "name": "string",
  • "visibility": "joinable",
  • "alert_on_new_issue": true,
  • "alert_on_regression": true,
  • "alert_on_unmute": true,
  • "retention_max_event_count": 9223372036854776000
}

Retrieve a project

Retrieve a project by integer project ID. Use expand=team to include the team object.

Authorizations:
BearerAuthNone
path Parameters
id
required
integer

A unique integer value identifying this project.

query Parameters
expand
string
Value: "team"

Optional related object expansion.

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "team": "95527efb-6695-4aae-916e-c9869b1fb2bd",
  • "name": "string",
  • "slug": "string",
  • "dsn": "string",
  • "digested_event_count": 0,
  • "stored_event_count": 0,
  • "alert_on_new_issue": true,
  • "alert_on_regression": true,
  • "alert_on_unmute": true,
  • "visibility": "joinable",
  • "retention_max_event_count": 9223372036854776000
}

Update a project

Partially update a project by integer project ID.

Authorizations:
BearerAuthNone
path Parameters
id
required
integer

A unique integer value identifying this project.

Request Body schema: application/json
team
string <uuid>
name
string <= 255 characters
visibility
string (ProjectVisibilityEnum)
Enum: "joinable" "discoverable" "team_members"
  • joinable - joinable
  • discoverable - discoverable
  • team_members - team_members
alert_on_new_issue
boolean
alert_on_regression
boolean
alert_on_unmute
boolean
retention_max_event_count
integer <int64> [ 0 .. 9223372036854776000 ]

Responses

Request samples

Content type
application/json
{
  • "team": "95527efb-6695-4aae-916e-c9869b1fb2bd",
  • "name": "string",
  • "visibility": "joinable",
  • "alert_on_new_issue": true,
  • "alert_on_regression": true,
  • "alert_on_unmute": true,
  • "retention_max_event_count": 9223372036854776000
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "team": "95527efb-6695-4aae-916e-c9869b1fb2bd",
  • "name": "string",
  • "visibility": "joinable",
  • "alert_on_new_issue": true,
  • "alert_on_regression": true,
  • "alert_on_unmute": true,
  • "retention_max_event_count": 9223372036854776000
}

releases

List releases

List releases for a project. Pass the integer project ID in the required project query parameter.

Authorizations:
BearerAuthNone
query Parameters
cursor
string

The pagination cursor value.

project
required
integer

Filter releases by project id (required).

Responses

Response samples

Content type
application/json
{}

Create a release

Create a release for a project. project is the integer project ID. version is the release version string.

Authorizations:
BearerAuthNone
Request Body schema: application/json
required
project
required
integer
version
required
string
timestamp
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "project": 1,
  • "version": "my-package@1.2.3"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "project": 0,
  • "version": "string",
  • "date_released": "2019-08-24T14:15:22Z",
  • "semver": "string",
  • "is_semver": true,
  • "sort_epoch": 0
}

Retrieve a release

Retrieve a release by release UUID.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this release.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "project": 0,
  • "version": "string",
  • "date_released": "2019-08-24T14:15:22Z",
  • "semver": "string",
  • "is_semver": true,
  • "sort_epoch": 0
}

teams

List teams

List teams ordered by name.

Authorizations:
BearerAuthNone
query Parameters
cursor
string

The pagination cursor value.

Responses

Response samples

Content type
application/json
{}

Create a team

Create a team. visibility is optional and defaults to discoverable.

Authorizations:
BearerAuthNone
Request Body schema: application/json
required
name
required
string <= 255 characters
visibility
string (TeamVisibilityEnum)
Enum: "joinable" "discoverable" "hidden"
  • joinable - joinable
  • discoverable - discoverable
  • hidden - hidden

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "visibility": "joinable"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "visibility": "joinable"
}

Retrieve a team

Retrieve a team by UUID.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this team.

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "visibility": "joinable"
}

Update a team

Partially update a team by UUID.

Authorizations:
BearerAuthNone
path Parameters
id
required
string <uuid>

A UUID string identifying this team.

Request Body schema: application/json
name
string <= 255 characters
visibility
string (TeamVisibilityEnum)
Enum: "joinable" "discoverable" "hidden"
  • joinable - joinable
  • discoverable - discoverable
  • hidden - hidden

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "visibility": "joinable"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "visibility": "joinable"
}

Sentry-compatible API

/api/0 and /api/{project_pk}/ paths exist for Sentry-SDK / sentry-cli compatibility (as opposed to the /api/canonical/ paths which are Bugsink-specific).

Support sentry-cli login checks

This endpoint exists because sentry-cli probes Sentry's API root during its login flow. Bugsink returns the minimal Sentry-like org-token response needed for sentry-cli to accept a Bugsink auth token for release and sourcemap upload commands.

Authorizations:
BearerAuth

Responses

Response samples

Content type
application/json
{
  • "version": "string",
  • "auth": {
    },
  • "user": null
}

Get sentry-cli chunk upload settings

This endpoint exists for sentry-cli sourcemap upload support. See the Bugsink sourcemaps documentation.

Authorizations:
BearerAuth
path Parameters
organization_slug
required
string

Organization slug accepted for sentry-cli compatibility.

Responses

Response samples

Content type
application/json
{
  • "chunkSize": 0,
  • "maxRequestSize": 0,
  • "maxFileSize": 0,
  • "concurrency": 0,
  • "chunksPerRequest": 0,
  • "hashAlgorithm": "string",
  • "compression": [
    ],
  • "accept": [
    ]
}

Upload sentry-cli file chunks

This endpoint exists for sentry-cli sourcemap upload support. It accepts chunk files named by sha1 checksum. See the Bugsink sourcemaps documentation.

Authorizations:
BearerAuth
path Parameters
organization_slug
required
string

Organization slug accepted for sentry-cli compatibility.

Request Body schema: multipart/form-data
required

Multipart form data with file and/or file_gzip file fields.

property name*
additional property
any

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "detail": "string",
  • "error": "string"
}

Assemble a sentry-cli artifact bundle

This endpoint exists for sentry-cli sourcemap upload support. It reports missing chunks or queues artifact bundle assembly. See the Bugsink sourcemaps documentation.

Authorizations:
BearerAuth
path Parameters
organization_slug
required
string

Organization slug accepted for sentry-cli compatibility.

Request Body schema: application/json
required
checksum
required
string
chunks
required
Array of strings
projects
required
Array of strings
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "checksum": "string",
  • "chunks": [
    ],
  • "projects": [
    ]
}

Response samples

Content type
application/json
{
  • "state": "string",
  • "missingChunks": [
    ]
}

Assemble sentry-cli debug information files

This endpoint exists for Sentry native debug file upload compatibility through sentry-cli. Bugsink uses the same file upload machinery as sourcemaps where possible.

Authorizations:
BearerAuth
path Parameters
organization_slug
required
string

Organization slug accepted for sentry-cli compatibility.

project_slug
required
string

Existing Bugsink project slug.

Request Body schema: application/json
required
additional property
object

Responses

Request samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Ingest an event through Sentry's deprecated store endpoint

This endpoint exists for Sentry SDK compatibility. Authenticate with Sentry SDK auth: X-Sentry-Auth or ?sentry_key=.... This is Sentry's deprecated event ingestion endpoint, kept for compatibility with older SDKs. Prefer the envelope endpoint when using SDKs that support it.

Authorizations:
SentryAuthHeaderSentryKeyQuery
path Parameters
project_pk
required
integer

Integer Bugsink project id.

Request Body schema: application/json
required

Sentry event JSON.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "id": "string"
}

Ingest a Sentry envelope

This endpoint exists for Sentry SDK compatibility. Authenticate with Sentry SDK auth: X-Sentry-Auth or ?sentry_key=.... This is the primary Sentry SDK ingestion endpoint. Envelope DSN authentication is also accepted when present in the envelope headers.

Authorizations:
SentryAuthHeaderSentryKeyQuery
path Parameters
project_pk
required
integer

Integer Bugsink project id.

Request Body schema: application/x-sentry-envelope
required

Sentry envelope payload.

string <binary>

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "detail": "string",
  • "error": "string"
}

Ingest a Sentry native minidump

This endpoint exists for Sentry SDK compatibility. Authenticate with Sentry SDK auth: X-Sentry-Auth or ?sentry_key=.... This endpoint exists for Sentry native/minidump upload compatibility.

Authorizations:
SentryAuthHeaderSentryKeyQuery
path Parameters
project_pk
required
integer

Integer Bugsink project id.

Request Body schema: multipart/form-data
required

Multipart form data containing upload_file_minidump.

upload_file_minidump
required
string <binary>
property name*
additional property
any

Responses

Response samples

Content type
application/json
{
  • "id": "string"
}

CSP reporting

Native support for browser CSP violation reports emitted through the report-uri directive. Reports are translated into Bugsink events and processed through the normal ingest pipeline.

Ingest a CSP report

This endpoint accepts browser-emitted CSP violation reports from the report-uri directive. Authenticate with ?sentry_key=...; browsers cannot set custom auth headers on CSP report posts.

Authorizations:
SentryKeyQuery
path Parameters
project_pk
required
integer

Integer Bugsink project id.

Request Body schema: application/csp-report
required

CSP report JSON.

required
object
property name*
additional property
any

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "detail": "string",
  • "error": "string"
}