# ImportYeti Scraper - Bills of Lading, Suppliers & HS Codes (`topapi/importyeti-scraper`) Actor

Scrape ImportYeti US customs import records: company and supplier profiles with every trading partner, up to 100 bills of lading, HS codes, ports, carriers and shipment history. Search by name, address, product or HS code. Monitor mode. $0.90 per 1,000 profiles, no start fee, no login.

- **URL**: https://apify.com/topapi/importyeti-scraper.md
- **Developed by:** [Top Api](https://apify.com/topapi) (community)
- **Categories:** Lead generation, E-commerce, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.90 / 1,000 company or supplier profiles

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does ImportYeti Scraper do?

**ImportYeti Scraper** turns ImportYeti's US customs import records (bills of lading filed for ocean freight into the US) into structured rows: one row per **US importer or overseas supplier profile** with every trading partner, up to 100 bills of lading, HS codes, ports, carriers and the shipment history. Built for sourcing teams, sales prospecting, competitive intelligence and supply-chain risk work that needs import data without copying it page by page.

Also known as: ImportYeti API, US import data scraper, bill of lading scraper, US customs data extractor.

<a href="https://console.apify.com/actors/F207tIB2aKwnI7qZe"><img src="https://api.apify.com/v2/key-value-stores/qNQ9zP0xaj2yxGeMY/records/importyeti-scraper-source.png" alt="ImportYeti company page that ImportYeti Scraper turns into a profile row" style="width:70%"></a>

- **Full company and supplier profiles:** totals, 12-month shipments, growth, trading partners (suppliers of an importer, US customers of a supplier), HS/HTS codes, carriers, port-to-port routes, containers, notify parties, monthly series since 2015
- **Up to 100 bills of lading per company:** the 50 newest plus a second set of 50 with the declared CIF value
- **Every way in:** company or product names, addresses, HS codes, product tags, countries, or pasted ImportYeti links
- **Flat rows when you want a table:** one row per bill of lading, trading partner, port route or HS code
- **Monitor mode:** only new companies, companies with new shipments, and their new bills of lading
- **No login, cookies or ImportYeti account**
- **Export anywhere:** JSON, CSV, Excel; schedules, webhooks, API, Make, Zapier, n8n, MCP

### What data can you get from ImportYeti?

<table>
<tr><td>🏢 Name, type, aliases (`alsoKnownAs`)</td><td>📍 Address, city, state, coordinates</td><td>🌐 Website, other websites</td></tr>
<tr><td>📦 Total and 12-month shipments</td><td>📅 First and last shipment</td><td>📈 Quarterly growth, monthly series</td></tr>
<tr><td>🤝 Trading partners (`topTradingPartners`)</td><td>🧾 Bills of lading (`recentBols`, `cifBols`)</td><td>💲 CIF value, est. freight cost</td></tr>
<tr><td>🏷️ HS chapters, headings, HTS codes</td><td>🚢 Carriers (SCAC), container types</td><td>⚓ Port-to-port routes (`portRoutes`)</td></tr>
<tr><td>🔔 Notify parties</td><td>🇨🇳 China shipments, UFLPA flag</td><td>⭐ Lead score 0-100</td></tr>
</table>

On a 100-profile test run (search "lighting"), every row had a name, address, country, shipment totals, trading partners, bills of lading, HS codes, carriers and port routes; 96% had a city, 51% a website and 81% trademarks.

### How to scrape ImportYeti with ImportYeti Scraper

1. [Create a free Apify account](https://console.apify.com/sign-up) — $5 of monthly credit, no card needed.
2. Open [ImportYeti Scraper](https://apify.com/TopApi/importyeti-scraper) and click **Try for free**.
3. Type company, brand or product names into **Search terms**, or paste ImportYeti links, and set **Max profiles**.
4. Click **Start**. Profiles stream into the dataset as they are read.
5. Open the **Storage** tab and **Export** as JSON, CSV or Excel — or let a schedule run it for you.

### ⬇️ Input

| Parameter | Type | Description |
|---|---|---|
| **🔍 What to scrape** | | |
| `searchTerms` | List | Company, brand, supplier or product names, e.g. `porsche`, `hon hai`, `yoga mat` |
| `startUrls` / `urlsFromFile` | List / Text | ImportYeti company, supplier, notify-party, HS-code, tag, location, carrier, port, vessel or search links (or a .txt/.csv/Google Sheet with them) |
| `companies` / `suppliers` | List | Company or supplier slugs, e.g. `apple`, `foxconn-interconnect-technology` |
| `productKeywords` | List | Product words; each opens ImportYeti's product tag page |
| `hsCodes` | List | 2-, 4- or 6-digit HS codes, e.g. `84`, `8471`, `847130` |
| `addressSearch` | List | Address or industrial-zone text, e.g. `shenzhen longhua` |
| `locations` + `locationType` | List + Select | Country slugs (`vietnam`) for the supplier or the US-importer directory |
| `enrichProfiles` | Boolean | On (default): open each match as a full profile. Off: search rows only |
| **🎯 Filters** (applied by ImportYeti) | | |
| `entityType` | Select | Importers and suppliers (default), US importers only, or overseas suppliers only |
| `includeRelatedCompanies` | Boolean | Also match companies through their trademarks. Default `false` |
| `hsCountry` | Text | For HS-code pages: shipments from one origin country, e.g. `china` |
| **✂️ Refine results** (applied before anything is charged) | | |
| `mostRecentShipment` | Select | Last shipment within 1, 3, 6, 12 or 24 months. Default: any time |
| `minShipments` | Integer | Skip companies with fewer US sea shipments |
| `countries` | List | Two-letter country codes of the company or supplier |
| `withWebsiteOnly` | Boolean | Keep only profiles that list a website |
| `includeUnnamedPartners` | Boolean | Keep "Missing in source document" counterparties. Default `false` |
| **➕ Extra data** | | |
| `includeSummary` | Boolean | The profile row itself. Default `true` |
| `includeBols` / `includeTopPartners` / `includeRoutes` / `includeHsCodeRows` | Boolean | Flat rows, each charged as one **record** |
| `crawlPartners` | Boolean | Also open each named trading partner's profile (one level) |
| `includeContacts` | Boolean | Contact blocks as ImportYeti shows them (masked). Default `true` |
| `maxPartnersPerProfile` / `maxShipmentsPerProfile` | Integer | Defaults 50 / 100 |
| **🔁 Monitoring** | | |
| `monitorMode` + `monitorStoreName` | Boolean + Text | Return only new entities, entities with new shipments, and new bills of lading |
| `shipmentsSince` | Date | Only bills of lading on or after this day |
| **📦 Output** | | |
| `maxResults` | Integer | Profiles, explorer pages or search rows per run. Default `10`; `0` = as many as the run reaches |
| `maxResultsPerSearch` | Integer | Matches per search term. Empty = `maxResults` |
| `maxItems` | Integer | Cap on all charged rows. Default `1000` |
| `compact` | Boolean | Core profile fields only, for AI agents and MCP |
| `resumeCursor` | Text | Continue a run that stopped early |
| **⚙️ Advanced** | | |
| `proxyConfiguration`, `residentialFallback`, `maxConcurrency`, `requestTimeoutSecs` | | Defaults work; see the form |

#### Input JSON

```json
{
  "searchTerms": ["lithium battery"],
  "entityType": "company",
  "mostRecentShipment": "6mo",
  "minShipments": 50,
  "maxResults": 100,
  "includeBols": true
}
```

#### Search for what a company is called, not what it sells

ImportYeti's name search matches company names. **Do:** `"hubbell"`, `"porsche"`. For a product, use `productKeywords` (`"yoga mat"`), which opens ImportYeti's product tag page with its top importers and suppliers, or `hsCodes` (`"940360"`). A product word in `searchTerms` finds companies with that word in their name, e.g. "Lithium Battery" of Tampa.

#### Read 280 matches from one name

ImportYeti serves 140 matches per name and type. Leave `entityType` on both and set `maxResultsPerSearch` above 140: the importers and the suppliers are read separately, up to 280. Address search goes up to 10,000 matches.

### ⬆️ Output

Every company or supplier becomes one dataset item (`recordType: "profile"`). Here is the Profiles view of a 100-profile run:

<a href="https://console.apify.com/actors/F207tIB2aKwnI7qZe"><img src="https://api.apify.com/v2/key-value-stores/qNQ9zP0xaj2yxGeMY/records/importyeti-scraper-output.png" alt="ImportYeti Scraper output: company profiles with shipments, suppliers and lead score" style="width:70%"></a>

A profile row, shortened (arrays cut to one item):

```json
{
  "recordType": "profile",
  "name": "Rab Lighting",
  "type": "company",
  "countryCode": "US",
  "address": "5678 E Ontario Mills Pkwy Ca91764, Ontario, Ca 91764, Us",
  "city": "Ontario",
  "state": "California",
  "totalShipments": 8469,
  "shipments12m": 994,
  "mostRecentShipment": "2026-10-15",
  "website": "rabweb.com",
  "phone": "XXX-XXX-X600",
  "topSuppliers": ["Ningbo Shenghe Lighting", "Lancai Technology"],
  "topTradingPartners": [{ "name": "Ningbo Shenghe Lighting", "country": "China", "totalShipments": 705, "hsCodes": ["9405.19", "9405.42"] }],
  "recentBols": [{ "date": "2026-10-15", "bolNumber": "DWCHSBKKS0026639", "counterparty": "Haisen Technology Thailand Co Lt", "product": "Smart Led Driver Series", "weight": 140 }],
  "portRoutes": [{ "exitPort": "Yantian", "entryPort": "Newark, Nj", "shipments": 1475 }],
  "leadScore": 80,
  "detailUrl": "https://www.importyeti.com/company/rab-lighting"
}
```

A flat bill-of-lading row (`includeBols`):

```json
{
  "recordType": "shipment", "targetName": "Hope Sofa", "arrivalDate": "2026-02-26",
  "billOfLading": "GXPSSZX5SE27061", "masterBol": "ZIMUSHH32021054", "carrierScac": "ZIMU",
  "counterpartyName": "2109971 Ontario Inc", "counterpartyCountry": "United States of America",
  "productDescription": "Bed Bar Table Bar Table Top Barstool", "weightKg": 10053,
  "quantity": "250", "quantityUnit": "CTN", "containerCount": 1,
  "shippingRoute": "Asia,Pacific", "estFreightCostUsd": 2425.28
}
```

#### Fields

| Field | What it is | Fill (100 profiles) |
|---|---|---|
| `name`, `type`, `countryCode`, `address` | Company or supplier identity | 100% |
| `city` / `state` / `latitude` | Place from ImportYeti's location tree | 96% / 95% / 99% |
| `totalShipments`, `shipments12m`, `mostRecentShipment`, `quarterlyGrowth`, `timeSeries` | Volume and trend | 100% |
| `website` | Company website | 51% |
| `phone` | As ImportYeti shows it (masked) | 98% |
| `alsoKnownAs`, `otherAddresses`, `trademarks` | Aliases, other addresses, trademarks | 100%, 100%, 81% |
| `topTradingPartners` | Suppliers (or US customers), each with country, shipments, weight, TEU, HS codes, products, their other customers | 100% (median 45 per profile) |
| `recentBols` / `cifBols` | Bills of lading: newest 50 / 50 more with CIF value | 100% / 49% |
| `hsCodeSummary`, `htsCodes` | HS tree with shipments, weight, TEU; HTS lines with a sample BOL | 100%, 92% |
| `topCarriers`, `portRoutes`, `containers`, `containerLoad` | Shipping lines, port pairs (median 41), containers, FCL/LCL | 100% |
| `notifyPartyTable` | Customs brokers and forwarders notified | 100% |
| `manifestConfidentiality` | Periods the company had its manifests withheld | 75% |
| `chinaShipments12m`, `uflpa` | China exposure, UFLPA flag | 100% |
| `leadScore` | 0-100 from 12-month volume (50), last shipment within 90 days (20), growth (15), a website (15) | 100% |

Bill-of-lading rows (206 rows): date, BOL number, product, weight, quantity 100%; master BOL, carrier, counterparty 97-99%; containers and route 74%; freight estimate 70%; CIF value 26% (the CIF set only).

### How can I use ImportYeti data?

- 🎯 **Sales teams selling to importers** — list every US company importing a product, ranked by `shipments12m` and `leadScore`
- 🏭 **Sourcing managers** — see which factories a competitor buys from (`topTradingPartners`), then open each factory's other US customers
- 🔎 **Competitive intelligence** — track a rival's suppliers, volume and ports month by month with monitor mode
- 🚢 **Freight forwarders and customs brokers** — find shippers by route, carrier and notify party
- ⚖️ **Compliance teams** — screen suppliers for China exposure and the UFLPA flag
- 🤖 **AI agents** — call it through MCP with `compact` on for short rows

### How much does it cost to scrape ImportYeti?

ImportYeti Scraper is pay-per-result with no start fee:

| What you get | Price |
|---|---:|
| Company or supplier profile | **$0.90 per 1,000** |
| Search row (`enrichProfiles` off) | $0.54 per 1,000 |
| Flat row (bill of lading, partner, route, HS code) | $0.72 per 1,000 |
| Explorer page (HS code, tag, location, carrier, port, vessel) | $2.70 per 1,000 |

| Example | Cost |
|---|---:|
| 10 profiles | $0.009 |
| 100 profiles | $0.09 |
| 1,000 profiles | $0.90 |
| 10 profiles + their 500 bills of lading | $0.369 |

There is nothing else to pay: Apify platform usage is included in these prices. Filtered matches, duplicates, unchanged monitored companies, missing pages and pages that could not be read cost nothing. A 100-profile run took 87 seconds on the default 256 MB.

### Integrations, API, scheduling & MCP

- **Schedules:** run ImportYeti Scraper daily or weekly from the **Schedules** tab with `monitorMode` on to get only new shipments.
- **Webhooks:** fire a URL when a run finishes and push rows to your CRM, Slack or a sheet.
- **No-code:** Make, Zapier, n8n, Google Sheets, Airtable, Slack via [Apify integrations](https://docs.apify.com/integrations).
- **API:** call it from Node.js or Python with `apify-client` — code on the [API tab](https://apify.com/TopApi/importyeti-scraper/api/python).
- **MCP / AI agents:** connect Claude, Cursor or any MCP client through the [MCP tab](https://apify.com/TopApi/importyeti-scraper/api/mcp).

### More B2B and trade scrapers

<table>
<tr>
<td>🏭 <a href="https://apify.com/TopApi/alibaba-1688-scraper">1688.com Wholesale Scraper</a></td>
<td>™️ <a href="https://apify.com/TopApi/uspto-trademark-scraper">USPTO Trademark Scraper</a></td>
<td>🛍️ <a href="https://apify.com/TopApi/tiktok-shop-scraper">TikTok Shop Scraper</a></td>
</tr>
<tr>
<td>📈 <a href="https://apify.com/TopApi/yahoo-finance-scraper">Yahoo Finance Scraper</a></td>
<td>⭐ <a href="https://apify.com/TopApi/google-maps-reviews-scraper">Google Maps Reviews Scraper</a></td>
<td>🧭 <a href="https://apify.com/TopApi">All TopApi actors</a></td>
</tr>
</table>

### Limits & empty runs

- **ImportYeti's per-IP allowance:** 25 page views and 25 searches per IP address, then it asks for a login (we never log in). Each run spreads its views over Apify datacenter IPs and, within a small budget, residential IPs. Measured: a 1,000-profile run on a pool already used by earlier runs that day delivered 418 profiles in 10 minutes (290 on datacenter IPs, 128 on residential), then stopped with a `resumeCursor` in `OUTPUT`. The allowance comes back slowly (about one view per 10 minutes per IP), so very large jobs work best split over several runs.
- **Search depth:** 140 matches per name and type (280 with both types); 10,000 per address.
- **Per profile:** up to 50 trading partners and 100 bills of lading, as ImportYeti shows them.
- **Contacts:** phone numbers and emails are masked on ImportYeti for signed-out visitors and stay masked here.
- **Coverage:** US imports by sea. ImportYeti's US-export and Mexico data and its paid search pages are not included.
- **Empty dataset:** no match for the term, every match filtered out, or a monitor run with nothing new; the status message says which. Nothing is charged.

### FAQ

#### How many profiles can ImportYeti Scraper collect in one run?

As many as the IPs it can use allow: 418 profiles in one measured 10-minute run, 100 in 87 seconds. When the allowance runs out the run ends normally and writes a `resumeCursor`; paste it into a later run to continue.

#### Can I run ImportYeti Scraper on a schedule to get new shipments?

Yes. Save your input as a task, turn on `monitorMode`, and schedule it. Each run returns only new companies, companies with new shipments and their new bills of lading; a run with nothing new returns nothing and costs nothing.

#### Does ImportYeti Scraper return phone numbers and emails?

It returns the contact blocks exactly as ImportYeti shows signed-out visitors: masked values (for example `XXX-XXX-X600`) with how many shipments and companies use them. It does not unmask them.

#### Can I get a competitor's suppliers with ImportYeti Scraper?

Yes. Put the competitor in `companies` (or search its name) and read `topTradingPartners`; turn on `crawlPartners` to open every supplier's own profile and see its other US customers.

#### Can I use ImportYeti Scraper with the Apify API?

Yes. Use `apify-client` for [Node.js](https://apify.com/TopApi/importyeti-scraper/api/javascript) or [Python](https://apify.com/TopApi/importyeti-scraper/api/python); the API tab has ready-to-paste code.

#### Can I use ImportYeti Scraper through an MCP server?

Yes. Open the [MCP tab](https://apify.com/TopApi/importyeti-scraper/api/mcp), connect your MCP client and ask for importers or suppliers in plain language. Turn on `compact` for short rows.

#### Do I need an ImportYeti account or API key?

No. ImportYeti Scraper reads only what ImportYeti shows signed-out visitors.

#### Why did my ImportYeti Scraper run return no results?

The name matched nothing (try a shorter name or `productKeywords`), the filters removed every match (see `RUN_SUMMARY.filtered`), or monitor mode found nothing new. If the status message says the allowance was used up, continue later with the `resumeCursor`.

#### How is ImportYeti Scraper different from other ImportYeti scrapers?

Up to 100 bills of lading per company instead of 50, 280 matches per name, product tag, HS-code, location, carrier, port and vessel pages, flat rows, monitor mode and a resume cursor, at $0.90 per 1,000 profiles with no start fee.

#### Is it legal to scrape ImportYeti data?

ImportYeti Scraper collects publicly available data only (public US customs records shown on public pages). You are responsible for using the data in line with applicable laws and ImportYeti's terms. This actor is an independent tool and is not affiliated with ImportYeti.

#### Your feedback

Found a bug or missing a field? Open an issue on the [Issues tab](https://apify.com/TopApi/importyeti-scraper/issues/open) and we will look at it.

# Actor input Schema

## `searchTerms` (type: `array`):

Company, brand, supplier or product names, one per line, e.g. "porsche", "hon hai", "yoga mat". ImportYeti returns up to 140 hits per term and type.

## `startUrls` (type: `array`):

Company, supplier, notify-party, HS-code, tag, location, carrier, port or vessel pages, or search links, e.g. https://www.importyeti.com/company/apple.

## `urlsFromFile` (type: `string`):

Paste ImportYeti links one per line, or one link to a .txt/.csv file or a shared Google Sheet / Drive file that lists them.

## `companies` (type: `array`):

ImportYeti company slugs or links, e.g. "apple", "walmart", "company/costco". Each becomes one importer profile.

## `suppliers` (type: `array`):

ImportYeti supplier slugs or links, e.g. "foxconn-interconnect-technology". Each becomes one supplier profile with its US customers.

## `productKeywords` (type: `array`):

Product words, e.g. "yoga mat", "lithium battery". Each opens ImportYeti's product tag page: top importers, top suppliers, 50 recent shipments.

## `hsCodes` (type: `array`):

2-, 4- or 6-digit HS codes or /hs-codes/ links, e.g. "84", "8471", "847130". Each opens the HS-code page: totals, tariff lines, top importers and suppliers.

## `addressSearch` (type: `array`):

Street, city or industrial-zone text, e.g. "shenzhen longhua", "1710 w baseline rd". Finds the importers and suppliers at that address (up to 10,000 per search).

## `locations` (type: `array`):

Country slugs or ImportYeti /location/ links, e.g. "vietnam", "china". Each opens the location page with its top companies and recent shipments.

## `locationType` (type: `string`):

For bare country slugs: the overseas-supplier directory or the US-importer directory. Ignored for full /location/ links.

## `enrichProfiles` (type: `boolean`):

On: every search match is opened as a full profile (charged as a profile). Off: a fast, cheap list of search matches only (charged as search results).

## `entityType` (type: `string`):

Keep US importers only, overseas suppliers only, or both. ImportYeti filters the search itself.

## `includeRelatedCompanies` (type: `boolean`):

Also match companies through their trademarks, as ImportYeti's "Include related companies" box does.

## `hsCountry` (type: `string`):

Optional country for HS-code pages, e.g. "china" or "vietnam": the page then covers shipments from that country only.

## `mostRecentShipment` (type: `string`):

Keep only companies and suppliers with a shipment in this period.

## `minShipments` (type: `integer`):

Skip companies and suppliers with fewer US sea shipments on record, e.g. 100 to drop one-off shippers. Empty or 0 keeps all.

## `countries` (type: `array`):

Two-letter country codes of the company or supplier, e.g. US, CN, VN, IN. Empty keeps every country.

## `withWebsiteOnly` (type: `boolean`):

Keep only profiles that list a website.

## `includeUnnamedPartners` (type: `boolean`):

ImportYeti shows blank counterparties on manifests as "Missing in source document". Off drops them from partner lists and partner rows.

## `includeSummary` (type: `boolean`):

One row per company, supplier or explorer page with everything nested. Turn off to get only the flat rows below.

## `includeBols` (type: `boolean`):

One row per bill of lading (up to 100 per company): date, BOL / master / house numbers, carrier, counterparty, product, weight, containers, route, freight and CIF value.

## `includeTopPartners` (type: `boolean`):

One row per supplier of a company (or US customer of a supplier): address, country, shipments, weight, TEU, HS codes, products.

## `includeRoutes` (type: `boolean`):

One row per port-to-port route: exit and entry port, shipments, weight, TEU, estimated freight cost.

## `includeHsCodeRows` (type: `boolean`):

One row per HS chapter, heading and subheading the company ships under, with shipments, weight and TEU.

## `crawlPartners` (type: `boolean`):

Also open the profile of each named trading partner (one level deep), e.g. every supplier of a competitor. Each opened profile is charged.

## `includeContacts` (type: `boolean`):

Phone/email blocks with their shipment counts and dates, exactly as ImportYeti shows them (values are masked on the site).

## `maxPartnersPerProfile` (type: `integer`):

Cap on the trading-partner list per profile (ImportYeti shows up to 50).

## `maxShipmentsPerProfile` (type: `integer`):

Cap on bills of lading per profile (up to 100 per company: the 50 newest plus 50 with a declared CIF value).

## `monitorMode` (type: `boolean`):

Remember what earlier runs delivered and return only new entities, entities with new shipments, and their new bills of lading.

## `monitorStoreName` (type: `string`):

Named key-value store that holds what was already delivered. Use one name per watchlist.

## `shipmentsSince` (type: `string`):

Only bills of lading dated on or after this day; companies whose last shipment is older are skipped and not charged.

## `maxResults` (type: `integer`):

Most profiles, explorer pages or search rows per run. 0 = as many as the run reaches. ImportYeti allows 25 page views per IP, so big runs spread over many IPs.

## `maxResultsPerSearch` (type: `integer`):

Matches taken from each search term or address, in ImportYeti’s order. Empty = Max profiles. Name search tops out at 280 (140 importers + 140 suppliers).

## `maxItems` (type: `integer`):

Hard cap on all charged rows together (profiles, pages, search rows and flat rows). 0 = no cap besides Max profiles.

## `compact` (type: `boolean`):

Core profile fields only, trimmed for AI agents and MCP: name, place, website, shipment totals, top suppliers, products, ports, lead score.

## `resumeCursor` (type: `string`):

Paste OUTPUT.resumeCursor from a run that stopped early to continue where it stopped; rows it already delivered are not delivered or charged again.

## `proxyConfiguration` (type: `object`):

Default: Apify datacenter IPs, then a few residential IPs within a small budget. Your own proxy URLs are used instead when you add them. Proxy off = the run’s own IP only.

## `residentialFallback` (type: `boolean`):

Use a few Apify residential IPs when every datacenter IP has used its ImportYeti allowance. Off: the run stops there and writes a resume cursor.

## `maxConcurrency` (type: `integer`):

Pages fetched in parallel.

## `requestTimeoutSecs` (type: `integer`):

Seconds to wait for one ImportYeti answer; some large profiles take 10-20 s.

## `feedback` (type: `string`):

For AI agents and people: say what you needed and did not get. It is logged for the maintainers and does not change the run.

## Actor input object example

```json
{
  "searchTerms": [
    "porsche"
  ],
  "locationType": "supplier",
  "enrichProfiles": true,
  "entityType": "any",
  "includeRelatedCompanies": false,
  "mostRecentShipment": "any",
  "withWebsiteOnly": false,
  "includeUnnamedPartners": false,
  "includeSummary": true,
  "includeBols": false,
  "includeTopPartners": false,
  "includeRoutes": false,
  "includeHsCodeRows": false,
  "crawlPartners": false,
  "includeContacts": true,
  "maxPartnersPerProfile": 50,
  "maxShipmentsPerProfile": 100,
  "monitorMode": false,
  "monitorStoreName": "importyeti-monitor",
  "maxResults": 5,
  "maxItems": 1000,
  "compact": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  },
  "residentialFallback": true,
  "maxConcurrency": 5,
  "requestTimeoutSecs": 60
}
```

# Actor output Schema

## `results` (type: `string`):

Company and supplier profiles, explorer pages, search results and flat bill-of-lading, partner, route and HS-code rows (recordType says which).

## `output` (type: `string`):

finished, stoppedBy, and a resumeCursor to continue a run that stopped at ImportYeti's per-IP allowance or a cap.

## `summary` (type: `string`):

Per-search counts, filtered and duplicate rows, pages not found, ImportYeti views used per IP rung, residential spend.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "porsche"
    ],
    "maxResults": 5
};

// Run the Actor and wait for it to finish
const run = await client.actor("topapi/importyeti-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": ["porsche"],
    "maxResults": 5,
}

# Run the Actor and wait for it to finish
run = client.actor("topapi/importyeti-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "porsche"
  ],
  "maxResults": 5
}' |
apify call topapi/importyeti-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,topapi/importyeti-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/F207tIB2aKwnI7qZe/builds/J7ublqMdJKX92h48a/openapi.json
