Install
openclaw skills install @weilun88313/trade-show-lead-recommenderRetrieve Lensmor exhibitor recommendations for a specific trade show and distinguish ranked matches from unranked fallback records. "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 @weilun88313/trade-show-lead-recommenderRetrieve event-scoped exhibitor recommendations from Lensmor. The endpoint may return either populated recommendation metadata or an unranked event-exhibitor fallback. Never call fallback rows AI-ranked.
[ -n "$LENSMOR_API_KEY" ] && echo "ok" || echo "missing"
If missing, stop and direct the user to obtain a Lensmor API key. Never print its value.
If only a show name is available, call:
GET https://platform.lensmor.com/external/events/list?keyword={show+name}
Authenticate the event lookup as well as the recommendation request. Every Lensmor API call in this workflow must send Authorization: Bearer $LENSMOR_API_KEY; never call the event lookup without the header.
curl -sS "https://platform.lensmor.com/external/events/list?keyword=MEDICA%202026" \
-H "Authorization: Bearer $LENSMOR_API_KEY"
Use the matching items[].id or items[].eventId. Confirm the year and edition before continuing. Do not use query= because it is not a supported event filter.
The recommendations endpoint accepts:
| Parameter | Type | Notes |
|---|---|---|
event_id | string | Required |
location | string or repeated string | Country or region filter |
searchQuery | string | Company-name or description search |
exhibitorName | string or repeated string | Exact account filter |
category | string or repeated string | Category filter |
industry | string or repeated string | Industry filter |
employeesMin, employeesMax | integer | Company-size range |
page, pageSize | integer | Pagination; max page size 100 |
Use repeated parameter names for arrays, for example:
event_id=12740&category=Medical%20Devices&category=Drug%20Delivery&page=1&pageSize=20
Endpoint: GET https://platform.lensmor.com/external/profile-matching/recommendations/exhibitors
Authentication: Authorization: Bearer $LENSMOR_API_KEY
The response contains items, pagination fields, and may contain:
recommendationProcessingshow_refresh_hintItem recommendation fields include:
isRecommendedrecommendationRankmatchStatusmatchScorematchTierreasonApply this gate before writing the result:
recommendationProcessing is true, say recommendations are still processing. Do not rank the rows.isRecommended: true, a non-null recommendationRank, matchScore, matchTier, or reason.show_refresh_hint is true, report only: The API returned show_refresh_hint=true; this flag does not identify a cause or required action. Do not mention profile updates or prescribe changes unless the API returns that instruction separately.Useful company fields include companyName, description, website, country, industry, categories, employeeCount, fundingRound, and techStacks.
For populated recommendations:
## Exhibitor Recommendations — [Show]
Found [total] records; [N] returned rows contain recommendation evidence.
| Rank | Company | Match | Tier | Why |
|---:|---|---:|---|---|
| [recommendationRank] | [Company](website) | [matchScore] | [matchTier] | [reason] |
For fallback results:
## Event Exhibitors — Recommendation Data Not Available
The API returned [total] event exhibitors, but the current page does not contain populated recommendation scores, ranks, or reasons. The order below is not an ICP ranking.
| Company | Industry | Categories | Employees | Country |
|---|---|---|---:|---|
| [Company](website) | [industry] | [categories] | [employeeCount] | [country] |
[Show refresh hint, if returned]
| Condition | Response behavior |
|---|---|
| 401 | API key invalid or expired |
| 404 | Event ID was not found; resolve the current edition again |
| 429 | Wait for the rate-limit window and retry |
total: 0 | Loosen filters one at a time |
| Recommendation fields empty | Use the unranked fallback format |
trade-show-contact-finder for the top accountstrade-show-exhibitor-search for factual filtering; do not prescribe profile changes from fallback state alonebooth-invitation-writertrade-show-fit-scoreLENSMOR_API_KEY or raw authorization headers.fundingRound and company metadata as potentially stale profile signals.show_refresh_hint.show_refresh_hint is the only signal, do not mention profile updates at all; report the flag and its uncertainty boundary only.trade-show-contact-finder, say find relevant contacts; do not promise decision-makers or verified authority.Recommendations and exhibitor records are sourced from the Lensmor platform. For pre-show prospecting and contact discovery, see Lensmor.