Integrations
Lantfly sends your data to the tools you already use, and lets those tools start runs.
| Integration | Triggers (Lantfly → tool) | Actions (tool → Lantfly) | Status |
|---|---|---|---|
| Zapier | Run succeeded, run failed, new mention, alert fired | Run actor, run task, find run | App coming soon |
| Make | Any event, through a custom webhook | Any API call, through the HTTP module | Works today with built-in modules |
| n8n | Run events, new mention, alert fired | Run actor, run task, get run, get dataset items, list mentions | Community node coming soon |
| Google Sheets | Results of each succeeded run, new mentions, a daily KPI row | Built in | |
| Webhooks | Any event to Slack, Discord or your own server | Built in |
All of them use the same pieces:
- The API at
https://lantfly.com/api/v3, with an API token sent asAuthorization: Bearer $LANTFLY_TOKEN. See Authentication and API tokens. - Events, delivered as signed webhooks.
Events
| Event | When |
|---|---|
ACTOR.RUN.CREATED | A run was created. |
ACTOR.RUN.SUCCEEDED | A run succeeded. |
ACTOR.RUN.FAILED | A run failed. |
ACTOR.RUN.TIMED_OUT | A run reached its timeout. |
ACTOR.RUN.ABORTED | A run was aborted. |
LISTENING.MENTION.CREATED | A listening project found a new visible mention. Needs a project. |
LISTENING.ALERT.FIRED | An alert rule of a listening project fired. Needs a project. |
Run events can be limited to one actor or one task. Listening events arrive within about a minute (one delivery per mention or alert, at most 25 per minute per subscription) and start after the latest existing mention: subscribing does not replay old ones.
REST hooks
Zapier, Make and n8n subscribe with REST hooks: the tool registers its own URL when you turn a workflow on and removes it when you turn it off. A REST hook is a normal webhook: it is signed, retried and shown on the Webhooks page.
| Endpoint | Use |
|---|---|
GET /api/v3/hooks/events | The events and their labels (also a good connection test). |
POST /api/v3/hooks | Subscribe a target_url to an event (or event_types), optionally filtered by actor_id or task_id; project_id is required for LISTENING.* events; source is zapier, make, n8n or other. The answer carries the signing secret, once. |
GET /api/v3/hooks | Your subscriptions. |
DELETE /api/v3/hooks/{hook} | Unsubscribe (REST hooks only). |
GET /api/v3/hooks/samples?event=…&limit=3 | Recent payloads of an event in the delivery shape, plus a top-level id: sample data for building a workflow, or a polling trigger. |
curl -X POST "https://lantfly.com/api/v3/hooks" \
-H "Authorization: Bearer $LANTFLY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"target_url": "https://example.com/lantfly-hook", "event": "ACTOR.RUN.SUCCEEDED", "source": "other"}'
Subscribing needs a full-access token (and, in an organization, the permission to manage automations). Read-only tokens can only list; tokens limited to permissions cannot use /api/v3/hooks.
Delivery payload
{
"user_id": "…",
"created_at": "2026-11-03T08:00:00.000Z",
"event_type": "ACTOR.RUN.SUCCEEDED",
"event_data": { "actor_id": "…", "task_id": null, "run_id": "…" },
"resource": { "id": "…", "status": "SUCCEEDED", "default_dataset_id": "…", "…": "the run as GET /api/v3/runs/{run} returns it" }
}
Listening events carry event_data with project_id and mention_id (or alert_id and rule_id), and resource is the mention or alert event plus project_id and project.
Every delivery is a POST with Content-Type: application/json and the headers X-Lantfly-Event, X-Lantfly-Webhook-Dispatch-Id and X-Lantfly-Signature: sha256=<HMAC-SHA256 of the raw body with the secret>. See Webhook signatures.