Light AIDocs Beta Open Light AI

API reference

GETList the repeat requests folded into a lead

GET /v1/leads/{lead_id}/touches: List the repeat requests folded into a lead

GEThttps://api.light-ai.app/v1/leads/{lead_id}/touches
Scopeleads:read
CredentialAPI key: Authorization: Bearer lai_live_… (or lai_test_…). Partner keys add Light-AI-Organization.
Test modeWorks with test keys against simulated test objects.

Path parameters#

lead_idstringrequired#
The lead id (lead_…). Id prefix lead_.

Query parameters#

limitinteger#
Page size, 1–100 (default 25). 1–100.
cursorstring#
next_cursor from the previous page. At most 400 characters.

Headers#

Light-AI-Organizationstring#
Partner keys: the connected organization to act for (org_…). Organization keys may omit it. Id prefix org_.
Light-AI-Versionstring#
Pin a dated API version (defaults to the key's version). One of: 2026-11-01.

Response 200#

A page of touches, newest first.

objectstringrequired#
Always list.
dataobject[]required#
data[].idstringrequired#
Id prefix lt_.
data[].objectstringrequired#
Always lead_touch.
data[].livemodeboolean#
false for objects created with a test key.
data[].lead_idstringrequired#
Id prefix lead_.
data[].sourcestringrequired#
One of: website_widget, api, google_ads_lead_form, google_lsa, meta_lead_ad, highlevel, hubspot, jobber, service_autopilot, realgreen, sweepandgo, deeplawn, zapier, n8n, make, crm_import, other, manual.
data[].source_detailstring | nullrequired#
data[].contactobject | nullrequired#
data[].messagestring | nullrequired#
data[].attributionobjectrequired#
data[].custom_fieldsobjectrequired#
data[].external_refobject | nullrequired#
data[].external_ref.systemstringrequired#
data[].external_ref.namespacestring | null#
data[].external_ref.idstringrequired#
data[].submitted_attimestamprequired#
RFC 3339 timestamp (UTC, milliseconds).
data[].created_attimestamprequired#
RFC 3339 timestamp (UTC, milliseconds).
data[].updated_attimestamp#
RFC 3339 timestamp (UTC, milliseconds).
data[].replayedboolean#
Always true.
has_morebooleanrequired#
next_cursorstring | nullrequired#
Pass as cursor to fetch the next page.

Errors#

StatusMeaning
400Bad request. bad_request, test_mode_mismatch, test_mode_unsupported, unsupported_api_version
401Missing or invalid credential. authentication_required, invalid_api_key, api_key_revoked, api_key_expired, api_key_suspended
403Not allowed. insufficient_scope, plan_upgrade_required, organization_paused, organization_off_season, api_disabled, api_access_not_enabled, ip_not_allowed, forbidden
404Not found (also for objects of other organizations and for organizations without an active grant).
422Validation failed. idempotency_key_reused
429Rate limited or daily cap reached. See Retry-After and the RateLimit headers. rate_limited, daily_cap_reached
500Unexpected server error. Safe to retry with exponential backoff; quote the Request-Id to support. internal_error
503Temporarily unavailable. Retry with exponential backoff. service_unavailable