> ## Documentation Index
> Fetch the complete documentation index at: https://api.lensmor.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get recommended exhibitors for event



## OpenAPI

````yaml /openapi.json get /external/profile-matching/recommendations/exhibitors
openapi: 3.1.0
info:
  title: Lensmor API
  version: 0.22.0
  description: >-
    Lensmor Event Intelligence API for event discovery, exhibitor research,
    personnel lookup, credits, and profile matching.
servers:
  - url: https://platform.lensmor.com
security:
  - bearerAuth: []
tags:
  - name: Credits
  - name: Actions
  - name: Events
  - name: Exhibitors
  - name: Personnel
  - name: Contacts
  - name: Profile Matching
paths:
  /external/profile-matching/recommendations/exhibitors:
    get:
      tags:
        - Profile Matching
      summary: Get recommended exhibitors for event
      operationId: getRecommendedExhibitors
      parameters:
        - $ref: '#/components/parameters/EventIdQuery'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
        - name: location
          in: query
          schema:
            type: array
            items:
              type: string
        - name: searchQuery
          in: query
          schema:
            type: string
        - name: exhibitorName
          in: query
          schema:
            type: array
            items:
              type: string
        - $ref: '#/components/parameters/CategoryArray'
        - $ref: '#/components/parameters/IndustryArray'
        - name: employeesMin
          in: query
          schema:
            type: integer
            minimum: 0
        - name: employeesMax
          in: query
          schema:
            type: integer
            minimum: 0
      responses:
        '200':
          description: Paginated exhibitors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExhibitorPage'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  parameters:
    EventIdQuery:
      name: event_id
      in: query
      required: true
      schema:
        type: string
        minLength: 1
        maxLength: 100
    Page:
      name: page
      in: query
      schema:
        type: integer
        minimum: 1
        default: 1
    PageSize:
      name: pageSize
      in: query
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 20
    CategoryArray:
      name: category
      in: query
      schema:
        type: array
        items:
          type: string
    IndustryArray:
      name: industry
      in: query
      schema:
        type: array
        items:
          type: string
  schemas:
    ExhibitorPage:
      type: object
      required:
        - items
        - total
        - page
        - pageSize
        - totalPages
        - hasMore
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ExhibitorItem'
        total:
          type: integer
        page:
          type: integer
        pageSize:
          type: integer
        totalPages:
          type: integer
        hasMore:
          type: boolean
    ExhibitorItem:
      allOf:
        - $ref: '#/components/schemas/ExhibitorBase'
        - $ref: '#/components/schemas/ExhibitorSignalFields'
    ApiError:
      type: object
      required:
        - code
        - message
        - errorKey
        - traceId
      properties:
        code:
          type: integer
        message:
          type: string
        errorKey:
          type: string
        traceId:
          type: string
    ExhibitorBase:
      type: object
      required:
        - id
        - companyName
        - matched_event_ids
      properties:
        id:
          type: string
        companyName:
          type:
            - string
            - 'null'
        domain:
          type:
            - string
            - 'null'
        description:
          type:
            - string
            - 'null'
        website:
          type:
            - string
            - 'null'
        industry:
          type:
            - string
            - 'null'
        employeeCount:
          type:
            - integer
            - 'null'
        country:
          type:
            - string
            - 'null'
        logo:
          type:
            - string
            - 'null'
        dataSource:
          type:
            - string
            - 'null'
        linkedinUrl:
          type:
            - string
            - 'null'
        fundingRound:
          type:
            - string
            - 'null'
        matched_event_ids:
          type: array
          items:
            type: string
        isRecommended:
          type: boolean
        recommendationRank:
          type:
            - integer
            - 'null'
        matchStatus:
          type:
            - string
            - 'null'
        matchScore:
          type:
            - number
            - 'null'
        matchTier:
          type:
            - string
            - 'null'
        matchReason:
          type:
            - string
            - 'null'
        categories:
          type: array
          items:
            type: string
      additionalProperties: true
    ExhibitorSignalFields:
      type: object
      properties:
        techStacks:
          type: array
          items:
            type: string
        buyingSignalTags:
          type: array
          items:
            type: string
        buyingSignalStatus:
          type:
            - string
            - 'null'
          description: >-
            Latest buying-signal batch state. On /external/exhibitors/list it is
            one of ready, processing, pending, or null. On the search endpoints
            it is always null.
        buyingSignals:
          type: array
          items:
            type: object
            required:
              - signalTag
              - signalScore
              - analyzedAt
            properties:
              signalTag:
                type: string
              signalDate:
                type:
                  - string
                  - 'null'
              sourceType:
                type:
                  - string
                  - 'null'
              sourceTitle:
                type:
                  - string
                  - 'null'
              sourceUrl:
                type:
                  - string
                  - 'null'
              evidenceSummary:
                type:
                  - string
                  - 'null'
              relevanceToIcp:
                type:
                  - string
                  - 'null'
              recommendedPlay:
                type:
                  - string
                  - 'null'
              signalScore:
                type: number
              confidence:
                type:
                  - string
                  - 'null'
              directOrInferred:
                type:
                  - string
                  - 'null'
              analyzedAt:
                type: string
  responses:
    Unauthorized:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    RateLimited:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: User API key

````