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

# ZeroBounce: Batch Validate

> Validate (verify) up to 100 email addresses in one call with the same per-email billing as single validation. Includes SDK V2 examples, schemas, and cost.

Validate (verify) up to 100 email addresses in one call with the same per-email billing as single validation.

> [!NOTE]
>
> Tool ID: `zerobounce_batch_validate`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'zerobounce_batch_validate',
  {
    "email_batch": [
      {
        "email_address": "jane.doe@example.com"
      }
    ]
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute zerobounce_batch_validate --input '{
  "email_batch": [
    {
      "email_address": "jane.doe@example.com"
    }
  ]
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "email_batch": [
      {
        "address": "example",
        "status": "example",
        "sub_status": "example"
      }
    ],
    "errors": [
      {}
    ]
  }
}
```

Use `deepline describe zerobounce_batch_validate --json` for the latest machine-readable contract.

## Input reference

Validate a batch of 1-100 email addresses through the ZeroBounce bulk validation transport.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.email_batch` | `array` | Yes | — | Batch of 1-100 email records for ZeroBounce real-time batch validation. Minimum items: 1. Maximum items: 100. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Validate a batch of 1-100 email addresses through the ZeroBounce bulk validation transport.",
    "properties": {
      "email_batch": {
        "type": "array",
        "description": "Batch of 1-100 email records for ZeroBounce real-time batch validation.",
        "minItems": 1,
        "maxItems": 100,
        "items": {
          "type": "object",
          "properties": {
            "email_address": {
              "type": "string",
              "description": "Email address to validate."
            },
            "ip_address": {
              "type": "string",
              "description": "Optional signup IP address for this email."
            }
          },
          "required": [
            "email_address"
          ],
          "additionalProperties": false
        }
      }
    },
    "required": [
      "email_batch"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.email_batch` | `array` | No | — | — |
| `result.data.email_batch[].address` | `string` | No | — | — |
| `result.data.email_batch[].status` | `string` | No | — | — |
| `result.data.email_batch[].sub_status` | `string \| null` | No | — | — |
| `result.data.email_batch[].free_email` | `boolean \| string \| null` | No | — | — |
| `result.data.email_batch[].did_you_mean` | `string \| null` | No | — | — |
| `result.data.email_batch[].account` | `string \| null` | No | — | — |
| `result.data.email_batch[].domain` | `string \| null` | No | — | — |
| `result.data.email_batch[].domain_age_days` | `string \| null` | No | — | — |
| `result.data.email_batch[].smtp_provider` | `string \| null` | No | — | — |
| `result.data.email_batch[].mx_found` | `string \| boolean \| null` | No | — | — |
| `result.data.email_batch[].mx_record` | `string \| null` | No | — | — |
| `result.data.email_batch[].firstname` | `string \| null` | No | — | — |
| `result.data.email_batch[].lastname` | `string \| null` | No | — | — |
| `result.data.email_batch[].gender` | `string \| null` | No | — | — |
| `result.data.email_batch[].country` | `string \| null` | No | — | — |
| `result.data.email_batch[].region` | `string \| null` | No | — | — |
| `result.data.email_batch[].city` | `string \| null` | No | — | — |
| `result.data.email_batch[].zipcode` | `string \| null` | No | — | — |
| `result.data.email_batch[].processed_at` | `string \| null` | No | — | — |
| `result.data.errors` | `array` | No | — | — |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "email_batch": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "sub_status": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "free_email": {
                  "type": [
                    "boolean",
                    "string",
                    "null"
                  ]
                },
                "did_you_mean": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "account": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "domain": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "domain_age_days": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "smtp_provider": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "mx_found": {
                  "type": [
                    "string",
                    "boolean",
                    "null"
                  ]
                },
                "mx_record": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "firstname": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "lastname": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "gender": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "country": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "region": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "city": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "zipcode": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "processed_at": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "additionalProperties": false
            }
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            }
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `per_result` (per result).
* Estimated Deepline credits: `0.28` per pricing unit.

## Related documentation

* [ZeroBounce provider guide](https://deepline.com/docs/providers/zerobounce/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.