DocumentationOpen and click tracking
Open and click tracking
Tracking pixel and link redirect endpoints for engagement metrics.
When tracking is enabled on a send, MailingCore rewrites links and injects a transparent pixel. Recipients hit public track endpoints; no API key is required (the logId token is opaque).
Endpoints
| Type | Method | Endpoint | Behavior |
|---|---|---|---|
| Open | GET | /track/o/:logId | Returns 1×1 GIF; records open event |
| Click | GET | /track/c/:logId | Records click; 302 redirect to original URL |
:logId identifies the send log row. The API generates tracked URLs when building the message body.
How it works
- You send with tracking on (the default).
- HTML links become redirect URLs through
/track/c/.... - A pixel
<img src=".../track/o/...">is appended for opens. - Events feed analytics and optional webhooks.
Recipient opens email → GET /track/o/clk_abc → open recorded
Recipient clicks link → GET /track/c/clk_abc → click recorded → redirect to destination
Disabling tracking
Set trackingDisabled: true in POST /emails/send to skip the open pixel and click rewriting for that send. Tracking is per-send — there is no per-template flag. List-Unsubscribe and the unsubscribe link are still added, and the message delivers without any rewrite.
See Analytics for aggregated open and click rates.