Skip to main content
Unlock full access to an event’s exhibitor and personnel results. Use this endpoint when preview list responses indicate that more event-scoped records require an event unlock.

When to use this endpoint

Call POST /external/events/:id/unlock only after you have confirmed that an event is relevant and the preview response indicates more records are available. Typical sequence:
  1. Find the event with Events list, Rank events, or profile matching.
  2. Preview exhibitors or personnel for that event.
  3. Read semantics.accessMode, semantics.counts, and semantics.unlock.
  4. Unlock the event if the user wants full event-scoped coverage.
Event unlocks can consume credits. Preview event-scoped results first so users understand what they are unlocking.

Endpoint

POST /external/events/:id/unlock

Authentication

See Authentication

Success status code

201 Created

Path parameters

NameRequiredTypeNotes
idYesstringSupports event id or eventId returned by event responses.

Headers

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

Request example

curl -X POST "https://platform.lensmor.com/external/events/139574/unlock" \
  -H "Authorization: Bearer $LENSMOR_API_KEY" \
  -H "x-call-source: api"

Response example

{
  "success": true,
  "alreadyUnlocked": false,
  "creditsUsed": 2000,
  "balanceAfter": {
    "subscriptionBalance": 0,
    "permanentBalance": 451021,
    "totalBalance": 451021,
    "unlimited": false
  },
  "event": {
    "id": "26855",
    "eventId": "26855",
    "name": "CES 2025"
  }
}

Response fields

FieldDescription
successWhether the unlock request completed successfully.
alreadyUnlockedtrue when the API key owner already had full access to the event.
creditsUsedNumber of credits charged by this request. 0 when the event was already unlocked.
balanceAfterRemaining balance snapshot after a paid unlock. null when no credits were charged, such as an already-unlocked event.
balanceAfter.subscriptionBalanceRemaining subscription credits.
balanceAfter.permanentBalanceRemaining gift/permanent credits.
balanceAfter.totalBalanceTotal remaining credits.
balanceAfter.unlimitedWhether the account has unlimited access semantics.
eventMinimal event identity for confirmation and audit logs.

Idempotency behavior

Unlocking the same event again does not spend credits again. The API returns alreadyUnlocked: true and creditsUsed: 0 when the event is already available to the API key owner. Your integration can use this behavior to safely retry after a network failure, but should still avoid repeated unlock calls in the UI.

Access after unlock

After a successful unlock, call event-scoped exhibitor or personnel list endpoints again. The list response should move from preview semantics to full-access semantics for that event.

Error responses

  • 401 Unauthorized
  • 402 Payment Required
  • 404 Not Found
  • 429 Too Many Requests

Notes

  • Event unlock currently costs 2000 credits when the event is not already unlocked.
  • If the event is already unlocked, alreadyUnlocked is true and creditsUsed is 0.
  • See Credits and access for shared credit behavior.