Map Your Show Exhibitor Scraper API
Pricing
from $1.60 / 1,000 exported records
Map Your Show Exhibitor Scraper API
Export trade show exhibitor lists from Map Your Show (MapYourShow): companies, booths, and optional websites and addresses where shown. Track new exhibitors and booth changes with reusable watchlists and coverage reports. Maintained by CleanScrape.
Pricing
from $1.60 / 1,000 exported records
Rating
0.0
(0)
Developer
CleanScrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
4 hours ago
Last modified
Categories
Share
Map Your Show Exhibitor Scraper & Change Monitor
Export public Map Your Show exhibitor directories and track what changes between runs. Get company names, booths, descriptions and source links in one consistent dataset, with optional details from public exhibitor profiles.
Built for event-service suppliers, B2B research teams and agencies that need exhibitor data without comparing spreadsheets by hand.
Watch the walkthrough
Let's use IAAPA Expo 2026 as an example: export all 1,392 exhibitors, then see which companies joined and which booths changed in a week. Paste your own event's Map Your Show link for another project.
Start with a small run
- Paste a public event's Map Your Show link into Event links. Any page of the event works: its homepage, the exhibitor list or one exhibitor's profile. The form opens with IAAPA Expo 2026.
- Keep Export a snapshot selected.
- Set Maximum exhibitors per event. The default is 100.
- Start the run, open Exhibitors in the Output tab, and export CSV, Excel or JSON.
100 exhibitors cost $0.20 at base prices, with no startup fee. A capped sample is not the whole directory: check Run summary before treating it as complete.
Optional details and filters holds the paid profile-detail option and company keywords. Monitoring settings is only needed for Monitor changes.
The link must be on the event's mapyourshow.com address, such as iaapaexpo26.mapyourshow.com. The event's own website, custom-branded domains and attendee portals do not work.
Example: IAAPA Expo 2026 exhibitors
Open the IAAPA snapshot example. It exports up to 100 exhibitors with optional profile details off. For a written walkthrough of snapshots and recurring comparisons, read Track Map Your Show exhibitor changes.
Selected fields from a 100-row run. Booths are lists in the JSON; the table shows their contents.
| Company | Booth | Event | Coverage |
|---|---|---|---|
| 123 iMP Event Solutions | W554 | IAAPA Expo 2026 | capped_snapshot |
| 1956 Individuals | W1115 | IAAPA Expo 2026 | capped_snapshot |
| 3-Minute Shirt | W2549 | IAAPA Expo 2026 | capped_snapshot |
capped_snapshot means the run stopped at your limit. On 2 October 2026 the whole IAAPA directory listed 1,391 exhibitors. With profile details off, website and location fields are empty; this is not an email or contact-list export. Use each row's profileUrl to open the exhibitor's page.
Event directories change, and older editions eventually close. If the example stops working, use the directory of an active event on the same platform.
Monitor exhibitor and booth changes
Choose Monitor changes when you want to compare a directory over time. Open the IAAPA monitoring example.
- The first complete run saves a baseline and exports every matching exhibitor.
- Later runs with the same watchlist name and settings export only the changes. Zero rows can correctly mean nothing changed; the counts are in the run summary.
- A company is reported as no longer listed only after two complete checks in a row miss it. That does not prove it withdrew from the event.
In monitor mode the whole directory must fit within Maximum exhibitors per event, so set it to 5000 for large events. The limit is not raised automatically. For the 1,391-exhibitor IAAPA directory, the first monitoring run costs about $2.83 at base prices (1,391 x $0.002 + $0.05).
Monitoring does not schedule runs or send alerts by itself. Save the input as a task and add an Apify schedule when you are happy with the first results.
{"eventUrls": ["https://iaapaexpo26.mapyourshow.com"],"mode": "monitor","watchlistName": "client-events-2026","maxExhibitorsPerEvent": 5000,"includeDetails": false,"keywords": []}
Keep the same watchlist name and settings to continue a history. Changing keywords or the detail setting starts a separate baseline, so different scopes are never compared. Changing only the limit keeps the history. Two runs of the same watchlist cannot overlap; the second one is rejected rather than overwriting the first.
The baseline is kept in named storage in your own Apify account. Snapshot mode does not create any saved history.
Inputs
| Input | Meaning |
|---|---|
eventUrls | One to ten Map Your Show event links, with or without https://. Any page of the event works, and several links in one entry (separated by new lines, commas or spaces) are split. Duplicate events are processed once. |
mode | snapshot exports current exhibitors; monitor keeps a baseline and exports later changes. |
maxExhibitorsPerEvent | 1-5000, default 100. Snapshot: maximum exhibitors to export. Monitor: the whole directory must fit within it. |
includeDetails | Also collect the public website, street address, postal code, city, region, country and product categories. Default: off. Up to 5,000 profiles per event. |
keywords | Optional words matched against the company name or listing description, up to 20. Any keyword can match. Not a category, country or website filter. |
watchlistName | Name of a monitoring history, up to 64 characters. Spaces become hyphens. Default my-events. Use a new name to start over. |
A link with filters in it (a category or a search) reads the event's whole list, and the run says that the filters were not applied. Use keywords to narrow the list.
What each row contains
Every row has schemaVersion, recordType, recordId, eventId, eventName, exhibitorId, companyName, booths, description, website, country, city, region, street, postalCode, categories, detailsStatus, sourceUrl, profileUrl, observedAt and coverageStatus.
Unknown values are null; missing categories and booths are empty lists. Company names are kept exactly as listed, not merged by similar spelling. Descriptions can be shortened by the source, and some events only show product categories after login, so those are not collected.
detailsStatus: not_requested means profile details were switched off, not that the exhibitor has no website. Snapshot rows have no change type.
Change rows also have:
| Field | Meaning |
|---|---|
changeType | added, updated or no_longer_listed |
changedFields | Fields that differ for an update |
before / after | Values before and after; one side is null for additions or confirmed removals |
Illustrative change row, with the shared identifier fields left out for brevity:
{"schemaVersion": "1.0","recordType": "change","eventId": "example26","exhibitorId": "123","companyName": "Example Manufacturing","changeType": "updated","changedFields": ["booths"],"before": { "companyName": "Example Manufacturing", "booths": ["B12"], "description": null },"after": { "companyName": "Example Manufacturing", "booths": ["C08"], "description": null },"observedAt": "2026-09-14T12:00:00Z","coverageStatus": "complete_directory"}
In the Output tab, Exhibitors, Website and address and Changes show different sets of columns for the same rows. All rows shows every column.
How monitoring avoids false changes
A check counts as complete only when the collected exhibitor IDs match the total the directory reports. Overlapping pages, a changing total, failed requests or an unexpected page format make the check incomplete, and incomplete checks never update the baseline.
If a baseline has at least ten exhibitors and more than 40% disappear at once, the check is put on hold: no changes are exported and the baseline is not updated. Check whether the directory closed or changed access before starting a new watchlist. An empty directory is always treated as unavailable, not as everyone leaving.
With keywords, no_longer_listed means the company no longer matches your keywords in two complete checks. It may have changed its name or description rather than left the event. Monitor without keywords when you need to track the whole directory.
The website can change between requests, so these checks reduce misleading output but cannot catch a change that happens and reverts between runs.
Optional profile details
Turn on Also collect website and address to add each exhibitor's public website, address (street, postal code, city, region and country) and product categories, where the event shows them. Some events hide addresses: IAAPA Expo 2026 does, while MODEX and PACK EXPO show them. It costs $0.001 per profile where at least one public detail is found; profiles with nothing public are marked no_public_details and are free. It works for up to 5,000 matching exhibitors per event, within your time and spending limits.
Profile details are saved before they are charged. If a run stops later, open Profile details index (JSON) in the Output tab (the PROFILE_DETAILS record) to find each saved profile. The index is empty when no profiles were collected.
Large exports and interrupted runs
Rows are saved in batches as the run goes, so you can look at results before it finishes. A whole directory without profile details takes under a minute (IAAPA Expo's 1,392 exhibitors took 15 seconds). With profile details on, each profile is a separate, paced request, so a large event can take 20 minutes or more. New runs allow up to four hours by default; saved tasks and API calls can still set a shorter timeout, and the run stops in time to save what it has.
If time runs short, the Actor stops before its deadline and keeps its progress. To continue, use Apify's Resurrect on that same run, with more time if needed. Do not change the input or start a new run expecting it to continue; a new run starts over and is billed normally.
Your spending limit is always respected. Coverage and billing report shows saved rows, processed and remaining exhibitors, and why collection stopped. If a save cannot be confirmed, the Actor stops instead of risking a duplicate charge and keeps the record in Delivery recovery, which is normally empty.
In monitor mode, profiles are collected before the comparison, and the baseline is updated only after all planned rows are saved. If another run changed the same watchlist during an interruption, start a fresh run instead of overwriting newer history.
Pricing
| Billable event | Base / Free tier | Bronze (-10%) | Silver (-15%) | Gold, Platinum, Diamond (-20%) |
|---|---|---|---|---|
| Exported exhibitor or change, per 1,000 | $2.00 | $1.80 | $1.70 | $1.60 |
| Completed monitoring check, per directory | $0.05 | $0.045 | $0.0425 | $0.04 |
| Enriched public profile, per 1,000 | $1.00 | $0.90 | $0.85 | $0.80 |
There is no startup fee, and compute and proxies are included. Apify applies your tier's price automatically; the Pricing tab shows your rate. Base-price examples without profile details:
- Snapshot of 100 exhibitors: $0.20
- First monitoring baseline of 1,000 exhibitors for one event: $2.05
- Later check of that event with no changes: $0.05
- Later check with 10 changes: $0.07
- Ten events checked four times, with 100 changes in total: $2.20, after the first baselines
Profile details for 100 exhibitors add $0.10. The monitoring-check fee applies to every completed check, including the first baseline and checks with no changes; failed checks are not charged it. Rows and profile details already delivered stay billable if a later step fails. A new run is a new collection and is charged again; use recordId to compare exports.
Integrations
Use the dataset with Python, JavaScript, spreadsheets or automation tools. For notifications, connect an Apify run-success webhook or a Make/Zapier workflow, check the run summary, then process rows where recordType is change. A run can succeed for some events and fail for others, so do not assume every directory completed.
The Actor does not send emails, edit a CRM, contact exhibitors or create schedules.
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("cleanscrape/event-exhibitor-monitor").call(run_input={"eventUrls": ["https://iaapaexpo26.mapyourshow.com"],"mode": "snapshot","maxExhibitorsPerEvent": 100,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["companyName"], item["booths"])
Limitations and responsible use
- Map Your Show 8_0 directories only. An event on the platform can still close or restrict its directory.
- No attendee data, login-only categories, hidden contacts, contact enrichment or sponsor levels.
- Monitoring supports up to 5,000 exhibitors per event; profile details up to 5,000 matching profiles per event.
- Profile access can differ between exhibitors. If a profile fails during monitoring, the baseline keeps its earlier values instead of treating them as deleted.
- Descriptions and details come from the event or exhibitor and can be incomplete or out of date.
observedAtis when the Actor saw the data, not when it was edited. - Only collect and use data you are allowed to. Check the organizer's terms and your privacy obligations; public visibility is not permission for unrestricted resale or outreach.
Common questions
Which trade shows does it work with?
Events that publish their exhibitor directory on Map Your Show (version 8_0). You can paste any page of the event's directory, such as the exhibitor list or a company profile.
How do I get a trade show exhibitor list in Excel?
Paste the event link, run a snapshot, then use Export to download CSV or Excel. Each row has the company, booth and source link, plus the website and address when Also collect website and address is on and the directory shows them.
Does it find exhibitor emails or phone numbers?
No. It only collects what the public directory shows. It does not look up contacts elsewhere.
How do I see new exhibitors or booth changes?
Choose Monitor changes, give it a Monitoring history name, and run it again later, for example on a schedule. The Changes view shows new exhibitors and booth changes since the last run.
How much does it cost?
A snapshot costs $2 per 1,000 exhibitors, so 100 exhibitors cost $0.20, with no start fee. Monitoring costs $0.002 per baseline row plus $0.05 per directory check. See Pricing above.
Support
CleanScrape maintains this Actor for one-off exports and recurring workflows. We investigate reported errors, update the Actor when the platform changes, and test changes against existing inputs and output formats. Requests for other directory platforms are welcome; support is added only when the source and output can be validated.
If something stops working, open an issue or email contact.cleanscrape@gmail.com with the run ID, the event link and what you expected. Never include API tokens or private data.
What worked well, and what could be better? Share your experience in Reviews. Honest feedback is welcome, including anything that fell short. Leaving feedback is optional and does not affect access, pricing or support.
Disclaimer
This Actor is an independent tool developed by CleanScrape. It is not affiliated with, endorsed by, or sponsored by Map Your Show, IAAPA, or any event organizer or exhibitor referenced in its examples or output. Map Your Show, IAAPA and all other trademarks are the property of their respective owners. Brand names are used only to identify supported sources and illustrate usage.
More tools from CleanScrape
-
App Store & Google Play Reviews Scraper: reviews from both app stores in one table
-
Google Trends Scraper API: search interest over time, by region, related queries and trending searches
-
Shopify Product Reviews Scraper API: Judge.me and Okendo reviews from Shopify product links
-
Google News Scraper API: headlines from Google News and publisher feeds
-
Pinterest Scraper API: pins from searches, boards and profiles
-
Google Hotels Scraper API: hotel prices and booking offers for your dates
-
TikTok Shop Product Scraper: US TikTok Shop prices, sellers and ratings
-
Threads Scraper API: public Threads posts from accounts or post links
-
Likee Scraper API: Likee videos and comments
-
Tennis Scraper API: tennis results, statistics, point-by-point and head-to-head
-
Bilibili Scraper: Bilibili videos, danmaku, top comments and creators, no login