# ExpoFP Exhibitor List Scraper (`monteva/expofp-exhibitor-list-scraper`) Actor

Extract complete exhibitor lists (name, booth, description, categories, logo) from any trade show hosted on ExpoFP - 1,000+ events worldwide. Clean structured data for B2B lead generation, CRM import and market research. Pay per exhibitor, free test option.

- **URL**: https://apify.com/monteva/expofp-exhibitor-list-scraper.md
- **Developed by:** [monteva](https://apify.com/monteva) (community)
- **Categories:** Lead generation, Automation, Agents
- **Stats:** 2 total users, 1 monthly users, 20.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$15.00 / 1,000 exhibitor records

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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## ExpoFP Exhibitor List Scraper

Extract the **complete exhibitor directory** from any trade show hosted on **ExpoFP** — the interactive floor plan platform used by **1,000+ events in 50+ countries**, including Money20/20, TechCrunch Disrupt, AGRITECHNICA, Wine Paris, MRO Europe and Big 5 Global.

One run returns a clean, structured list of every exhibitor: **company name, booth number(s), description, product categories, logo and event details** — ready for lead generation, market research or CRM import.

### Why exhibitor lists?

Exhibitor directories are high-intent B2B lead sources: every company on the list paid to be there, actively sells in that industry, and has budget. Sales teams use these lists to book meetings before the show, agencies use them to prospect entire industries, analysts use them to map competitive landscapes.

### How to use it

1. Find the ExpoFP floor plan of your target event. It is usually linked from the event website ("Floor plan" / "Exhibitor list") and lives at `https://<event>.expofp.com/`.
2. Paste one or more of these URLs into the **Event URLs** input (just the subdomain works too, e.g. `wineparis2026`).
3. Run the Actor. Results land in the dataset and export as **Excel, CSV, JSON** or via API.

### Input example

```json
{
    "eventUrls": ["https://wineparis2026.expofp.com/"],
    "includeBooths": true
}
````

### Output example

```json
{
    "eventSlug": "wineparis2026",
    "eventTitle": "Wine Paris 2026",
    "name": "0.0% SOBER SPIRITS",
    "description": "World's First Non-Alcoholic Spirits made from REAL Spirits...",
    "categories": ["No/Low Alcohol"],
    "booths": ["7.2-C123"],
    "logoUrl": "https://wineparis2026.expofp.com/data/logos/sober-spirits.png",
    "sourceUrl": "https://wineparis2026.expofp.com/exhibitors/0.0%25%20SOBER%20SPIRITS"
}
```

Benchmark: 9,654 exhibitors across 3 events extracted in 3 seconds.

### Pricing

$0.005 per exhibitor extracted — no subscription, no minimum. A 300-exhibitor show costs $1.50; a 3,000-exhibitor flagship fair about $15. Use **Max exhibitors per event** to run a small test first.

### FAQ

**Does this work for any trade show?** It works for every event whose floor plan is hosted on ExpoFP (URL contains `.expofp.com`). If your event uses a different system, email hello@monteva.io — it may already be on our roadmap.

**Do I need proxies or an account?** No. ExpoFP directories are public and the Actor reads them the same way your browser does.

**How fresh is the data?** Live — every run fetches the current published directory. Re-run close to the show date to catch late additions.

**Is this legal?** The Actor collects only publicly available business information (company names, booths, descriptions) that events publish so exhibitors can be found. No logins, no private personal data.

### Support

Found an event that does not work, or need extra fields? Open an issue on the Actor page or email hello@monteva.io.

***

Maintained by [monteva](https://monteva.io) — reliable data & automation tools for businesses and AI agents. Issues answered within 24h. More tools: [apify.com/monteva](https://apify.com/monteva)

# Actor input Schema

## `eventUrls` (type: `array`):

One or more ExpoFP event floor plan URLs, e.g. https://wineparis2026.expofp.com/ . You can also paste just the subdomain (e.g. wineparis2026). Find events at expofp.com or via the event's own website (look for the interactive floor plan).

## `includeBooths` (type: `boolean`):

Match exhibitors to their booth numbers using the event floor plan. Slightly slower (loads the floor plan file).

## `maxExhibitorsPerEvent` (type: `integer`):

Limit the number of exhibitors extracted per event (0 = no limit). Useful for a free test before a full paid run.

## Actor input object example

```json
{
  "eventUrls": [
    "https://wineparis2026.expofp.com/"
  ],
  "includeBooths": true,
  "maxExhibitorsPerEvent": 0
}
```

# 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 = {
    "eventUrls": [
        "https://wineparis2026.expofp.com/"
    ],
    "maxExhibitorsPerEvent": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("monteva/expofp-exhibitor-list-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 = {
    "eventUrls": ["https://wineparis2026.expofp.com/"],
    "maxExhibitorsPerEvent": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("monteva/expofp-exhibitor-list-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "eventUrls": [
    "https://wineparis2026.expofp.com/"
  ],
  "maxExhibitorsPerEvent": 0
}' |
apify call monteva/expofp-exhibitor-list-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=monteva/expofp-exhibitor-list-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "ExpoFP Exhibitor List Scraper",
        "description": "Extract complete exhibitor lists (name, booth, description, categories, logo) from any trade show hosted on ExpoFP - 1,000+ events worldwide. Clean structured data for B2B lead generation, CRM import and market research. Pay per exhibitor, free test option.",
        "version": "0.0",
        "x-build-id": "pjXGwJ8VSWbDaA8Ey"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/monteva~expofp-exhibitor-list-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-monteva-expofp-exhibitor-list-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/monteva~expofp-exhibitor-list-scraper/runs": {
            "post": {
                "operationId": "runs-sync-monteva-expofp-exhibitor-list-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/monteva~expofp-exhibitor-list-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-monteva-expofp-exhibitor-list-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "eventUrls"
                ],
                "properties": {
                    "eventUrls": {
                        "title": "ExpoFP event URLs",
                        "type": "array",
                        "description": "One or more ExpoFP event floor plan URLs, e.g. https://wineparis2026.expofp.com/ . You can also paste just the subdomain (e.g. wineparis2026). Find events at expofp.com or via the event's own website (look for the interactive floor plan).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "includeBooths": {
                        "title": "Include booth numbers",
                        "type": "boolean",
                        "description": "Match exhibitors to their booth numbers using the event floor plan. Slightly slower (loads the floor plan file).",
                        "default": true
                    },
                    "maxExhibitorsPerEvent": {
                        "title": "Max exhibitors per event",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Limit the number of exhibitors extracted per event (0 = no limit). Useful for a free test before a full paid run.",
                        "default": 0
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
