GlitchTip Issues API
The Issues API from GlitchTip — 17 operation(s) for issues.
The Issues API from GlitchTip — 17 operation(s) for issues.
openapi: 3.0.3
info:
title: GlitchTip Accept Issues API
version: 1.0.0
description: ''
contact:
email: sales@glitchtip.com
url: https://glitchtip.com/
license:
name: MIT
x-api-id: glitchtip
servers:
- url: https://app.glitchtip.com
description: GlitchTip production server
tags:
- name: Issues
paths:
/api/0/issues/{issue_id}/comments/:
get:
operationId: apps_issue_events_api_comments_list_comments
summary: List Comments
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/CommentSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
post:
operationId: apps_issue_events_api_comments_add_comment
summary: Add Comment
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/CommentSchema'
tags:
- Issues
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PostCommentSchema'
required: true
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/comments/{comment_id}/:
put:
operationId: apps_issue_events_api_comments_update_comment
summary: Update Comment
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: path
name: comment_id
schema:
title: Comment Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CommentSchema'
tags:
- Issues
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PostCommentSchema'
required: true
security:
- TokenAuth: []
- SessionAuth: []
delete:
operationId: apps_issue_events_api_comments_delete_comment
summary: Delete Comment
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: path
name: comment_id
schema:
title: Comment Id
type: integer
required: true
responses:
'204':
description: No Content
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/events/:
get:
operationId: apps_issue_events_api_events_list_issue_event
summary: List Issue Event
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueEventSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/events/latest/:
get:
operationId: apps_issue_events_api_events_get_latest_issue_event
summary: Get Latest Issue Event
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueEventDetailSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/events/{event_id}/:
get:
operationId: apps_issue_events_api_events_get_issue_event
summary: Get Issue Event
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: path
name: event_id
schema:
format: uuid
title: Event Id
type: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueEventDetailSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/projects/{organization_slug}/{project_slug}/events/:
get:
operationId: apps_issue_events_api_events_list_project_issue_event
summary: List Project Issue Event
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: project_slug
schema:
title: Project Slug
type: string
required: true
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueEventSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/projects/{organization_slug}/{project_slug}/events/{event_id}/:
get:
operationId: apps_issue_events_api_events_get_project_issue_event
summary: Get Project Issue Event
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: project_slug
schema:
title: Project Slug
type: string
required: true
- in: path
name: event_id
schema:
format: uuid
title: Event Id
type: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueEventDetailSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/organizations/{organization_slug}/issues/{issue_id}/events/{event_id}/json/:
get:
operationId: apps_issue_events_api_events_get_event_json
summary: Get Event Json
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: path
name: event_id
schema:
format: uuid
title: Event Id
type: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueEventJsonSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/:
get:
operationId: apps_issue_events_api_issues_get_issue
summary: Get Issue
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueDetailSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
put:
operationId: apps_issue_events_api_issues_update_issue
summary: Update Issue
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueDetailSchema'
tags:
- Issues
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateIssueSchema'
required: true
security:
- TokenAuth: []
- SessionAuth: []
delete:
operationId: apps_issue_events_api_issues_delete_issue
summary: Delete Issue
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'204':
description: No Content
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/commits/:
get:
operationId: apps_issue_events_api_issues_list_issue_commits
summary: List Issue Commits
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/CommitSchema'
title: Response
type: array
description: Return commits from the release where this issue first appeared.
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/organizations/{organization_slug}/issues/{issue_id}/:
put:
operationId: apps_issue_events_api_issues_update_organization_issue
summary: Update Organization Issue
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IssueDetailSchema'
tags:
- Issues
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateIssueSchema'
required: true
security:
- TokenAuth: []
- SessionAuth: []
/api/0/organizations/{organization_slug}/issues/:
get:
operationId: apps_issue_events_api_issues_list_issues
summary: List Issues
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: query
name: id
schema:
title: Id
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: start
schema:
title: Start
nullable: true
format: date-time
type: string
required: false
- in: query
name: end
schema:
title: End
nullable: true
format: date-time
type: string
required: false
- in: query
name: project
schema:
title: Project
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: environment
schema:
title: Environment
nullable: true
items:
type: string
type: array
required: false
- in: query
name: query
schema:
title: Query
nullable: true
type: string
required: false
- in: query
name: sort
schema:
default: -last_seen
enum:
- last_seen
- first_seen
- count
- priority
- -last_seen
- -first_seen
- -count
- -priority
title: Sort
type: string
required: false
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
delete:
operationId: apps_issue_events_api_issues_delete_issues
summary: Delete Issues
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: query
name: id
schema:
title: Id
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: start
schema:
title: Start
nullable: true
format: date-time
type: string
required: false
- in: query
name: end
schema:
title: End
nullable: true
format: date-time
type: string
required: false
- in: query
name: project
schema:
title: Project
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: environment
schema:
title: Environment
nullable: true
items:
type: string
type: array
required: false
- in: query
name: query
schema:
title: Query
nullable: true
type: string
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateIssueSchema'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
put:
operationId: apps_issue_events_api_issues_update_issues
summary: Update Issues
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: query
name: id
schema:
title: Id
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: start
schema:
title: Start
nullable: true
format: date-time
type: string
required: false
- in: query
name: end
schema:
title: End
nullable: true
format: date-time
type: string
required: false
- in: query
name: project
schema:
title: Project
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: environment
schema:
title: Environment
nullable: true
items:
type: string
type: array
required: false
- in: query
name: query
schema:
title: Query
nullable: true
type: string
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateIssueSchema'
tags:
- Issues
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateIssueSchema'
required: true
security:
- TokenAuth: []
- SessionAuth: []
/api/0/projects/{organization_slug}/{project_slug}/issues/:
get:
operationId: apps_issue_events_api_issues_list_project_issues
summary: List Project Issues
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: project_slug
schema:
title: Project Slug
type: string
required: true
- in: query
name: id
schema:
title: Id
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: start
schema:
title: Start
nullable: true
format: date-time
type: string
required: false
- in: query
name: end
schema:
title: End
nullable: true
format: date-time
type: string
required: false
- in: query
name: project
schema:
title: Project
nullable: true
items:
type: integer
type: array
required: false
- in: query
name: environment
schema:
title: Environment
nullable: true
items:
type: string
type: array
required: false
- in: query
name: query
schema:
title: Query
nullable: true
type: string
required: false
- in: query
name: sort
schema:
default: -last_seen
enum:
- last_seen
- first_seen
- count
- priority
- -last_seen
- -first_seen
- -count
- -priority
title: Sort
type: string
required: false
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/tags/:
get:
operationId: apps_issue_events_api_issues_list_issue_tags
summary: List Issue Tags
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: key
schema:
title: Key
nullable: true
type: string
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueTagSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/organizations/{organization_slug}/issues-stats/:
get:
operationId: apps_issue_events_api_issues_issue_stats
summary: Retrieve Statistics for a Set of Issues
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: query
name: groups
schema:
items:
type: integer
title: Groups
type: array
required: true
- in: query
name: statsPeriod
schema:
default: 24h
enum:
- 14d
- 24h
title: Statsperiod
type: string
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueStatsResponse'
title: Response
type: array
description: 'Retrieves aggregated statistics for a given list of issue groups.
This endpoint returns data for the last 24 hours, formatted as a series of
[timestamp, count] pairs.'
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/issues/{issue_id}/user-reports/:
get:
operationId: apps_issue_events_api_user_reports_list_user_reports
summary: List User Reports
parameters:
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/UserReportSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
/api/0/organizations/{organization_slug}/issues/{issue_id}/hashes/:
get:
operationId: apps_issue_events_api_hashes_list_issue_hashes
summary: List Issue Hashes
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: limit
schema:
description: Number of results to return per page.
title: Limit
nullable: true
type: integer
required: false
description: Number of results to return per page.
- in: query
name: cursor
schema:
description: The pagination cursor value.
title: Cursor
nullable: true
type: string
required: false
description: The pagination cursor value.
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IssueHashSchema'
title: Response
type: array
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
delete:
operationId: apps_issue_events_api_hashes_delete_hash
summary: Delete Hash
parameters:
- in: path
name: organization_slug
schema:
title: Organization Slug
type: string
required: true
- in: path
name: issue_id
schema:
title: Issue Id
type: integer
required: true
- in: query
name: id
schema:
items:
format: uuid
type: string
title: Id
type: array
required: true
responses:
'202':
description: Accepted
tags:
- Issues
security:
- TokenAuth: []
- SessionAuth: []
components:
schemas:
Request:
properties:
apiTarget:
title: Apitarget
nullable: true
type: string
bodySize:
title: Bodysize
nullable: true
type: integer
cookies:
anyOf:
- type: string
- items:
items:
nullable: true
type: string
type: array
type: array
- additionalProperties:
nullable: true
type: string
type: object
title: Cookies
nullable: true
data:
anyOf:
- type: string
- additionalProperties: true
type: object
- items: {}
type: array
- {}
title: Data
nullable: true
env:
title: Env
nullable: true
additionalProperties: true
type: object
fragment:
title: Fragment
nullable: true
type: string
method:
title: Method
nullable: true
type: string
protocol:
title: Protocol
nullable: true
type: string
url:
title: Url
nullable: true
type: string
headers:
title: Headers
nullable: true
items:
items:
nullable: true
type: string
type: array
type: array
query:
title: Query
nullable: true
items:
items:
nullable: true
type: string
type: array
type: array
inferredContentType:
readOnly: true
title: Inferredcontenttype
nullable: true
type: string
required:
- inferredContentType
title: Request
type: object
CultureContext:
properties:
type:
const: culture
default: culture
type: string
calendar:
nullable: true
type: string
display_name:
nullable: true
type: string
locale:
nullable: true
type: string
is_24_hour_format:
nullable: true
type: boolean
timezone:
nullable: true
type: string
type: object
PostCommentSchema:
properties:
data:
additionalProperties:
type: string
propertyNames:
const: text
title: Data
type: object
required:
- data
title: PostCommentSchema
type: object
ResponseContext:
properties:
type:
const: response
default: response
title: Type
type: string
status_code:
title: Status Code
type: integer
required:
- status_code
title: ResponseContext
type: object
IssueDetailSchema:
properties:
id:
title: Id
type: string
count:
title: Count
type: string
type:
$ref: '#/components/schemas/IssueEventTypeDisplay'
level:
$ref: '#/components/schemas/LogLevelDisplay'
status:
$ref: '#/components/schemas/EventStatusDisplay'
metadata:
additionalProperties: true
title: Metadata
type: object
project:
$ref: '#/components/schemas/ProjectReference'
shortId:
title: Shortid
type: string
numComments:
title: Numcomments
type: integer
stats:
default:
24h: []
title: Stats
nullable: true
additionalProperties:
items:
items:
type: number
type: array
type: array
type: object
shareId:
title: Shareid
nullable: true
type: integer
logger:
title: Logger
nullable: true
type: string
permalink:
default: Not implemented
title: Permalink
nullable: true
type: string
statusDetails:
title: Statusdetails
nullable: true
additionalProperties:
type: string
type: object
subscriptionDetails:
title: Subscriptiondetails
nullable: true
type: string
userCount:
default: 0
title: Usercount
nullable: true
type: integer
matchingEventId:
title: Matchingeventid
nullable: true
type: string
firstRelease:
nullable: true
$ref: '#/components/schemas/IssueReleaseSchema'
lastRelease:
nullable: true
$ref: '#/components/schemas/IssueReleaseSchema'
firstSeen:
format: date-time
title: Firstseen
type: string
lastSeen:
format: date-time
title: Lastseen
type: string
assignedTo:
nullable: true
$ref: '#/components/schemas/IssueActorSchema'
title:
maxLength: 255
title: Title
type: string
culprit:
title: Culprit
nullable: true
maxLength: 1024
type: string
userReportCount:
title: Userreportcount
type: integer
required:
- id
- count
- type
- level
- status
- metadata
- project
- shortId
- numComments
- firstSeen
- lastSeen
- title
- userReportCount
title: IssueDetailSchema
type: object
AppContext:
properties:
type:
const: app
# --- truncated at 32 KB (66 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/glitchtip/refs/heads/main/openapi/glitchtip-issues-api-openapi.yml