Documentation Index
Fetch the complete documentation index at: https://docs.younegotiate.com/llms.txt
Use this file to discover all available pages before exploring further.
Real-World Example
After Maya sends a pending-member campaign, she opens Email Campaign Tracker. The tracker shows how many creditor profiles were targeted, how many messages were sent, delivered, and viewed, and lets her export the creditor profiles attached to that campaign run. Because SendGrid callbacks can arrive after the original job finishes, Maya can refresh the tracker to update the latest counts.Visual Flow
How It Should Work
- It should show campaign runs only for the logged-in EcoMail Hub user.
- It should track sent, delivered, and viewed counts from provider callbacks.
- It should allow exporting creditor profiles for a campaign run.
- It should allow refreshing the tracker snapshot when provider events arrived later.
How It Should Not Work
- It should not expose another user’s campaign tracking data.
- It should not mark emails delivered just because the app queued a send.
- It should not export a campaign with no creditor profiles attached.
Developer Notes
- SendGrid callbacks update EcoMail Hub tracking when the payload scope is
ecomailhub. - Tracking counts can be refreshed from recipient timestamp rows.
- This page is connected to the shared communication/webhook behavior documented in Communication Delivery & Webhooks.
Related App Areas
app/Livewire/ConsumerResponseManager/Communications/CampaignTracker/ListPage.phpapp/Services/EcoMailHubCampaignTrackerService.phpapp/Services/EcoMailHubCampaignRecipientTrackingService.phpapp/Http/Controllers/Webhooks/SendGridEmailWebhookController.phpapp/Exports/ConsumerResponseManager/CampaignCreditorProfilesExport.php

