> ## Documentation Index
> Fetch the complete documentation index at: https://www.bolna.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Resend Execution Webhook API

> Send a finished execution's webhook again, to the workflow's current webhook URL, with the payload it originally carried.



## OpenAPI

````yaml POST /workflow-executions/{execution_id}/webhook:resend
openapi: 3.1.0
info:
  title: Bolna API
  description: >-
    Use and leverage Bolna Voice AI using APIs through HTTP requests from any
    language in your applications and workflows.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.bolna.ai
    description: Production server
security:
  - bearerAuth: []
paths:
  /workflow-executions/{execution_id}/webhook:resend:
    post:
      description: >
        Sends a finished execution's webhook again, to the workflow's current
        webhook URL and headers.

        Use it to recover a webhook your server missed, or to redeliver after
        fixing the destination.


        The payload is the one originally sent, `occurred_at` included, so a
        handler that keys on

        `execution_id` treats it as a redelivery. The request is queued and
        delivered the same way as

        the original; the response confirms it was queued, not that your server
        accepted it.
      parameters:
        - in: path
          name: execution_id
          required: true
          schema:
            type: string
          description: The `execution_id` whose webhook to resend
      responses:
        '202':
          description: The webhook was queued for delivery
          content:
            application/json:
              schema:
                type: object
                properties:
                  execution_id:
                    type: string
                    description: The execution whose webhook was queued.
                  webhook_url:
                    type: string
                    description: The destination it will be sent to.
                required:
                  - execution_id
                  - webhook_url
        '404':
          description: Execution not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowError'
        '409':
          description: >-
            The execution hasn't finished yet, or its workflow has no webhook
            configured
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowError'
        '422':
          description: >-
            The webhook is too large to queue (`payload_too_large`). Retrying
            fails the same way.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowError'
        '502':
          description: >-
            The webhook could not be queued. Nothing was sent, so it is safe to
            retry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowError'
components:
  schemas:
    WorkflowError:
      type: object
      description: >-
        Error envelope returned by every workflow endpoint. `detail.code` is a
        stable machine-readable code; extra keys (such as `current_revision` on
        `revision_conflict`, `execution_id` on `duplicate_run`, or `issues` on
        `invalid_definition`) ride alongside it.
      required:
        - detail
      properties:
        detail:
          type: object
          additionalProperties: true
          required:
            - code
            - message
          properties:
            code:
              type: string
              description: Machine-readable error code.
              example: revision_conflict
            message:
              type: string
              description: Human-readable explanation.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````