Skip to main content
Search events directly from an exhibitor company name using a precision-first matcher. Use this endpoint when you have a company name, possibly incomplete, and want deduplicated event results without resolving exhibitor_id first.

When to use this endpoint

Use POST /external/exhibitors/search-events when your user asks “which events is this company associated with?” This endpoint returns events, not exhibitor records. It is useful for:
  • account planning from a company name
  • finding events where a target account appears as an exhibitor
  • enriching CRM accounts with event participation
  • starting an event workflow without first calling exhibitor search
This endpoint can consume credits. Check Credits balance before running it in bulk, and use a confirmation step when a user-facing workflow will spend credits.

Endpoint

POST /external/exhibitors/search-events

Authentication

See Authentication

Success status code

201 Created

Request body

NameRequiredTypeNotes
company_nameYesstringCompany name input. Incomplete names are allowed, but matching stays precision-first.
pageNointegerDefaults to 1.
pageSizeNointegerDefaults to 20; maximum 100.

Headers

NameRequiredTypeNotes
x-call-sourceNostringOptional usage source. Use api or agent; defaults to api.

Request example

curl -X POST "https://platform.lensmor.com/external/exhibitors/search-events" \
  -H "Authorization: Bearer $LENSMOR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "x-call-source: api" \
  -d '{"company_name":"Acme","page":1,"pageSize":20}'

Response example

{
  "items": [
    {
      "id": "123",
      "eventId": "139574",
      "name": "Shoptalk 2026",
      "nickname": null,
      "description": null,
      "url": null,
      "dateStart": "2026-03-15",
      "dateEnd": "2026-03-18",
      "venue": null,
      "city": "Las Vegas",
      "region": "Nevada",
      "country": "United States",
      "attendeeCount": null,
      "exhibitorCount": 100,
      "personnelCount": 50,
      "image": null,
      "dataSource": null,
      "matchedExhibitors": [
        {
          "id": "456",
          "companyName": "Shoptalk"
        }
      ]
    }
  ],
  "total": 1,
  "page": 1,
  "pageSize": 20,
  "totalPages": 1,
  "hasMore": false
}

Response fields

FieldDescription
itemsEvents associated with matched exhibitors.
id, eventIdEvent identifiers returned with each event.
name, nickname, description, urlEvent display and source fields.
dateStart, dateEndEvent date range.
venue, city, region, countryEvent location fields. Values can be null or empty strings when the event source does not provide normalized location metadata.
attendeeCount, exhibitorCount, personnelCountEvent scale and coverage fields when available.
matchedExhibitorsMatched company records that connect the input to the returned event. Treat this as the primary evidence that the company-name input matched the returned event.
total, page, pageSize, totalPages, hasMorePagination metadata.

Credit behavior

This endpoint currently consumes 50 credits per successful search attempt. If the account cannot spend the required credits, the API returns 402 Payment Required. Refresh Credits balance after successful searches when your UI or audit log needs final credit reconciliation. Use the returned event count, page count, and matchedExhibitors as the main value evidence for the search result.

Error responses

  • 400 Bad Request
  • 401 Unauthorized
  • 402 Payment Required
  • 429 Too Many Requests

Notes

  • This endpoint is separate from GET /external/exhibitors/events, which requires a known exhibitor_id.
  • This endpoint currently consumes 50 credits per successful search attempt. See Credits and access.
  • Compact-normalized queries shorter than 3 characters use exact-only matching after case, whitespace, and connector-punctuation normalization.
  • Longer queries use strict token or prefix admission instead of permissive contains matching.
  • No matches return an empty paginated success response rather than 404 Not Found.
  • matchedExhibitors contains only the admitted matched exhibitors that actually participate in the returned event, and event results are returned in deterministic recency order.