Expo West APIattend.expowest.com ↗
Access Natural Products Expo West speaker and exhibitor data via API. Returns names, job titles, organizations, booth numbers, and logos from the event directory.
What is the Expo West API?
This API exposes two endpoints covering the Natural Products Expo West attendee directory at attend.expowest.com: list_speakers and list_exhibitors. Together they return up to seven structured fields per record — including names, job titles, organizations, booth numbers, and photo or logo URLs — giving developers programmatic access to the event's publicly listed participants without manual browsing.
curl -X GET 'https://api.parse.bot/scraper/762e5619-81b4-4dbf-8de2-1ec49eeff59d/list_speakers?view_id=RXZlbnRWaWV3XzEyMjU1ODI%3D&max_pages=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace attend-expowest-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.expo_west_directory_api import ExpoWest, Speaker, Exhibitor
client = ExpoWest()
# List speakers from the Expo West directory
for speaker in client.speakers.list(max_pages=1):
print(speaker.name, speaker.job_title, speaker.organization)
# List exhibitors from the Expo West directory
for exhibitor in client.exhibitors.list(max_pages=1):
print(exhibitor.name, exhibitor.booth, exhibitor.logo_url)
List all speakers/people with their names, job titles, and organizations. Returns 30 items per page and auto-paginates. Each speaker includes identity, role, company, and photo. Use max_pages to cap the fetch depth when you only need a sample.
| Param | Type | Description |
|---|---|---|
| view_id | string | View ID for the speakers list. Defaults to the canonical public speakers view. |
| max_pages | integer | Maximum number of pages to fetch (0 = all pages, 30 items per page). |
{
"type": "object",
"fields": {
"speakers": "array of speaker objects with id, first_name, last_name, name, job_title, organization, photo_url",
"total_count": "integer - total number of speakers available",
"fetched_count": "integer - number of speakers returned in this response"
},
"sample": {
"data": {
"speakers": [
{
"id": "RXZlbnRQZW9wbGVfNDQzODg3MDc=",
"name": "Matt Landen",
"job_title": "Senior Vice President, Business Development",
"last_name": "Landen",
"photo_url": "https://static.swapcard.com/public/images/acbf66ee9a754bbbb35a91bba357d4ad.jpeg",
"first_name": "Matt",
"organization": "Chomps"
}
],
"total_count": 357,
"fetched_count": 30
},
"status": "success"
}
}About the Expo West API
Speaker Data
The list_speakers endpoint returns paginated records of event speakers and featured people. Each speaker object includes id, first_name, last_name, name, job_title, organization, and photo_url. Pages are 30 items each; pass max_pages to cap how many pages are fetched, or set it to 0 to retrieve all available records. The optional view_id parameter lets you target a specific speaker list view if the event publishes more than one.
The response also includes total_count (how many speakers exist in the directory) and fetched_count (how many were returned in the current call), so you can detect truncation and plan follow-up requests accordingly.
Exhibitor Data
The list_exhibitors endpoint returns company-level records from the exhibitor directory. Each exhibitor object carries id, name, description, logo_url, and booth. Pages are 50 items each. You can supply a specific event_id to pin results to a particular Expo West year, or an alternate view_id if the directory exposes more than one exhibitor view. Like the speakers endpoint, it returns total_count and fetched_count for the same pagination-awareness purpose.
Pagination Behavior
Both endpoints handle pagination automatically. Setting max_pages to 0 fetches all available pages in a single API call, which is useful for building a complete local snapshot of the directory. For large directories — Expo West regularly hosts thousands of exhibitors — setting a lower max_pages value reduces latency and credit usage when you only need a sample or the first N records.
The Expo West API is a managed, monitored endpoint for attend.expowest.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when attend.expowest.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official attend.expowest.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a searchable exhibitor database indexed by booth number and company name for pre-show planning.
- Enrich a CRM with speaker job titles and organizations pulled from the
list_speakersresponse. - Track year-over-year exhibitor participation by comparing
nameandidfields across event editions. - Generate a press contact list of speakers with their
organizationandphoto_urlfor media kits. - Identify natural products brands exhibiting at Expo West by scraping
descriptionfields fromlist_exhibitors. - Build a booth-map overlay by correlating exhibitor
boothvalues with a floor plan. - Automate outreach lists by exporting speaker
name,job_title, andorganizationto a spreadsheet or sales tool.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does attend.expowest.com have an official developer API?+
What does `list_exhibitors` return beyond a company name?+
id, name, description, logo_url, and booth. The description field contains the exhibitor's self-submitted company summary, and booth is the floor location identifier assigned by the event organizer.