Conversions API
Endpoint, authentication, request body, responses, and limits for recording leads and sales from your server.
Base URL: https://app.linkifunnels.com/api/v1
Authentication
Section titled “Authentication”Every request carries a workspace API token as a bearer token.
Authorization: Bearer lf_live_...Content-Type: application/jsonTokens are created under Settings, then Connect your site, then Manage tokens. A token has full access to this API for its workspace. Requests with a missing, revoked, or foreign token get 401 with {"error":"unauthorized"}.
POST /conversions
Section titled “POST /conversions”Records a lead or a sale against a click. For the guided version, including sales that arrive as a payment webhook, see Record a conversion via the API. For buttons that leave your site, see Track off-site CTAs.
| Field | Type | Required | Notes |
|---|---|---|---|
event |
string | Yes | lead or sale |
click_id |
string | Yes | The value of lf_cid from the redirect |
value_cents |
integer | No | Sale value in the smallest currency unit. Ignored for leads |
event_name |
string | No | Free text label |
customer |
object | No | See below |
customer.external_id |
string | Yes, inside customer |
Your identifier. Repeated calls with the same value update the same customer |
customer.email |
string | No | |
customer.name |
string | No | |
customer.avatar_url |
string | No | |
meta |
object | No | Stored as-is |
Response 201 Created
Section titled “Response 201 Created”{ "id": 48213, "event": "sale", "click_id": "0f2a1c9e-...", "link_id": 786, "customer": { "id": 1204, "external_id": "cus_8201" }, "occurred_at": "2026-09-10T09:41:12Z"}customer is null when no customer was sent.
Errors
Section titled “Errors”All errors return {"error": "<message>"}.
| Status | Message |
|---|---|
401 |
unauthorized |
422 |
invalid event |
422 |
click_id is required |
422 |
unknown click_id |
422 |
Validation messages from the event, for example a negative value |
429 |
rate_limited |
Rate limits
Section titled “Rate limits”| Scope | Limit |
|---|---|
| Per token | 1,000 requests per minute |
| Per IP address | 600 requests per minute |
Browser endpoint
Section titled “Browser endpoint”POST /browser/conversions is what the LinkiFunnels pixel calls. It authenticates with the public tracking key instead of a bearer token, accepts leads only, and is not meant to be called directly.