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

# Preview

> Synchronously preview the first 25 matches and the total estimated count for a set of account search filters, without creating an import or consuming credits.

Run the same filters as [`POST /accounts/search`](/api-reference/endpoints/accounts/search) and get back a synchronous **preview**: the total estimated account count plus the first **25** matching companies. Use it to validate filters and size an audience before kicking off the real search.

## Overview

Compared to `POST /accounts/search`, the preview:

* Does **not** create an import job.
* Does **not** call your webhook.
* Does **not** consume credits.
* Does **not** require `webhook_url`.

The body accepts the exact same filter parameters as the regular account search — see [Search accounts by filters](/api-reference/endpoints/accounts/search) for the full reference (`included_industries`, `excluded_industries`, `included_locations`, `excluded_locations`, `company_size`, `keyword`, `min_revenue`, `max_revenue`, `revenue_currency`, …). `webhook_url`, `name`, `limit`, and `streaming` are accepted but ignored: the response always contains up to 25 accounts.

## Rate Limits

* **1 request per second** per user/IP address.

## Response

`200 OK` — returns immediately with:

```json theme={null}
{
  "total_count": 4321,
  "preview": [
    {
      "company_name": "Pronto",
      "industry": "Technology, Information and Internet",
      "linkedin_id": "104885158",
      "linkedin_url": "https://www.linkedin.com/company/104885158"
    }
  ]
}
```

| Field         | Type             | Notes                                                                                   |
| ------------- | ---------------- | --------------------------------------------------------------------------------------- |
| `total_count` | integer          | Total estimated number of accounts matching the filters (not capped to 25).             |
| `preview`     | array of objects | Up to 25 matching accounts. Each entry contains the fields listed above when available. |

## Example

```json theme={null}
{
  "included_industries": ["6", "96"],
  "included_locations": ["103644278"],
  "company_size": ["51-200", "201-500"],
  "keyword": "saas"
}
```


## OpenAPI

````yaml POST /accounts/search/preview
openapi: 3.0.1
info:
  title: Pronto Accounts API
  description: Pronto Accounts API
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://app.prontohq.com/api/v2/
security:
  - defaultApiKey: []
paths:
  /accounts/search/preview:
    post:
      summary: Preview
      description: >-
        Run the same filters as `POST /accounts/search` and return a synchronous
        preview: the total estimated account count plus the first 25 matching
        companies. No `Import` is created, no webhook is called, and no credits
        are consumed.


        This is intended for UI previews, filter validation, and audience sizing
        before kicking off the real search. Unlike `POST /accounts/search`,
        **`webhook_url` is not required**.


        **Rate limit:** 1 request per second.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              description: >-
                Accepts the same filter object as `POST /accounts/search`
                (`included_industries`, `excluded_industries`,
                `included_locations`, `excluded_locations`, `company_size`,
                `keyword`, `min_revenue`, `max_revenue`, `revenue_currency`,
                etc.), including `live` (default `true`) to preview from
                Pronto's companies database instead of LinkedIn Sales Navigator.
                `webhook_url`, `name`, `limit`, and `streaming` are accepted but
                ignored — the response is always the first 25 results.
              additionalProperties: true
            example:
              included_industries:
                - '6'
                - '96'
              included_locations:
                - '103644278'
              company_size:
                - 51-200
                - 201-500
              keyword: saas
      responses:
        '200':
          description: Preview generated successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  total_count:
                    type: integer
                    description: >-
                      Estimated total number of accounts matching the filters
                      (not capped to 25).
                  preview:
                    type: array
                    description: Up to 25 matching accounts.
                    items:
                      type: object
                      properties:
                        company_name:
                          type: string
                          example: Pronto
                        industry:
                          type: string
                          example: Technology, Information and Internet
                        linkedin_id:
                          type: string
                          example: '104885158'
                        linkedin_url:
                          type: string
                          format: uri
                          example: https://www.linkedin.com/company/104885158
              example:
                total_count: 4321
                preview:
                  - company_name: Pronto
                    industry: Technology, Information and Internet
                    linkedin_id: '104885158'
                    linkedin_url: https://www.linkedin.com/company/104885158
        '400':
          description: Invalid filter shape (company size, location, revenue, etc.).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized — invalid API key or missing credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded (1 request per second).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      required:
        - error
        - message
      type: object
      properties:
        error:
          type: integer
          format: int32
        message:
          type: string
  securitySchemes:
    defaultApiKey:
      type: apiKey
      in: header
      description: Your API key
      name: X-API-KEY

````