Conversation
Google proxies all email images through googleusercontent.com servers, sending a UA like "Mozilla/5.0 ... Firefox/11.0 (via ggpht.com GoogleImageProxy)". The parseUserAgent function now checks for GoogleImageProxy/ggpht.com before browser detection, displaying "Gmail (Google Proxy)" instead of incorrectly showing "Firefox".
Add /emails/events/stats and /emails/events endpoints to the temps-email plugin so the Analytics tab works. Previously these routes were only in the unregistered temps-email-tracking plugin. - GET /emails/events/stats: aggregated open/click/bounce stats - GET /emails/events: paginated list of all tracking events - Fix event type aliases in EmailAnalytics component
- Add OpenAPI annotations to global events endpoints - Regenerate Node SDK from latest OpenAPI spec - New types: TrackingEventResponse, TrackedLinkResponse, EmailTrackingResponse, tracked_html_body, track_opens, track_clicks - New SDK functions: getEmailTracking, getEmailEvents, getEmailLinks, trackOpen, trackClick
Server: reject external URLs that don't start with http(s)://, contain # or ? characters, or aren't parseable. Sanitize by trimming whitespace and trailing slashes. Client: add react-hook-form validation with the same rules, show inline error messages, and surface server validation errors in toast.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Email Tracking
parseUserAgentnow identifies Google image proxy UAs instead of misreporting as "Firefox"GET /emails/events/statsandGET /emails/eventsfor the Analytics tab (previously 404)TrackingEventResponseincludesemail_idfield, fixing analytics crashUI
open/clickrender correctly alongsideopened/clickedSettings
#,?, non-http schemes, or invalid format; client shows inline validation errors and surfaces server errors in toastSDK
tracked_html_body,track_opens,track_clicks,TrackingEventResponse,TrackedLinkResponse,EmailTrackingResponse