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

# Get delivery history

> Returns a paginated delivery log for a given resource, ordered by timestamp descending. 

Each record shows the webhook dispatched, the HTTP status code returned, delivery outcome, and any error or warning messages. Use this to debug failed deliveries or audit dispatch activity.




## OpenAPI

````yaml catch-all-api get /catchAll/webhook-history
openapi: 3.1.0
info:
  title: NewsCatcher CatchAll API
  version: 1.6.4
  description: >
    CatchAll is a web search API that generates unique datasets that don't exist
    anywhere else on the web. Built on NewsCatcher's proprietary real-world
    event index, it delivers state-of-the-art recall—finding all relevant
    events, not just top results.


    ### Authentication


    All endpoints except /health and /version require `x-api-key` header. If the
    key is invalid or missing, the API returns the `403 Forbidden` error.


    ### Job workflow


    1. (Optional) Get suggestions via /catchAll/initialize

    2. Submit a query via /catchAll/submit with optional date ranges and custom
    validators/enrichments

    3. Poll /catchAll/status/{job_id} until completed (10-15 minutes)

    4. Retrieve results via /catchAll/pull/{job_id}


    ### Monitor workflow


    1. Create successful job via /catchAll/submit

    2. Create monitor via /catchAll/monitors/create with schedule

    3. Retrieve aggregated results via /catchAll/monitors/pull/{monitor_id}


    ### Webhook workflow


    1. Create a webhook via `POST /catchAll/webhooks`

    2. Attach it to a job or monitor via `POST
    /catchAll/webhooks/{webhook_id}/resources`,
       or pass `webhook_ids` at job or monitor creation time
    3. Receive HTTP notifications at the configured URL when each job completes


    ### Company search workflow


    1. Create a dataset via `POST /catchAll/datasets/` or `POST
    /catchAll/datasets/upload`

    2. Wait for the dataset `latest_status` to reach `ready`

    3. Submit a job with `connected_dataset_ids` pointing to your dataset

    4. Retrieve results — each record includes a `connected_entities` array
       with relevance scores per matched company

    ### Important notes


    **Dynamic schemas**: Response schemas are generated dynamically by LLMs.
    Field names in the `enrichment` object may vary and are not deterministic
    across jobs unless explicitly specified.
  contact:
    name: NewsCatcher
    url: https://newscatcherapi.com
    email: support@newscatcherapi.com
servers:
  - url: https://catchall.newscatcherapi.com
    description: Production server
security:
  - ApiKeyAuth: []
tags:
  - name: Jobs
    description: Operations to create, monitor, and retrieve job results.
    externalDocs:
      description: Learn about job lifecycle and status tracking
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/get-started/quickstart
  - name: Monitors
    description: Operations to create, operate and retrieve monitor results.
    externalDocs:
      description: >-
        Automate recurring queries with scheduled jobs and webhook
        notifications.
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/monitors
  - name: Webhooks
    description: >
      Operations to create and manage reusable webhook endpoints.


      A webhook is a named HTTP endpoint that receives a POST notification

      when a job or monitor completes. Create webhooks once at the organization

      level and attach them to any number of jobs or monitors via `webhook_ids`.

      Supports Slack, Microsoft Teams, and generic HTTP targets with
      configurable

      delivery modes, authentication, and headers.
    externalDocs:
      description: Learn about centralized webhooks and notification setup
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/webhooks
  - name: Entities
    description: >
      Operations to create, update, and delete company entities.


      Entities are the building blocks of Company Watchlist. Each entity
      represents

      a company (or person) you want to track. Add identifying information such
      as

      domain, alternative names, and key persons to improve matching quality.
    externalDocs:
      description: Learn about Company Watchlist and entities
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/company-search
  - name: Datasets
    description: >
      Operations to create and manage datasets of entities.


      A dataset is a named collection of entities — think of it as a watchlist
      or

      portfolio. Connect a dataset to a job via `connected_dataset_ids` to
      activate

      Company Watchlist. Datasets can be reused across multiple jobs and
      monitors.
    externalDocs:
      description: Learn about datasets and Company Watchlist
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/company-search
  - name: Projects
    description: |
      Operations to create, organize, and manage projects.

      A project is a named container for jobs, monitors, and datasets. Group
      related resources by use case, team, or client, and share them with
      teammates. Resources can be assigned at creation time or post-hoc.
    externalDocs:
      description: Learn about projects and resource organization
      url: >-
        https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/projects
  - name: Meta
    description: Operations to check API health and version.
externalDocs:
  description: Find out more about NewsCatcher CatchAll API
  url: https://www.newscatcherapi.com/docs/web-search-api/get-started/introduction
