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

# Icypeas

> Connect Icypeas to your Atako agents — 4 read and 3 write actions.

Let your agents find and verify professional e-mail addresses with Icypeas: look up a person's e-mail from a name and a company, verify an address, scan a domain for role-based addresses, read the results and the credit balance, and count the people or companies matching a filter.

## Connection

* **Authentication**: API key (Icypeas API key).

> [!NOTE]
>
> In Icypeas (app.icypeas.com): left sidebar → "Connect" → "API" (app.icypeas.com/bo/api) → turn on "Enable API access" → copy the "API Key". Do not paste the "API Secret" (it only signs webhooks). The key is checked at the first call. Searches spend credits: see icypeas.com for the plans.
>
> See [Icypeas's documentation](https://api-doc.icypeas.com/).

## Read actions (4)

| Action | Description |
| - | - |
| `count_companies` | Count the companies of the Icypeas lead database that match a filter (a read, free; max 10 calls per second). Argument: query (object, REQUIRED, at least one filter). Filters (each a key of query): text filters \{ include?: string\[], exclude?: string\[] } (max 200 values each): name, lid (LinkedIn public id), urn, companyId, type, industry, location, keyword, domain; range filters \{ ">"?: number, "\<"?: number, ">="?: number, "\<="?: number }: headcount, revenue; growth filter \{ timespan: "6months" \| "12months" \| "24months", min?: number, max?: number }: headcountGrowth. Prefer alpha-2 country codes for locations ("FR", "US"); a comma narrows a location ("Paris, France"). Example: \{ "industry": \{ "include": \["Real Estate"] }, "headcount": \{ ">": 10 } }. Extracting the companies themselves is not offered (billed per result). |
| `count_people` | Count the people of the Icypeas lead database that match a filter (a read, free; max 10 calls per second). Argument: query (object, REQUIRED, at least one filter). Filters (each a key of query): text filters \{ include?: string\[], exclude?: string\[] } (max 200 values each): firstname, lastname, currentJobTitle, pastJobTitle, school, languages, skills, location, profileLocation, workLocation, keyword, currentCompanyName, pastCompanyName, currentCompanyId, pastCompanyId, currentCompanyWebsite, pastCompanyWebsite, currentCompanyUrn, pastCompanyUrn, currentCompany.type, pastCompany.type, currentCompany.industry, pastCompany.industry, currentCompany.location, pastCompany.location, currentCompany.keyword, pastCompany.keyword; range filters \{ ">"?: number, "\<"?: number, ">="?: number, "\<="?: number }: totalYearsOfExperience, timeInCurrentCompany, currentCompany.headcount, pastCompany.headcount, currentCompany.revenue, pastCompany.revenue; growth filters \{ timespan: "6months" \| "12months" \| "24months", min?: number, max?: number } (percentages, -100 to 10000): currentCompany.headcountGrowth, pastCompany.headcountGrowth. Prefer alpha-2 country codes for locations ("FR", "US"); a comma narrows a location ("Paris, France"). Example: \{ "currentJobTitle": \{ "include": \["CTO"] }, "location": \{ "include": \["FR"] } }. Extracting the people themselves is not offered (billed per result). |
| `get_search_result` | Read the results of single searches (a read, free; max 30 calls per minute). Either id (string, the \_id returned by find\_email, verify\_email or scan\_domain) for one result with its status (NONE, SCHEDULED, IN\_PROGRESS, FOUND / DEBITED, NOT\_FOUND / DEBITED\_NOT\_FOUND, BAD\_INPUT, INSUFFICIENT\_FUNDS, ABORTED) and the e-mails found, or no id to list your latest single searches, most recent first: optional type (string, one of email-search, email-verification, domain-scan), limit (integer 1 to 100, default 10), then for the next or previous page pass next (boolean, true = next page) and sorts (the sorts array returned by the previous answer, passed back unchanged). If the status is still NONE, SCHEDULED or IN\_PROGRESS, call again in a few seconds. |
| `get_subscription` | Get a subscription and credit information (user id, plan, status, credits, quotas) — a read, free. Argument: email (string, REQUIRED, the e-mail address of the Icypeas account whose subscription to read). |

## Write actions (3)

| Action | Description |
| - | - |
| `find_email` | Find the professional e-mail address of ONE person from a name and a company (spends 1 credit per e-mail found; max 10 calls per second). Arguments: firstname (string; may be empty if lastname is given), lastname (string; may be empty if firstname is given), domainOrCompany (string, REQUIRED: a domain such as "icypeas.com" or a company name). The search is asynchronous: this call returns \{ success, item: \{ \_id, status } } with status NONE; wait a few seconds, then read the verdict with get\_search\_result (id = that \_id). For many people use several calls, not this tool in a loop beyond the rate limit. |
| `scan_domain` | Scan ONE domain for its role-based addresses such as contact@ or admin@ (spends 1 credit if e-mails are found; max 10 calls per second). Argument: domainOrCompany (string, REQUIRED: a domain such as "icypeas.com" or a company name). The search is asynchronous: this call returns \{ success, item: \{ \_id, status } } with status NONE; wait a few seconds, then read the verdict with get\_search\_result (id = that \_id). |
| `verify_email` | Check whether ONE e-mail address exists (spends 0.1 credit per address; max 10 calls per second). Argument: email (string, REQUIRED). The search is asynchronous: this call returns \{ success, item: \{ \_id, status } } with status NONE; wait a few seconds, then read the verdict with get\_search\_result (id = that \_id). |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](https://docs.atako.ai/integrations/permissions.md) for the grant model and [Security](https://docs.atako.ai/integrations/security.md) for how credentials are protected.

***

*Last reviewed against the provider API: October 2026.*


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