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

# List workflow executions

> **Endpoint:** `v1/workflows/{id}/executions`

List all executions for a specific workflow. Supports filtering by status and pagination. Returns up to 50 executions per page.




## OpenAPI

````yaml api-reference/openapi.yml get /workflows/{id}/executions
openapi: 3.1.0
info:
  title: Send Email API
  description: >
    Send transactional emails through MailDiver.


    ### Base URL

    All API endpoints are prefixed with `api.` subdomain:

    ```

    https://api.maildiver.com

    ```


    For the self-hosted version, if your domain is `example.com`:

    ```

    https://api.example.com

    ```


    ### Endpoint

    ```

    v1/emails

    ```


    ### Authentication

    All API requests require authentication using your API key in the
    Authorization header:

    ```

    Authorization: Bearer your-api-key

    ```
  version: 1.0.0
  license:
    name: MIT
servers:
  - url: https://api.maildiver.com/v1
    description: Production server
    variables:
      domain:
        default: yourdomain.com
        description: Your domain (without the api. prefix)
security:
  - bearerAuth: []
paths:
  /workflows/{id}/executions:
    get:
      tags:
        - Automation Execution
      summary: List workflow executions
      description: >
        **Endpoint:** `v1/workflows/{id}/executions`


        List all executions for a specific workflow. Supports filtering by
        status and pagination. Returns up to 50 executions per page.
      operationId: listWorkflowExecutions
      parameters:
        - name: id
          in: path
          required: true
          description: Unique identifier of the workflow
          schema:
            type: string
          example: 0199f234-d327-7cd8-9dc5-4fd8e5e249df
        - name: cursor
          in: query
          required: false
          description: >
            Pagination cursor for fetching the next page of results. This is a
            base64-encoded string returned from the previous response.
          schema:
            type: string
            nullable: true
          example: >-
            eyJQSyI6IkFXRiMwMTk1YTkyNy1iNzA2LTcyNWEtOTRkZC0zNzI3NzBkOTIwZjIiLCJTSyI6IkFFWCMwMTk1YzQxMyIsIkdTSTFQSyI6IkFFWCNBV0YjMDE5OWYyMzQiLCJHU0kxU0siOiJBRVgjQ09NUExFVEVEIzAxOTVjNDEzIn0=
        - name: status
          in: query
          required: false
          description: Filter executions by status
          schema:
            type: string
            enum:
              - IN_PROGRESS
              - WAITING
              - COMPLETED
              - FAILED
              - CANCELLED
          example: COMPLETED
      responses:
        '200':
          description: OK
          content:
            application/json:
              examples:
                success:
                  summary: Success response
                  value:
                    executions:
                      - execution_id: 0195c9e3-5067-741d-be87-a4f75ef93372
                        workflow_id: 0199f234-d327-7cd8-9dc5-4fd8e5e249df
                        workspace_id: 0195a927-b706-725a-94dd-372770d920f2
                        version_used: 1
                        status: COMPLETED
                        current_step_id: step_send_email
                        email: user@example.com
                        step_count: 3
                        created_at: 1742843423033
                        updated_at: 1742843424100
                        completed_at: 1742843424147
                        error: null
                        cancellation_reason: null
                      - execution_id: 0195c413-3fe1-779d-804e-f5f9bd8cd523
                        workflow_id: 0199f234-d327-7cd8-9dc5-4fd8e5e249df
                        workspace_id: 0195a927-b706-725a-94dd-372770d920f2
                        version_used: 1
                        status: WAITING
                        current_step_id: step_wait
                        email: customer@example.com
                        step_count: 2
                        created_at: 1742751354368
                        updated_at: 1742751354400
                        completed_at: null
                        error: null
                        cancellation_reason: null
                        wait_until: 1742837754368
                    count: 2
                    cursor: null
        '403':
          description: Forbidden (API key is missing or invalid)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Internal server error
          content:
            application/json:
              examples:
                serverError:
                  summary: Failed to list executions
                  value:
                    error: Failed to list executions
                    details: Error details
components:
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: Error description
      description: |
        Error response with message.

        ### Common Errors

        #### 400 Bad Request
        Validation errors return only the error message:
        ```json
        {
          "message": "from field is required"
        }
        ```

        Common validation messages:
        - `"from field is required"`
        - `"to field is required"`
        - `"subject field is required"`
        - `"html content size (42MB) exceeds maximum of 40MB"`
        - `"Too many recipients: 51. Maximum allowed is 50"`
        - `"Invalid email format in from field"`
        - `"template_id cannot be used together with html"`

        #### 403 Forbidden
        Authentication errors include both message and code:
        ```json
        {
          "message": "Invalid API key",
          "code": "invalid_api_key"
        }
        ```
        ```json
        {
          "message": "Invalid authorization header",
          "code": "invalid_authorization_header"
        }
        ```

        #### 404 Not Found
        ```json
        {
          "message": "Template 'welcome-email' not found"
        }
        ```
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key with format "Bearer {your-api-key}"

````