paths:
  /catchAll/webhook-history:
    get:
      tags:
        - Webhooks
      summary: Get delivery history
      description: >
        Returns a paginated delivery log for a given resource, ordered by
        timestamp descending. 


        Each record shows the webhook dispatched, the HTTP status code returned,
        delivery outcome, and any error or warning messages. Use this to debug
        failed deliveries or audit dispatch activity.
      operationId: getWebhookDeliveryHistory
      parameters:
        - name: resource_type
          in: query
          required: true
          schema:
            $ref: '#/components/schemas/MappableResourceType'
          description: Type of the resource to retrieve delivery history for.
        - name: resource_id
          in: query
          required: true
          schema:
            type: string
            format: uuid
          description: Identifier of the resource to retrieve delivery history for.
          example: 3fec5b07-8786-46d7-9486-d43ff67eccd4
        - $ref: '#/components/parameters/Page'
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 500
          description: Number of records per page.
      responses:
        '200':
          $ref: '#/components/responses/DeliveryHistoryResponse'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  schemas:
    MappableResourceType:
      type: string
      enum:
        - job
        - monitor
        - monitor_group
      description: Resource types that can be assigned to a webhook.
    DeliveryHistoryResponseDto:
      type: object
      required:
        - resource_type
        - resource_id
        - total
        - page
        - page_size
        - total_pages
        - items
      properties:
        resource_type:
          $ref: '#/components/schemas/MappableResourceType'
          description: Type of the queried resource.
        resource_id:
          type: string
          format: uuid
          description: Identifier of the queried resource.
          example: 3fec5b07-8786-46d7-9486-d43ff67eccd4
        total:
          type: integer
          description: Total number of delivery records for this resource.
          example: 42
        page:
          type: integer
          description: Current page number.
          example: 1
        page_size:
          type: integer
          description: Number of records per page.
          example: 50
        total_pages:
          type: integer
          description: Total number of pages available.
          example: 1
        items:
          type: array
          items:
            $ref: '#/components/schemas/DeliveryHistoryItemDto'
          description: Delivery records on this page, ordered by timestamp descending.
    Error:
      type: object
      properties:
        detail:
          type: string
          description: Error message.
          example: Invalid API key
    ValidationErrorResponse:
      type: object
      properties:
        detail:
          type: array
          items:
            $ref: '#/components/schemas/ValidationErrorDetail'
    DeliveryHistoryItemDto:
      type: object
      required:
        - id
        - webhook_id
        - resource_type
        - resource_id
        - status_code
        - attempt_number
        - timestamp
        - delivery_status
      properties:
        id:
          type: integer
          description: Delivery record identifier.
          example: 42
        webhook_id:
          type: string
          format: uuid
          description: Identifier of the webhook that was dispatched.
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        resource_type:
          $ref: '#/components/schemas/MappableResourceType'
          description: Type of the resource that triggered the delivery.
        resource_id:
          type: string
          format: uuid
          description: Identifier of the resource that triggered the delivery.
          example: 3fec5b07-8786-46d7-9486-d43ff67eccd4
        additional_info:
          type: object
          description: >-
            Extra context about the triggering event, such as job query or
            monitor schedule.
          example: {}
        status_code:
          type: integer
          description: HTTP response code returned by the webhook endpoint.
          example: 200
        attempt_number:
          type: integer
          description: Delivery attempt number. 1 indicates the first attempt.
          example: 1
        timestamp:
          type: string
          format: date-time
          description: Time of the delivery attempt in ISO 8601 format with UTC timezone.
          example: '2026-05-18T10:00:00Z'
        delivery_status:
          $ref: '#/components/schemas/DeliveryStatus'
          description: Outcome of this delivery attempt.
        error_message:
          type:
            - string
            - 'null'
          description: Error detail when `delivery_status` is `FAILED`. Null on success.
          example: null
        warning_message:
          type:
            - string
            - 'null'
          description: >-
            Non-fatal warning, such as payload truncation notices. Null when no
            warnings occurred.
          example: null
    ValidationErrorDetail:
      type: object
      properties:
        loc:
          type: array
          items:
            oneOf:
              - type: string
              - type: integer
          description: Location of the validation error
        msg:
          type: string
          description: Error message
        type:
          type: string
          description: Error type
    DeliveryStatus:
      type: string
      enum:
        - SUCCESS
        - FAILED
      description: Outcome of a webhook delivery attempt.
  parameters:
    Page:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 1
        minimum: 1
      description: |
        Page number to retrieve.
  responses:
    DeliveryHistoryResponse:
      description: Webhook delivery history retrieved successfully.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DeliveryHistoryResponseDto'
          example:
            resource_type: monitor
            resource_id: 3fec5b07-8786-46d7-9486-d43ff67eccd4
            total: 2
            page: 1
            page_size: 50
            total_pages: 1
            items:
              - id: 42
                webhook_id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                resource_type: monitor
                resource_id: 3fec5b07-8786-46d7-9486-d43ff67eccd4
                additional_info: {}
                status_code: 200
                attempt_number: 1
                timestamp: '2026-05-18T10:00:00Z'
                delivery_status: SUCCESS
                error_message: null
                warning_message: null
              - id: 41
                webhook_id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                resource_type: monitor
                resource_id: 3fec5b07-8786-46d7-9486-d43ff67eccd4
                additional_info: {}
                status_code: 503
                attempt_number: 1
                timestamp: '2026-05-17T10:00:00Z'
                delivery_status: FAILED
                error_message: Service unavailable
                warning_message: null
    ForbiddenError:
      description: Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFoundError:
      description: Job/monitor not found or results not available
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    ValidationError:
      description: Validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidationErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication.

````