> ## 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.

# Lensmor API Documentation

> Lensmor API documentation for building event intelligence workflows, discovering trade shows, evaluating exhibitors, and unlocking contact data.

Build event intelligence workflows with the Lensmor API. Use it to discover trade shows, evaluate event fit, inspect exhibitor and personnel data, and unlock contact details when your team is ready to act.

Use this documentation to authenticate, make your first request, and integrate Lensmor event, exhibitor, personnel, contact, and recommendation resources into your own workflows.

Current documentation version: `v0.23.0`

## Base URL

`https://platform.lensmor.com`

All endpoint paths in this documentation are relative to this base URL. For example, `GET /external/events/list` resolves to `GET https://platform.lensmor.com/external/events/list`.

## Get an API key

Create an account at [app.lensmor.com](https://app.lensmor.com), upgrade to a paid subscription plan, then create a user API key from **Settings → API Keys**.

Use the key with the API base URL above:

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
Authorization: Bearer sk_your_api_key
```

## What you can build

<CardGroup cols={2}>
  <Card title="Find the right events" icon="calendar-search" href="/guides/quickstart">
    Search, filter, and rank trade shows by geography, category, quality, and profile fit.
  </Card>

  <Card title="Evaluate exhibitor opportunities" icon="building-2" href="/api-reference/exhibitors/search">
    Match target accounts or buyer profiles against exhibitor data and related event presence.
  </Card>

  <Card title="Unlock event-level coverage" icon="lock-keyhole-open" href="/guides/find-and-unlock-event">
    Move from preview results to full exhibitor and personnel access for a selected event.
  </Card>

  <Card title="Enrich contacts" icon="mail-check" href="/guides/unlock-contact-emails">
    Start asynchronous email unlock jobs and poll task status until contact data is ready.
  </Card>
</CardGroup>

## Which endpoint should I use?

| If you have...                        | Start with                                                                                                         | Why                                                                          |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------- |
| A keyword, geography, or date range   | [Events list](/api-reference/events/list)                                                                          | Broad event catalog search.                                                  |
| A company website or buyer profile    | [Apply profile and get recommended events](/api-reference/profile-matching/actions-apply-recommended-events-paged) | Returns ranked events from profile context.                                  |
| A known event ID                      | [Exhibitors list](/api-reference/exhibitors/list) or [Personnel list](/api-reference/personnel/list)               | Shows event-scoped companies and people, with preview/full access semantics. |
| A company name and you want companies | [Exhibitor company search](/api-reference/exhibitors/search-by-company-name)                                       | Precision-first company lookup.                                              |
| A company name and you want events    | [Exhibitor event search](/api-reference/exhibitors/search-events)                                                  | Finds events associated with that company. This can consume credits.         |
| Personnel IDs and you need emails     | [Unlock contact emails](/api-reference/contacts/unlock)                                                            | Starts an async email unlock task.                                           |

## Recommended integration path

<Steps>
  <Step title="Authenticate every request">
    Create a user API key and send it as `Authorization: Bearer sk_your_api_key`.
  </Step>

  <Step title="Check credits before paid workflows">
    Call `GET /external/credits/balance` before event unlocks, email unlocks, or reverse event searches.
  </Step>

  <Step title="Discover the event or account context">
    Use Events, Exhibitors, Personnel, Contacts, or Profile Matching endpoints depending on your workflow.
  </Step>

  <Step title="Respect preview and rate-limit semantics">
    Read `semantics` metadata, handle `402 Payment Required`, and back off on `429 Too Many Requests`.
  </Step>
</Steps>

## First request

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl "https://platform.lensmor.com/external/events/list?page=1&pageSize=20" \
  -H "Authorization: Bearer $LENSMOR_API_KEY"
```

If the request succeeds, continue with the [Quickstart guide](/guides/quickstart). If it fails, check [Authentication](/authentication) and [Error conventions](/concepts/errors).

## Available resources

* **Credits** — inspect the API key owner's current credit balance.
* **Events** — browse, score, rank, and inspect event details.
* **Exhibitors** — list exhibitors, search by company context, inspect profiles, and fetch related events.
* **Personnel** — list people, inspect profiles, and fetch related events.
* **Contacts** — search contacts, unlock emails, and poll unlock tasks.
* **Profile Matching** — apply profile inputs and retrieve recommended events or exhibitors.

## Shared conventions

* [Authentication](/authentication)
* [Error conventions](/concepts/errors)
* [Pagination conventions](/concepts/pagination)
* [Identifiers](/concepts/identifiers)
* [Credits and access](/concepts/credits-and-access)
* [Rate limits](/concepts/rate-limits)

## Stay current

Review the [Changelog](/changelog) for newly documented endpoints, behavior clarifications, and machine-readable resource updates.

If your integration needs a workflow that is not covered here, contact Lensmor support.
