Hookdeck Issue Triggers API
Issue Triggers lets you setup rules that trigger issues when certain conditions are met.
Issue Triggers lets you setup rules that trigger issues when certain conditions are met.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/hookdeck-issue-triggers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Hookdeck Bookmarks Attempts Issue Triggers API
version: 1.0.0
description: Save bookmarked events for quick replay and convenient one-click testing during development.
contact:
name: Hookdeck Support
url: https://hookdeck.com/contact-us
email: info@hookdeck.com
servers:
- url: https://api.hookdeck.com/2025-07-01
description: Production API
security:
- bearerAuth: []
- basicAuth: []
tags:
- name: Issue Triggers
description: Issue Triggers lets you setup rules that trigger issues when certain conditions are met.
paths:
/issue-triggers:
get:
operationId: getIssueTriggers
summary: Retrieve issue triggers
description: This endpoint lists issue triggers.
tags:
- Issue Triggers
responses:
'200':
description: List of issue triggers
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTriggerPaginatedResult'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: query
name: name
schema:
type: string
maxLength: 255
description: Filter by issue trigger name
- in: query
name: type
schema:
anyOf:
- $ref: '#/components/schemas/IssueType'
- type: array
items:
$ref: '#/components/schemas/IssueType'
- in: query
name: disabled_at
schema:
anyOf:
- type:
- string
- 'null'
format: date-time
- $ref: '#/components/schemas/Operators'
description: Date when the issue trigger was disabled
- in: query
name: order_by
schema:
anyOf:
- type: string
maxLength: 255
enum:
- created_at
- type
- type: array
items:
type: string
maxLength: 255
enum:
- created_at
- type
minItems: 2
maxItems: 2
description: Sort key(s)
- in: query
name: dir
schema:
anyOf:
- type: string
enum:
- asc
- desc
- type: array
items:
type: string
enum:
- asc
- desc
minItems: 2
maxItems: 2
description: Sort direction(s)
- in: query
name: limit
schema:
type: integer
minimum: 0
maximum: 255
description: Result set size
- in: query
name: next
schema:
type: string
maxLength: 255
description: The ID to provide in the query to get the next set of results
- in: query
name: prev
schema:
type: string
maxLength: 255
description: The ID to provide in the query to get the previous set of results
post:
operationId: createIssueTrigger
summary: Create an issue trigger
description: This endpoint creates an issue trigger.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters: []
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
$ref: '#/components/schemas/IssueType'
configs:
anyOf:
- $ref: '#/components/schemas/IssueTriggerDeliveryConfigs'
- $ref: '#/components/schemas/IssueTriggerTransformationConfigs'
- $ref: '#/components/schemas/IssueTriggerBackpressureConfigs'
- $ref: '#/components/schemas/IssueTriggerRequestConfigs'
description: Configuration object for the specific issue type selected
channels:
$ref: '#/components/schemas/IssueTriggerChannels'
name:
type:
- string
- 'null'
maxLength: 255
description: Optional unique name to use as reference when using the API
required:
- type
- channels
additionalProperties: false
put:
operationId: upsertIssueTrigger
summary: Create/Update an issue trigger
description: This endpoint creates an issue trigger, or updates an existing issue trigger by name.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters: []
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
type:
$ref: '#/components/schemas/IssueType'
configs:
anyOf:
- $ref: '#/components/schemas/IssueTriggerDeliveryConfigs'
- $ref: '#/components/schemas/IssueTriggerTransformationConfigs'
- $ref: '#/components/schemas/IssueTriggerBackpressureConfigs'
- $ref: '#/components/schemas/IssueTriggerRequestConfigs'
description: Configuration object for the specific issue type selected
channels:
$ref: '#/components/schemas/IssueTriggerChannels'
name:
type: string
maxLength: 255
description: Required unique name to use as reference when using the API
required:
- type
- channels
- name
additionalProperties: false
/issue-triggers/{id}:
get:
operationId: getIssueTrigger
summary: Retrieve an issue trigger
description: This endpoint retrieves a specific issue trigger.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: path
name: id
schema:
type: string
description: Issue trigger ID
required: true
put:
operationId: updateIssueTrigger
summary: Update an issue trigger
description: This endpoint updates an issue trigger.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: path
name: id
schema:
type: string
description: Issue trigger ID
required: true
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
configs:
anyOf:
- $ref: '#/components/schemas/IssueTriggerDeliveryConfigs'
- $ref: '#/components/schemas/IssueTriggerTransformationConfigs'
- $ref: '#/components/schemas/IssueTriggerBackpressureConfigs'
- $ref: '#/components/schemas/IssueTriggerRequestConfigs'
description: Configuration object for the specific issue type selected
channels:
$ref: '#/components/schemas/IssueTriggerChannels'
disabled_at:
type:
- string
- 'null'
format: date-time
description: Date when the issue trigger was disabled
name:
type:
- string
- 'null'
maxLength: 255
description: Optional unique name to use as reference when using the API
additionalProperties: false
delete:
operationId: deleteIssueTrigger
summary: Delete an issue trigger
description: This endpoint permanently deletes an issue trigger. This action cannot be undone.
tags:
- Issue Triggers
responses:
'200':
description: An object with deleted issue trigger's id
content:
application/json:
schema:
$ref: '#/components/schemas/DeletedIssueTriggerResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: path
name: id
schema:
type: string
description: Issue trigger ID
required: true
/issue-triggers/{id}/disable:
put:
operationId: disableIssueTrigger
summary: Disable an issue trigger
description: This endpoint disables an issue trigger so it stops producing issues.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: path
name: id
schema:
type: string
description: Issue trigger ID
required: true
/issue-triggers/{id}/enable:
put:
operationId: enableIssueTrigger
summary: Enable an issue trigger
description: This endpoint enables a previously disabled issue trigger.
tags:
- Issue Triggers
responses:
'200':
description: A single issue trigger
content:
application/json:
schema:
$ref: '#/components/schemas/IssueTrigger'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/APIErrorResponse'
parameters:
- in: path
name: id
schema:
type: string
description: Issue trigger ID
required: true
components:
schemas:
RequestRejectionCause:
type: string
enum:
- SOURCE_DISABLED
- NO_CONNECTION
- VERIFICATION_FAILED
- UNSUPPORTED_HTTP_METHOD
- UNSUPPORTED_CONTENT_TYPE
- UNPARSABLE_JSON
- PAYLOAD_TOO_LARGE
- INGESTION_FATAL
- UNKNOWN
x-docs-type: string
IssueTriggerBetterUptimeChannel:
type: object
properties:
escalation_policy_id:
type: string
escalation_policy_name:
type: string
required:
- escalation_policy_id
- escalation_policy_name
additionalProperties: false
description: Channel for a 'Better Uptime' issue trigger
SeekPagination:
type: object
properties:
order_by:
anyOf:
- type: string
- type: array
items:
type: string
dir:
anyOf:
- $ref: '#/components/schemas/OrderByDirection'
- type: array
items:
$ref: '#/components/schemas/OrderByDirection'
limit:
type: integer
prev:
type: string
next:
type: string
additionalProperties: false
TransformationExecutionLogLevel:
type: string
enum:
- debug
- info
- warn
- error
- fatal
description: The minimum log level to open the issue on
DeletedIssueTriggerResponse:
type: object
properties:
id:
type: string
required:
- id
additionalProperties: false
Operators:
type: object
properties:
gt:
type:
- string
- 'null'
format: date-time
gte:
type:
- string
- 'null'
format: date-time
le:
type:
- string
- 'null'
format: date-time
lte:
type:
- string
- 'null'
format: date-time
any:
type: boolean
all:
type: boolean
additionalProperties: false
IssueTriggerBackpressureDelay:
type: integer
minimum: 60000
maximum: 86400000
description: The minimum delay (backpressure) to open the issue for min of 1 minute (60000) and max of 1 day (86400000)
x-docs-type: integer
IssueTriggerBackpressureConfigs:
type: object
properties:
delay:
$ref: '#/components/schemas/IssueTriggerBackpressureDelay'
destinations:
anyOf:
- type: string
- type: array
items:
type: string
description: A pattern to match on the destination name or array of destination IDs. Use `*` as wildcard.
x-docs-force-simple-type: true
required:
- delay
- destinations
additionalProperties: false
description: Configurations for a 'Backpressure' issue trigger
IssueTriggerReference:
anyOf:
- $ref: '#/components/schemas/IssueTriggerDeliveryConfigs'
- $ref: '#/components/schemas/IssueTriggerTransformationConfigs'
- $ref: '#/components/schemas/IssueTriggerBackpressureConfigs'
- $ref: '#/components/schemas/IssueTriggerRequestConfigs'
description: Configuration object for the specific issue type selected
IssueTriggerDeliveryConfigs:
type: object
properties:
strategy:
$ref: '#/components/schemas/IssueTriggerStrategy'
connections:
anyOf:
- type: string
- type: array
items:
type: string
description: A pattern to match on the connection name or array of connection IDs. Use `*` as wildcard.
x-docs-force-simple-type: true
required:
- strategy
- connections
additionalProperties: false
description: Configurations for a 'delivery' issue trigger
IssueTriggerMicrosoftTeamsChannel:
type: object
properties:
channel_name:
type: string
required:
- channel_name
additionalProperties: false
description: Channel for a 'Microsoft Teams' issue trigger
APIErrorResponse:
type: object
properties:
code:
type: string
description: Error code
status:
type: number
format: float
description: Status code
message:
type: string
description: Error description
data:
type:
- object
- 'null'
properties: {}
required:
- code
- status
- message
additionalProperties: false
description: Error response model
IssueTriggerEmailChannel:
type: object
properties: {}
additionalProperties: false
description: Email channel for an issue trigger
x-docs-type: object
IssueTriggerTransformationConfigs:
type: object
properties:
log_level:
$ref: '#/components/schemas/TransformationExecutionLogLevel'
transformations:
anyOf:
- type: string
- type: array
items:
type: string
description: A pattern to match on the transformation name or array of transformation IDs. Use `*` as wildcard.
x-docs-force-simple-type: true
required:
- log_level
- transformations
additionalProperties: false
description: Configurations for a 'Transformation' issue trigger
IssueTriggerDiscordChannel:
type: object
properties:
channel_name:
type: string
channel_id:
type: string
webhook_url:
type: string
required:
- channel_name
- channel_id
additionalProperties: false
description: Channel for a 'Discord' issue trigger
IssueTriggerPaginatedResult:
type: object
properties:
pagination:
$ref: '#/components/schemas/SeekPagination'
count:
type: integer
models:
type: array
items:
$ref: '#/components/schemas/IssueTrigger'
additionalProperties: false
IssueTriggerSlackChannel:
type: object
properties:
channel_name:
type: string
required:
- channel_name
additionalProperties: false
description: Channel for a 'Slack' issue trigger
IssueTrigger:
type: object
properties:
id:
type: string
description: ID of the issue trigger
team_id:
type:
- string
- 'null'
description: ID of the project
name:
type:
- string
- 'null'
description: Optional unique name to use as reference when using the API
type:
$ref: '#/components/schemas/IssueType'
configs:
$ref: '#/components/schemas/IssueTriggerReference'
channels:
$ref: '#/components/schemas/IssueTriggerChannels'
disabled_at:
type:
- string
- 'null'
format: date-time
description: ISO timestamp for when the issue trigger was disabled
updated_at:
type: string
format: date-time
description: ISO timestamp for when the issue trigger was last updated
created_at:
type: string
format: date-time
description: ISO timestamp for when the issue trigger was created
deleted_at:
type:
- string
- 'null'
format: date-time
description: ISO timestamp for when the issue trigger was deleted
required:
- id
- type
- configs
- updated_at
- created_at
additionalProperties: false
OrderByDirection:
anyOf:
- enum:
- asc
- enum:
- desc
- enum:
- ASC
- enum:
- DESC
IssueTriggerRequestConfigs:
type: object
properties:
rejection_causes:
anyOf:
- type: string
enum:
- '*'
- type: array
items:
$ref: '#/components/schemas/RequestRejectionCause'
description: An array of rejection causes to match on, or '*' to match all rejection causes.
x-docs-force-simple-type: true
excluded_rejection_causes:
type: array
items:
$ref: '#/components/schemas/RequestRejectionCause'
description: Optional array of rejection causes to exclude. When specified, rejection_causes must be '*'. This allows matching all causes EXCEPT the specified ones.
x-docs-force-simple-type: true
sources:
anyOf:
- type: string
- type: array
items:
type: string
description: A pattern to match on the source name or array of source IDs. Use `*` as wildcard.
x-docs-force-simple-type: true
required:
- rejection_causes
- sources
additionalProperties: false
description: Configurations for a 'Request' issue trigger
IssueTriggerIntegrationChannel:
type: object
properties: {}
additionalProperties: false
description: Integration channel for an issue trigger
x-docs-type: object
IssueTriggerChannels:
type:
- object
- 'null'
properties:
slack:
$ref: '#/components/schemas/IssueTriggerSlackChannel'
microsoft_teams:
$ref: '#/components/schemas/IssueTriggerMicrosoftTeamsChannel'
discord:
$ref: '#/components/schemas/IssueTriggerDiscordChannel'
betteruptime:
$ref: '#/components/schemas/IssueTriggerBetterUptimeChannel'
pagerduty:
$ref: '#/components/schemas/IssueTriggerIntegrationChannel'
opsgenie:
$ref: '#/components/schemas/IssueTriggerIntegrationChannel'
email:
$ref: '#/components/schemas/IssueTriggerEmailChannel'
additionalProperties: false
description: Notification channels object for the specific channel type
IssueTriggerStrategy:
type: string
enum:
- first_attempt
- final_attempt
description: The strategy uses to open the issue
IssueType:
type: string
enum:
- delivery
- transformation
- backpressure
- request
description: Issue type
securitySchemes:
bearerAuth:
type: http
scheme: bearer
basicAuth:
type: http
scheme: basic