The suppression system allows you to mark the next open event for a specific email as sender-suppressed. This is useful for handling Gmail’s image proxy behavior, where Gmail pre-fetches images before the user actually opens the email.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/shlokjain2031/email-tracker-extension/llms.txt
Use this file to discover all available pages before exploring further.
Mark suppress next
Request body
The email ID to mark for suppression. Must match the
email_id in the tracking token.Response
Indicates whether the request was successful
The email ID that was marked for suppression (only present on success)
Unix timestamp in milliseconds when the suppression signal was recorded (only present on success)
Error message (only present on failure)
Example request
Example response (success)
Example response (error)
How suppression works
- Send suppression signal: Call
/mark-suppress-nextwith the email ID before Gmail’s proxy fetches the image - Consume-once semantics: The suppression signal is consumed on the next pixel hit for that email
- TTL fallback: Unused signals expire after 10 seconds (configurable)
- Latency tracking: When a Gmail proxy hit consumes a signal, the latency is recorded
Example workflow
Suppression configuration
The suppression system has the following limits:- TTL: 10,000ms (10 seconds) - Suppression signals expire if not consumed
- Map limit: 10,000 active email IDs - Oldest entries are evicted when limit is reached
- Event limit: 5,000 debug events retained for monitoring
Metrics endpoints
The following endpoints provide monitoring and debugging information for the suppression system. These endpoints do not require authentication.Gmail proxy latency
Response
Number of latency samples collected
Minimum latency in milliseconds
Maximum latency in milliseconds
Average latency in milliseconds
50th percentile (median) latency
90th percentile latency
95th percentile latency
99th percentile latency
Example request
Example response
Suppress signals
Response
Total number of suppression signals received (lifetime counter)
Number of email IDs currently in the suppression map
Time-to-live for suppression signals in milliseconds
Array of recent suppression debug events
Event type:
mark_suppress_next, google_proxy_hit, suppression_consumed, or suppression_expiredEmail ID associated with the event
Unix timestamp in milliseconds when the event occurred
IP address (normalized)
User agent string
Time between suppression signal and consumption (only for consumed/proxy events)
Whether a suppression signal was pending (only for proxy events)
Example request
Example response
Suppression debug
Response
Number of email IDs currently in the suppression map
Time-to-live for suppression signals in milliseconds
Array of all recent suppression debug events (same structure as
suppress-signals endpoint)Example request
Example response
Gmail proxy detection
The server automatically detects Gmail proxy requests using:- User-Agent: Contains
googleimageproxy - IP ranges: Matches known Google proxy prefixes:
66.249.*64.233.*74.125.*