Install
openclaw skills install trade-show-lead-recommenderGet AI-ranked exhibitors matching your ICP — shortlist the top accounts worth outreach at any show. "Who should we target at this show?" / "推荐参展商" / "Ausstellerempfehlungen für mein ICP" / "おすすめ出展社を教えて" / "recomienda expositores por ICP". ICP match, recommended exhibitors, shortlist, top accounts, ICP匹配/推荐参展商/找目标客户/哪些公司值得拜访 Ausstellerempfehlung 出展社推薦 recomendaciones ICP
openclaw skills install trade-show-lead-recommenderGet AI-ranked exhibitors that match your ICP for a specific trade show — filtered by company size, location, category, and tech stack — then hand off to contact finding and outreach.
When this skill triggers:
event_id for the target showtrade-show-contact-finder for decision-maker lookupBefore making any API call, verify the key is configured:
[ -n "$LENSMOR_API_KEY" ] && echo "ok" || echo "missing"
If the result is missing, stop and respond:
The
LENSMOR_API_KEYenvironment variable is not set. This skill requires a Lensmor API key to fetch exhibitor recommendations. Contact hello@lensmor.com to purchase access, then set the key:export LENSMOR_API_KEY=your_key_here
Do not proceed to any API call until the key is confirmed present.
The recommendations endpoint requires a Lensmor event_id. If the user only has a show name, look it up first:
Endpoint: GET https://platform.lensmor.com/external/events/list?query={show+name}
Authentication: Authorization: Bearer $LENSMOR_API_KEY
Use the id from the matching event in the response. Confirm the correct show, year, and edition before proceeding.
Discuss the user's ICP to determine which filters to apply. Use only filters that add precision without over-narrowing results.
Available filter parameters:
| Parameter | Type | Description | Example |
|---|---|---|---|
event_id | string | Required. Lensmor event ID | evt_dreamforce_2026 |
location | string | Filter by country or region | United States, Germany, APAC |
searchQuery | string | Free-text search across company name and description | procurement automation |
exhibitorName[] | array | Exact company name match (account-based lists) | ["Acme Corp", "OperaOps"] |
category[] | array | Product/industry category filter | ["Manufacturing SaaS", "Procurement Tech"] |
employeesMin | number | Minimum employee count | 100 |
employeesMax | number | Maximum employee count | 1000 |
page | number | Page number (default: 1) | 1 |
pageSize | number | Results per page (default: 20, max: 100) | 50 |
Filter selection guidance:
employeesMin / employeesMax: Most effective ICP filter for B2B — "mid-market" (100–1,000), "enterprise" (1,000+), "SMB" (< 100)category[]: Use when the user's ICP is vertical-specific; avoids surfacing adjacent-but-irrelevant companieslocation: Use when regional focus is a hard constraint (e.g. EMEA-only sales territory)searchQuery: Use for keyword-based discovery when category is unclear or broadexhibitorName[]: Use for account-based mode when the user has a specific hit list to validate against the show floorEndpoint: GET https://platform.lensmor.com/external/profile-matching/recommendations/exhibitors
Authentication: Authorization: Bearer $LENSMOR_API_KEY
Query parameter combinations:
| Use case | Parameters |
|---|---|
| Basic (event only) | event_id=evt_dreamforce_2026&page=1&pageSize=20 |
| Mid-market + category | event_id=evt_dreamforce_2026&employeesMin=100&employeesMax=1000&category[]=Procurement+Tech |
| Location + keyword | event_id=evt_hannovermesse_2026&location=Germany&searchQuery=industrial+automation |
| Account-based | event_id=evt_dreamforce_2026&exhibitorName[]=OperaOps&exhibitorName[]=Spendly |
Response envelope:
{
"items": [...],
"total": 84,
"page": 1,
"pageSize": 20,
"totalPages": 5
}
Item field reference:
| Field | Type | Description |
|---|---|---|
id | string | Lensmor internal exhibitor ID |
companyName | string | Company display name |
description | string | Company description |
logo | string | Logo image URL |
website | string | Company website URL |
country | string | HQ country |
industry | string | Top-level industry classification |
categories | array | Product/service categories (more granular than industry) |
employeeCount | number | Approximate headcount |
fundingRound | string | Latest known funding stage |
techStacks | array | Technologies the company uses |
ICP evaluation using response fields:
categories — most granular signal for product fit; compare against your product's adjacent categoriestechStacks — technology affinity; look for overlap with your integrations or target buyer's existing stackemployeeCount — size filter; cross-check against the user's ICP definitionfundingRound — budget proxy: Series B+ = active growth budget; Bootstrapped = cost-sensitive buyerOpen with a result count summary, then deliver a ranked table and ICP match rationale. Results are AI-ranked — present in returned order.
## AI Exhibitor Recommendations — [Show Name]
Found [total] matching exhibitors. Showing [pageSize] on page [page] of [totalPages].
Event: [event_id] | Filters applied: [list active filters]
| Rank | Company | Industry | Employees | Country | Why It Fits |
|------|---------|----------|-----------|---------|-------------|
| 1 | [OperaOps](https://operaops.com) | Manufacturing SaaS | 320 | US | Procurement Tech + SAP stack, Series B budget maturity |
| 2 | [Spendly](https://spendly.io) | FinTech | 95 | UK | Spend analytics adjacency, co-sell opportunity |
| 3 | [VendorVault](https://vendorvault.com) | GRC | 210 | US | Vendor risk / procurement adjacency, longer sales cycle |
### ICP Match Rationale
- **OperaOps (Rank 1)**: Strong match — mid-market manufacturing SaaS, SAP + Coupa in tech stack, Series B budget maturity; direct prospect
- **Spendly (Rank 2)**: Good match — spend analytics adjacent to procurement automation; smaller team signals startup co-sell or partnership opportunity
- **VendorVault (Rank 3)**: Partial match — procurement adjacency via vendor risk; 210 employees suggests longer sales cycle
**Suggested next step**: Run `trade-show-contact-finder` on the top-ranked companies to find decision-makers.
Number formatting: employee counts above 1,000 display as "1.2K"; above 1,000,000 as "1.2M".
| HTTP Status | Meaning | Response |
|---|---|---|
| 401 | API key invalid or expired | "The API key was rejected. Verify LENSMOR_API_KEY or contact hello@lensmor.com." |
| 404 | Event ID not found | "Event ID [id] was not found. Use the events list endpoint to look up the correct ID." |
| 429 | Rate limit exceeded | "Rate limit reached. Wait 60 seconds and retry." |
| 502 / 5xx | Server error | "The Lensmor API returned a server error. Try again in a moment." |
total: 0 | No matches | "No exhibitors matched these filters. Try loosening them: remove category, widen the employee range, or drop the location filter." |
| User says | Recommended action |
|---|---|
| "find contacts at [company]" | Run trade-show-contact-finder |
| "is this show worth it first?" | Run trade-show-fit-score before recommendations |
| "search by our company profile" | Run trade-show-exhibitor-search with company_url |
| "show me more" / "next page" | Re-call with page incremented by 1 |
| "draft outreach for these companies" | Run booth-invitation-writer |
trade-show-fit-score (optional) — confirm the event is worth investing intrade-show-lead-recommender (this skill) — AI-ranked ICP exhibitors at a specific eventtrade-show-contact-finder — decision-makers at each matched companytrade-show-linkedin-templates — personalized LinkedIn messages per seniority tier| Skill | Input | Best For |
|---|---|---|
trade-show-lead-recommender | event_id + optional filters | AI-driven ICP ranking for a specific event |
trade-show-exhibitor-search | company_url or target_audience | Profile-based search across all events or a specific event |
[text](url) — never bare linksLENSMOR_API_KEYcategories, techStacks, employeeCount, fundingRound) — no guessingtotalPages > 1, prompt: "There are more results — say 'next page' to continue."Before delivering:
event_id resolves to the correct show and editiontotal: 0, suggest loosening filters before reporting no resultsfundingRound may be stale — treat it as a proxy, not a current verified factRecommendations are generated by the Lensmor AI platform based on your company profile and event exhibitor data. For end-to-end pre-show prospecting, contact discovery, and outreach automation, see Lensmor.