Retargeting pixels
A retargeting pixel only works if it executes in the visitor’s
browser. A normal Elido redirect is a 302 Location: from the edge —
the browser never loads HTML, so no pixel fires. To support pixels,
opt-in links can show a brief HTML splash that runs the pixel snippets
and then forwards to the destination.
You configure pixel IDs once per workspace, then flip show_splash
on whichever links you want pixels to fire on.
Configure pixels
curl -X PUT \
https://api.elido.app/v1/workspaces/1/pixels \
-H "Authorization: Bearer $ELIDO_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"meta_pixel_id": "1234567890",
"google_id": "AW-1234567890",
"linkedin_id": "1234567",
"tiktok_id": "C4ABCDEF1GHI23JKL456"
}'| Field | Format |
|---|---|
meta_pixel_id | Numeric Meta (Facebook) Pixel ID |
google_id | AW-..., G-..., or UA-... |
linkedin_id | Numeric LinkedIn Insight Tag partner ID |
tiktok_id | TikTok pixel ID (alphanumeric) |
PUT is upsert — omitted fields stay unchanged, empty strings clear the value. The same record holds Stripe/Shopify webhook secrets used by Conversion tracking.
The endpoint is workspace.pixels.manage only — admin-or-above. Reads
require the same permission so secrets don’t leak to viewers.
Enable the splash on a link
curl -X PATCH \
https://api.elido.app/v1/workspaces/1/links/42 \
-H "Authorization: Bearer $ELIDO_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "show_splash": true }'show_splash defaults false so the fast 302 path stays the
default. When true and the workspace has at least one pixel
configured, the edge serves an HTML splash instead of a redirect.
What the splash does
The edge renders a bare HTML page with:
- The configured pixel snippets, copied from the official docs:
fbq(Meta),gtag(Google), the LinkedIn Insight Tag, and the TikTok pixel. - A JavaScript redirect to the destination on a 1.5-second timer
(configurable per-deployment via
FallbackDelayMs). - A
<noscript>manual link in case JavaScript is disabled. - Workspace branding (logo, primary color) if White-label is enabled.
Pixels fire in parallel; the redirect doesn’t wait on them. If a pixel is slow or rejects the request, the redirect still happens at the timeout.
Why per-link, not per-workspace?
Some destinations should never see a splash — a download link on a
status page, an oncall paging URL, anything that has to be
single-click reliable. Making show_splash per-link lets you fire
pixels on the marketing surface and skip them on operational links
sharing the same workspace.
Inspect
curl https://api.elido.app/v1/workspaces/1/pixels \
-H "Authorization: Bearer $ELIDO_TOKEN"{
"workspace_id": 1,
"meta_pixel_id": "1234567890",
"google_id": "AW-1234567890",
"linkedin_id": "1234567",
"tiktok_id": "C4ABCDEF1GHI23JKL456",
"stripe_webhook_set": true,
"shopify_webhook_set": false,
"updated_at": "2026-05-01T12:00:00Z"
}Webhook secrets are never returned — only the boolean
*_webhook_set flags. Rotate by setting a new value via PUT.
Clear all
curl -X DELETE \
https://api.elido.app/v1/workspaces/1/pixels \
-H "Authorization: Bearer $ELIDO_TOKEN"This nulls every field at once. Splash-enabled links revert to fast redirects on the next cache refresh (≤60s).
Dashboard
Settings → Pixels has a per-platform input field with a deep-link to each platform’s docs and a “Remove all” button. The per-link splash toggle is on the link edit dialog under Behaviour → Show conversion splash.