Hookdeck · Capability
Hookdeck Admin REST API — Issues
Hookdeck Admin REST API — Issues. 5 operations. Lead operation: Retrieve issues. Self-contained Naftiko capability covering one business surface.
Hookdeck Admin REST API — Issues is a Naftiko capability published by Hookdeck, one of 29 capabilities the APIs.io network indexes for this provider. It bundles 5 operations across the GET, PUT, and DELETE methods rooted at /v1/issues.
The capability includes 3 read-only operations and 2 state-changing operations. Lead operation: Retrieve issues. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.
Tagged areas include Hookdeck and Issues.
What You Can Do
GET
Getissues
— Retrieve issues
/v1/issues
GET
Getissuecount
— Get the number of issues
/v1/issues/count
GET
Getissue
— Retrieve an issue
/v1/issues/{id}
PUT
Updateissue
— Update an issue
/v1/issues/{id}
DELETE
Dismississue
— Dismiss an issue
/v1/issues/{id}
MCP Tools
hookdeck-getissues
Retrieve issues
read-only
idempotent
hookdeck-getissuecount
Get the number of issues
read-only
idempotent
hookdeck-getissue
Retrieve an issue
read-only
idempotent
hookdeck-updateissue
Update an issue
idempotent
hookdeck-dismississue
Dismiss an issue
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Hookdeck Admin REST API — Issues
description: 'Hookdeck Admin REST API — Issues. 5 operations. Lead operation: Retrieve issues. Self-contained Naftiko capability covering one business surface.'
tags:
- Hookdeck
- Issues
created: '2026-05-20'
modified: '2026-05-20'
binds:
- namespace: env
keys:
HOOKDECK_API_KEY: HOOKDECK_API_KEY
capability:
consumes:
- type: http
namespace: hookdeck-issues
baseUri: https://api.hookdeck.com/2025-07-01
description: Hookdeck Admin REST API — Issues business capability. Self-contained, no shared references.
resources:
- name: issues
path: /issues
operations:
- name: getissues
method: GET
description: Retrieve issues
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: query
type: string
description: query parameter id.
- name: issue_trigger_id
in: query
type: string
description: query parameter issue_trigger_id.
- name: type
in: query
type: string
description: query parameter type.
- name: status
in: query
type: string
description: query parameter status.
- name: merged_with
in: query
type: string
description: query parameter merged_with.
- name: aggregation_keys
in: query
type: object
description: query parameter aggregation_keys.
- name: created_at
in: query
type: string
description: query parameter created_at.
- name: first_seen_at
in: query
type: string
description: query parameter first_seen_at.
- name: last_seen_at
in: query
type: string
description: query parameter last_seen_at.
- name: dismissed_at
in: query
type: string
description: query parameter dismissed_at.
- name: order_by
in: query
type: string
description: query parameter order_by.
- name: dir
in: query
type: string
description: query parameter dir.
- name: limit
in: query
type: integer
description: query parameter limit.
- name: next
in: query
type: string
description: query parameter next.
- name: prev
in: query
type: string
description: query parameter prev.
- name: issues-count
path: /issues/count
operations:
- name: getissuecount
method: GET
description: Get the number of issues
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: query
type: string
description: query parameter id.
- name: issue_trigger_id
in: query
type: string
description: query parameter issue_trigger_id.
- name: type
in: query
type: string
description: query parameter type.
- name: status
in: query
type: string
description: query parameter status.
- name: merged_with
in: query
type: string
description: query parameter merged_with.
- name: aggregation_keys
in: query
type: object
description: query parameter aggregation_keys.
- name: created_at
in: query
type: string
description: query parameter created_at.
- name: first_seen_at
in: query
type: string
description: query parameter first_seen_at.
- name: last_seen_at
in: query
type: string
description: query parameter last_seen_at.
- name: dismissed_at
in: query
type: string
description: query parameter dismissed_at.
- name: order_by
in: query
type: string
description: query parameter order_by.
- name: dir
in: query
type: string
description: query parameter dir.
- name: limit
in: query
type: integer
description: query parameter limit.
- name: next
in: query
type: string
description: query parameter next.
- name: prev
in: query
type: string
description: query parameter prev.
- name: issues-id
path: /issues/{id}
operations:
- name: getissue
method: GET
description: Retrieve an issue
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: path parameter id.
required: true
- name: updateissue
method: PUT
description: Update an issue
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: path parameter id.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: dismississue
method: DELETE
description: Dismiss an issue
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: path parameter id.
required: true
exposes:
- type: rest
namespace: hookdeck-issues-rest
port: 8080
description: REST adapter for Hookdeck Admin REST API — Issues. One resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/issues
name: issues
description: REST surface for issues.
operations:
- method: GET
name: getissues
description: Retrieve issues
call: hookdeck-issues.getissues
with:
id: rest.id
issue_trigger_id: rest.issue_trigger_id
type: rest.type
status: rest.status
merged_with: rest.merged_with
aggregation_keys: rest.aggregation_keys
created_at: rest.created_at
first_seen_at: rest.first_seen_at
last_seen_at: rest.last_seen_at
dismissed_at: rest.dismissed_at
order_by: rest.order_by
dir: rest.dir
limit: rest.limit
next: rest.next
prev: rest.prev
outputParameters:
- type: object
mapping: $.
- path: /v1/issues/count
name: issues-count
description: REST surface for issues-count.
operations:
- method: GET
name: getissuecount
description: Get the number of issues
call: hookdeck-issues.getissuecount
with:
id: rest.id
issue_trigger_id: rest.issue_trigger_id
type: rest.type
status: rest.status
merged_with: rest.merged_with
aggregation_keys: rest.aggregation_keys
created_at: rest.created_at
first_seen_at: rest.first_seen_at
last_seen_at: rest.last_seen_at
dismissed_at: rest.dismissed_at
order_by: rest.order_by
dir: rest.dir
limit: rest.limit
next: rest.next
prev: rest.prev
outputParameters:
- type: object
mapping: $.
- path: /v1/issues/{id}
name: issues-id
description: REST surface for issues-id.
operations:
- method: GET
name: getissue
description: Retrieve an issue
call: hookdeck-issues.getissue
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateissue
description: Update an issue
call: hookdeck-issues.updateissue
with:
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: dismississue
description: Dismiss an issue
call: hookdeck-issues.dismississue
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: hookdeck-issues-mcp
port: 9090
transport: http
description: MCP adapter for Hookdeck Admin REST API — Issues. One tool per consumed operation, routed inline through this capability's consumes block.
tools:
- name: hookdeck-getissues
description: Retrieve issues
hints:
readOnly: true
destructive: false
idempotent: true
call: hookdeck-issues.getissues
with:
id: tools.id
issue_trigger_id: tools.issue_trigger_id
type: tools.type
status: tools.status
merged_with: tools.merged_with
aggregation_keys: tools.aggregation_keys
created_at: tools.created_at
first_seen_at: tools.first_seen_at
last_seen_at: tools.last_seen_at
dismissed_at: tools.dismissed_at
order_by: tools.order_by
dir: tools.dir
limit: tools.limit
next: tools.next
prev: tools.prev
outputParameters:
- type: object
mapping: $.
- name: hookdeck-getissuecount
description: Get the number of issues
hints:
readOnly: true
destructive: false
idempotent: true
call: hookdeck-issues.getissuecount
with:
id: tools.id
issue_trigger_id: tools.issue_trigger_id
type: tools.type
status: tools.status
merged_with: tools.merged_with
aggregation_keys: tools.aggregation_keys
created_at: tools.created_at
first_seen_at: tools.first_seen_at
last_seen_at: tools.last_seen_at
dismissed_at: tools.dismissed_at
order_by: tools.order_by
dir: tools.dir
limit: tools.limit
next: tools.next
prev: tools.prev
outputParameters:
- type: object
mapping: $.
- name: hookdeck-getissue
description: Retrieve an issue
hints:
readOnly: true
destructive: false
idempotent: true
call: hookdeck-issues.getissue
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: hookdeck-updateissue
description: Update an issue
hints:
readOnly: false
destructive: false
idempotent: true
call: hookdeck-issues.updateissue
with:
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: hookdeck-dismississue
description: Dismiss an issue
hints:
readOnly: false
destructive: true
idempotent: true
call: hookdeck-issues.dismississue
with:
id: tools.id
outputParameters:
- type: object
mapping: $.