> ## 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.

# BounceBan: Export Bulk Results

> Export a bulk email verification task's results to a downloadable CSV file link. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Export a bulk email verification task's results to a downloadable CSV file link.

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

## 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(
  'bounceban_export_bulk_results',
  {
    "id": "id_123"
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute bounceban_export_bulk_results --input '{
  "id": "id_123"
}' --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": {
    "result": "ok",
    "download_url": "https://example.com"
  }
}
```

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

## Input reference

You can use this API to export selected or all emails to an .csv file. If the request is successful, a downloadable public link will be returned. For security reasons, the link will expire after 4 hours of generation as it's publicly available. You can always request a new file once the link expires. However, as the results for bulk email verification are available for only 90 days after verification, be sure to generate the file within the 90 days period. The endpoint is designed to export verified results only after the entire task has been completed. An error will be returned if the task is still in progress or incomplete.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.id` | `string` | Yes | — | (Required) The unique identifier of a completed bulk email verification task. Generating the download link usually takes a few seconds. For larger tasks, the process may take longer: 100,000 emails , approximately 30 second. 400,000 emails , approximately 2 minutes. If the download link is unavailable after your initial request, wait a few seconds and try again. To prevent excessive requests, limit attempts for the same export to 15 requests within a 15-minute period . |
| `payload.keep_all_rows` | `boolean` | No | — | (Optional) When set to `true`, all rows from the source .CSV file, including those without an email address, will be included in the downloaded .CSV file. Email verification results will not be provided for emails that do not meet your specified filters. Please note that this feature only applies to tasks created through the [/v1/verify/bulk/file](#tag/Bulk-verification/paths/~1v1~1verify~1bulk~1file/post) endpoint. Default value is `false`. |
| `payload.criteria` | `object` | No | — | Specifies emails to retrieve based on verification state (`deliverable`, `undeliverable `, `risky`, or `unknown`) and attributes. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "You can use this API to export selected or all emails to an .csv file. If the request is successful, a downloadable public link will be returned. For security reasons, the link will expire after 4 hours of generation as it's publicly available. You can always request a new file once the link expires. However, as the results for bulk email verification are available for only 90 days after verification, be sure to generate the file within the 90 days period. The endpoint is designed to export verified results only after the entire task has been completed. An error will be returned if the task is still in progress or incomplete.",
    "properties": {
      "id": {
        "type": "string",
        "description": "(Required) The unique identifier of a completed bulk email verification task. Generating the download link usually takes a few seconds. For larger tasks, the process may take longer: 100,000 emails , approximately 30 second; 400,000 emails , approximately 2 minutes. If the download link is unavailable after your initial request, wait a few seconds and try again. To prevent excessive requests, limit attempts for the same export to 15 requests within a 15-minute period ."
      },
      "keep_all_rows": {
        "type": "boolean",
        "description": "(Optional) When set to `true`, all rows from the source .CSV file, including those without an email address, will be included in the downloaded .CSV file. Email verification results will not be provided for emails that do not meet your specified filters. Please note that this feature only applies to tasks created through the [/v1/verify/bulk/file](#tag/Bulk-verification/paths/~1v1~1verify~1bulk~1file/post) endpoint. Default value is `false`."
      },
      "criteria": {
        "type": "object",
        "description": "Specifies emails to retrieve based on verification state (`deliverable`, `undeliverable `, `risky`, or `unknown`) and attributes.",
        "properties": {
          "free": {
            "type": "boolean",
            "description": "Whether the email is a free email.",
            "default": true
          },
          "role": {
            "type": "boolean",
            "description": "Whether the email is role based.",
            "default": true
          },
          "accept_all": {
            "type": "boolean",
            "description": "Whether the email is accept-all.",
            "default": true
          },
          "disposable": {
            "type": "boolean",
            "description": "Whether the email is disposable.",
            "default": false
          },
          "deliverable": {
            "type": "boolean",
            "description": "Whether the email is deliverable.",
            "default": true
          },
          "risky": {
            "type": "boolean",
            "description": "Whether the email is risky.",
            "default": false
          },
          "risky_score": {
            "type": "integer",
            "description": "The minimum score a email needs to meet in order to be included in the export. Only effective if `risky` is `true`.",
            "default": "50",
            "minimum": 0,
            "maximum": 100
          },
          "undeliverable": {
            "type": "boolean",
            "description": "Whether the email is undeliverable.",
            "default": false
          },
          "unknown": {
            "type": "boolean",
            "description": "Whether the email is unknown.",
            "default": false
          }
        },
        "additionalProperties": false
      }
    },
    "required": [
      "id"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.result` | `"ok" \| "err"` | No | — | > `ok` Indicates the request is successful. > `err` The bulk task has not finished yet, please try again later. Allowed: `ok`, `err`. |
| `result.data.download_url` | `string` | No | — | The URL for the .csv file. The link will expire after 4 hours of generation. |
| `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": {
          "result": {
            "type": "string",
            "description": "> `ok` Indicates the request is successful. > `err` The bulk task has not finished yet, please try again later.",
            "enum": [
              "ok",
              "err"
            ]
          },
          "download_url": {
            "type": "string",
            "description": "The URL for the .csv file. The link will expire after 4 hours of generation."
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [BounceBan provider guide](https://deepline.com/docs/providers/bounceban/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.