Hookdeck · Arazzo Workflow

Hookdeck Investigate Event Delivery Attempts

Version 1.0.0

Resolve an event, list its delivery attempts, then read the latest attempt body.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub WebhookEvent GatewaysGatewaysEventEvent InfrastructureEvent-DrivenMessagingQueuesRetriesTransformationObservabilityArazzoWorkflows

Provider

hookdeck

Workflows

investigate-event-attempts
Walk from an event to its attempts and the latest attempt's response.
Reads an event, lists its attempts, branches when there are none, and otherwise retrieves the most recent attempt to inspect the destination response.
3 steps inputs: eventId outputs: eventId, latestAttemptId, latestAttemptResponseStatus
1
readEvent
Retrieve the event to confirm it exists and capture its connection and attempt count.
2
listAttempts
List the delivery attempts for the event, most recent first.
3
readLatestAttempt
Retrieve the most recent attempt to inspect the destination response body and status.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Hookdeck Investigate Event Delivery Attempts
  summary: Resolve an event, list its delivery attempts, then read the latest attempt body.
  description: >-
    A debugging flow for understanding why an event delivered the way it did.
    The workflow reads a single event, lists all of its delivery attempts,
    branches on whether any attempts exist, and reads the most recent attempt to
    surface the destination response body. Every step spells out its request
    inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-4270.80
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-4270.80
      capability_name: Webhook & Event Subscription Management
      spec: hookdeck-events-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: attemptsApi
  url: ../openapi/hookdeck-attempts-api-openapi.yml
  type: openapi
- name: eventsApi
  url: ../openapi/hookdeck-events-api-openapi.yml
  type: openapi
workflows:
- workflowId: investigate-event-attempts
  summary: Walk from an event to its attempts and the latest attempt's response.
  description: >-
    Reads an event, lists its attempts, branches when there are none, and
    otherwise retrieves the most recent attempt to inspect the destination
    response.
  inputs:
    type: object
    required:
    - eventId
    properties:
      eventId:
        type: string
        description: The id of the event whose attempts should be inspected.
  steps:
  - stepId: readEvent
    description: >-
      Retrieve the event to confirm it exists and capture its connection and
      attempt count.
    operationId: getEvent
    parameters:
    - name: id
      in: path
      value: $inputs.eventId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      eventId: $response.body#/id
      attempts: $response.body#/attempts
  - stepId: listAttempts
    description: >-
      List the delivery attempts for the event, most recent first.
    operationId: getAttempts
    parameters:
    - name: event_id
      in: query
      value: $steps.readEvent.outputs.eventId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      latestAttemptId: $response.body#/models/0/id
    onSuccess:
    - name: hasAttempts
      type: goto
      stepId: readLatestAttempt
      criteria:
      - context: $response.body
        condition: $.models.length > 0
        type: jsonpath
    - name: noAttempts
      type: end
      criteria:
      - context: $response.body
        condition: $.models.length == 0
        type: jsonpath
  - stepId: readLatestAttempt
    description: >-
      Retrieve the most recent attempt to inspect the destination response body
      and status.
    operationId: getAttempt
    parameters:
    - name: id
      in: path
      value: $steps.listAttempts.outputs.latestAttemptId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      attemptId: $response.body#/id
      responseStatus: $response.body#/response_status
  outputs:
    eventId: $steps.readEvent.outputs.eventId
    latestAttemptId: $steps.readLatestAttempt.outputs.attemptId
    latestAttemptResponseStatus: $steps.readLatestAttempt.outputs.responseStatus

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/hookdeck-investigate-event-attempts-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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.