naftiko: 1.0.0-alpha2 info: label: Hookdeck Admin REST API — Events description: 'Hookdeck Admin REST API — Events. 6 operations. Lead operation: Retrieve events. Self-contained Naftiko capability covering one business surface.' tags: - Hookdeck - Events created: '2026-05-20' modified: '2026-05-20' binds: - namespace: env keys: HOOKDECK_API_KEY: HOOKDECK_API_KEY capability: consumes: - type: http namespace: hookdeck-events baseUri: https://api.hookdeck.com/2025-07-01 description: Hookdeck Admin REST API — Events business capability. Self-contained, no shared references. resources: - name: events path: /events operations: - name: getevents method: GET description: Retrieve events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: query type: string description: query parameter id. - name: status in: query type: string description: query parameter status. - name: webhook_id in: query type: string description: query parameter webhook_id. - name: destination_id in: query type: string description: query parameter destination_id. - name: source_id in: query type: string description: query parameter source_id. - name: attempts in: query type: string description: query parameter attempts. - name: response_status in: query type: string description: query parameter response_status. - name: successful_at in: query type: string description: query parameter successful_at. - name: created_at in: query type: string description: query parameter created_at. - name: error_code in: query type: string description: query parameter error_code. - name: cli_id in: query type: string description: query parameter cli_id. - name: last_attempt_at in: query type: string description: query parameter last_attempt_at. - name: next_attempt_at in: query type: string description: query parameter next_attempt_at. - name: search_term in: query type: string description: query parameter search_term. - name: headers in: query type: string description: query parameter headers. - name: body in: query type: string description: query parameter body. - name: parsed_query in: query type: string description: query parameter parsed_query. - name: path in: query type: string description: query parameter path. - name: cli_user_id in: query type: string description: query parameter cli_user_id. - name: issue_id in: query type: string description: query parameter issue_id. - name: event_data_id in: query type: string description: query parameter event_data_id. - name: bulk_retry_id in: query type: string description: query parameter bulk_retry_id. - name: include in: query type: string description: query parameter include. - name: progressive in: query type: string description: query parameter progressive. - 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: events-id path: /events/{id} operations: - name: getevent method: GET description: Retrieve an event outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: path parameter id. required: true - name: events-id-raw-body path: /events/{id}/raw_body operations: - name: geteventrawbody method: GET description: Get a event raw body data outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: path parameter id. required: true - name: events-id-retry path: /events/{id}/retry operations: - name: retryevent method: POST description: Retry an event 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: events-id-cancel path: /events/{id}/cancel operations: - name: cancelevent method: PUT description: Cancel an event 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: false - name: events-id-mute path: /events/{id}/mute operations: - name: canceleventmute method: PUT description: Cancel an event 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: false exposes: - type: rest namespace: hookdeck-events-rest port: 8080 description: REST adapter for Hookdeck Admin REST API — Events. One resource per consumed operation, prefixed with /v1. resources: - path: /v1/events name: events description: REST surface for events. operations: - method: GET name: getevents description: Retrieve events call: hookdeck-events.getevents with: id: rest.id status: rest.status webhook_id: rest.webhook_id destination_id: rest.destination_id source_id: rest.source_id attempts: rest.attempts response_status: rest.response_status successful_at: rest.successful_at created_at: rest.created_at error_code: rest.error_code cli_id: rest.cli_id last_attempt_at: rest.last_attempt_at next_attempt_at: rest.next_attempt_at search_term: rest.search_term headers: rest.headers body: rest.body parsed_query: rest.parsed_query path: rest.path cli_user_id: rest.cli_user_id issue_id: rest.issue_id event_data_id: rest.event_data_id bulk_retry_id: rest.bulk_retry_id include: rest.include progressive: rest.progressive order_by: rest.order_by dir: rest.dir limit: rest.limit next: rest.next prev: rest.prev outputParameters: - type: object mapping: $. - path: /v1/events/{id} name: events-id description: REST surface for events-id. operations: - method: GET name: getevent description: Retrieve an event call: hookdeck-events.getevent with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/events/{id}/raw_body name: events-id-raw-body description: REST surface for events-id-raw-body. operations: - method: GET name: geteventrawbody description: Get a event raw body data call: hookdeck-events.geteventrawbody with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/events/{id}/retry name: events-id-retry description: REST surface for events-id-retry. operations: - method: POST name: retryevent description: Retry an event call: hookdeck-events.retryevent with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/events/{id}/cancel name: events-id-cancel description: REST surface for events-id-cancel. operations: - method: PUT name: cancelevent description: Cancel an event call: hookdeck-events.cancelevent with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/events/{id}/mute name: events-id-mute description: REST surface for events-id-mute. operations: - method: PUT name: canceleventmute description: Cancel an event call: hookdeck-events.canceleventmute with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: hookdeck-events-mcp port: 9090 transport: http description: MCP adapter for Hookdeck Admin REST API — Events. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: hookdeck-getevents description: Retrieve events hints: readOnly: true destructive: false idempotent: true call: hookdeck-events.getevents with: id: tools.id status: tools.status webhook_id: tools.webhook_id destination_id: tools.destination_id source_id: tools.source_id attempts: tools.attempts response_status: tools.response_status successful_at: tools.successful_at created_at: tools.created_at error_code: tools.error_code cli_id: tools.cli_id last_attempt_at: tools.last_attempt_at next_attempt_at: tools.next_attempt_at search_term: tools.search_term headers: tools.headers body: tools.body parsed_query: tools.parsed_query path: tools.path cli_user_id: tools.cli_user_id issue_id: tools.issue_id event_data_id: tools.event_data_id bulk_retry_id: tools.bulk_retry_id include: tools.include progressive: tools.progressive order_by: tools.order_by dir: tools.dir limit: tools.limit next: tools.next prev: tools.prev outputParameters: - type: object mapping: $. - name: hookdeck-getevent description: Retrieve an event hints: readOnly: true destructive: false idempotent: true call: hookdeck-events.getevent with: id: tools.id outputParameters: - type: object mapping: $. - name: hookdeck-geteventrawbody description: Get a event raw body data hints: readOnly: true destructive: false idempotent: true call: hookdeck-events.geteventrawbody with: id: tools.id outputParameters: - type: object mapping: $. - name: hookdeck-retryevent description: Retry an event hints: readOnly: false destructive: false idempotent: false call: hookdeck-events.retryevent with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hookdeck-cancelevent description: Cancel an event hints: readOnly: false destructive: false idempotent: true call: hookdeck-events.cancelevent with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: hookdeck-canceleventmute description: Cancel an event hints: readOnly: false destructive: false idempotent: true call: hookdeck-events.canceleventmute with: id: tools.id body: tools.body outputParameters: - type: object mapping: $.