| [ | |
| { | |
| "id": "msg0000", | |
| "account": "alice@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: your application 20", | |
| "snippet": "Next steps for the role.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0000.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0001", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T01:00:00", | |
| "subject": "Re: weekend 8", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0002", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T02:00:00", | |
| "subject": "Invoice 31", | |
| "snippet": "Thanks, paid $31.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0002.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0003", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T03:00:00", | |
| "subject": "Product updates 81", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0004", | |
| "account": "alice@startup.io", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T04:00:00", | |
| "subject": "Invoice 72", | |
| "snippet": "Your payment of $72 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0004.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0005", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T05:00:00", | |
| "subject": "Re: weekend 40", | |
| "snippet": "Let's meet up.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0005.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0006", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T06:00:00", | |
| "subject": "Weekly digest 48", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0007", | |
| "account": "alice@startup.io", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T07:00:00", | |
| "subject": "Hot deals 69", | |
| "snippet": "Act fast!!!", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0007.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0008", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T08:00:00", | |
| "subject": "Opportunity at Corp 39", | |
| "snippet": "We loved your profile.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0009", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T09:00:00", | |
| "subject": "Photos from 64", | |
| "snippet": "Let's meet up.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0010", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T10:00:00", | |
| "subject": "Payment due 66", | |
| "snippet": "Your payment of $66 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0011", | |
| "account": "alice@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T11:00:00", | |
| "subject": "Investor update 6", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0012", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T12:00:00", | |
| "subject": "Re: weekend 64", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0012.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0013", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T13:00:00", | |
| "subject": "Investor update 90", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0014", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T14:00:00", | |
| "subject": "Claim your prize 74", | |
| "snippet": "Act fast!!!", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0014.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0015", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T15:00:00", | |
| "subject": "You WON 45!!!", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0015.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0016", | |
| "account": "alice@startup.io", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T16:00:00", | |
| "subject": "Standup notes 8", | |
| "snippet": "MRR up this month.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0016.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0017", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T17:00:00", | |
| "subject": "Standup notes 64", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0017.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0018", | |
| "account": "alice@startup.io", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T18:00:00", | |
| "subject": "Product updates 56", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0019", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T19:00:00", | |
| "subject": "Standup notes 30", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0020", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T20:00:00", | |
| "subject": "2 stories you missed", | |
| "snippet": "Our latest features.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0021", | |
| "account": "alice@startup.io", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T21:00:00", | |
| "subject": "Deploy 69 failed", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0021.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0022", | |
| "account": "alice@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T22:00:00", | |
| "subject": "Re: weekend 84", | |
| "snippet": "Let's meet up.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0022.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0023", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T23:00:00", | |
| "subject": "Deploy 51 failed", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0024", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T00:00:00", | |
| "subject": "Invoice 25", | |
| "snippet": "Your payment of $25 is due.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0024.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0025", | |
| "account": "alice@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T01:00:00", | |
| "subject": "Dinner 7?", | |
| "snippet": "Let's meet up.", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0026", | |
| "account": "alice@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T02:00:00", | |
| "subject": "Opportunity at Corp 79", | |
| "snippet": "Next steps for the role.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0027", | |
| "account": "alice@startup.io", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T03:00:00", | |
| "subject": "Hot deals 33", | |
| "snippet": "Click to claim now.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0028", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T04:00:00", | |
| "subject": "Deploy 60 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0029", | |
| "account": "alice@startup.io", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T05:00:00", | |
| "subject": "Claim your prize 44", | |
| "snippet": "Act fast!!!", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0030", | |
| "account": "alice@startup.io", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T06:00:00", | |
| "subject": "Receipt 27", | |
| "snippet": "Thanks, paid $27.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0031", | |
| "account": "alice@startup.io", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T07:00:00", | |
| "subject": "Receipt 98", | |
| "snippet": "Thanks, paid $98.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0032", | |
| "account": "alice@startup.io", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T08:00:00", | |
| "subject": "Dinner 47?", | |
| "snippet": "Let's meet up.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0033", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T09:00:00", | |
| "subject": "Re: weekend 43", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0034", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T10:00:00", | |
| "subject": "You WON 30!!!", | |
| "snippet": "Act fast!!!", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0034.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0035", | |
| "account": "alice@startup.io", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T11:00:00", | |
| "subject": "Payment due 36", | |
| "snippet": "Thanks, paid $36.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0035.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0036", | |
| "account": "alice@startup.io", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T12:00:00", | |
| "subject": "Interview 58", | |
| "snippet": "We loved your profile.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0037", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T13:00:00", | |
| "subject": "Weekly digest 61", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0038", | |
| "account": "alice@startup.io", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T14:00:00", | |
| "subject": "Photos from 1", | |
| "snippet": "Let's meet up.", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0038.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0039", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T15:00:00", | |
| "subject": "Standup notes 92", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0040", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T16:00:00", | |
| "subject": "Interview 12", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0041", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T17:00:00", | |
| "subject": "Invoice 93", | |
| "snippet": "Your payment of $93 is due.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0042", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T18:00:00", | |
| "subject": "Standup notes 84", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0043", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T19:00:00", | |
| "subject": "Weekly digest 3", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0043.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0044", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T20:00:00", | |
| "subject": "Weekly digest 28", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0045", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T21:00:00", | |
| "subject": "Photos from 42", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0046", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T22:00:00", | |
| "subject": "Interview 59", | |
| "snippet": "Next steps for the role.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0046.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0047", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-02T23:00:00", | |
| "subject": "Photos from 3", | |
| "snippet": "Are you free Friday?", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0048", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T00:00:00", | |
| "subject": "Investor update 80", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0048.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0049", | |
| "account": "alice@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T01:00:00", | |
| "subject": "Photos from 72", | |
| "snippet": "Are you free Friday?", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0050", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T02:00:00", | |
| "subject": "Invoice 99", | |
| "snippet": "Your payment of $99 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0051", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T03:00:00", | |
| "subject": "Re: weekend 65", | |
| "snippet": "Sharing the album.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0052", | |
| "account": "alice@startup.io", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T04:00:00", | |
| "subject": "Standup notes 65", | |
| "snippet": "CI is red on main.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0053", | |
| "account": "alice@startup.io", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T05:00:00", | |
| "subject": "Payment due 51", | |
| "snippet": "Thanks, paid $51.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0054", | |
| "account": "alice@startup.io", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T06:00:00", | |
| "subject": "Receipt 28", | |
| "snippet": "Your payment of $28 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0054.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0055", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T07:00:00", | |
| "subject": "Hot deals 85", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0055.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0056", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T08:00:00", | |
| "subject": "Weekly digest 96", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0057", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T09:00:00", | |
| "subject": "Product updates 21", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0058", | |
| "account": "alice@startup.io", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T10:00:00", | |
| "subject": "Opportunity at Corp 41", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0058.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0059", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T11:00:00", | |
| "subject": "Standup notes 91", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0060", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T12:00:00", | |
| "subject": "Dinner 9?", | |
| "snippet": "Are you free Friday?", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0061", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T13:00:00", | |
| "subject": "Payment due 24", | |
| "snippet": "Thanks, paid $24.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0062", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T14:00:00", | |
| "subject": "Opportunity at Corp 52", | |
| "snippet": "We loved your profile.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0062.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0063", | |
| "account": "alice@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T15:00:00", | |
| "subject": "Hot deals 24", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0063.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0064", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T16:00:00", | |
| "subject": "Interview 11", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0064.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0065", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T17:00:00", | |
| "subject": "Deploy 2 failed", | |
| "snippet": "MRR up this month.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0066", | |
| "account": "alice@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T18:00:00", | |
| "subject": "Dinner 91?", | |
| "snippet": "Sharing the album.", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0066.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0067", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T19:00:00", | |
| "subject": "Product updates 40", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0068", | |
| "account": "alice@startup.io", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T20:00:00", | |
| "subject": "Hot deals 23", | |
| "snippet": "Limited time offer.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0069", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T21:00:00", | |
| "subject": "Receipt 94", | |
| "snippet": "Your payment of $94 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0070", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T22:00:00", | |
| "subject": "Receipt 85", | |
| "snippet": "Thanks, paid $85.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0071", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-03T23:00:00", | |
| "subject": "Deploy 65 failed", | |
| "snippet": "CI is red on main.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0071.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0072", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T00:00:00", | |
| "subject": "Claim your prize 94", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0073", | |
| "account": "alice@startup.io", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T01:00:00", | |
| "subject": "Weekly digest 2", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0073.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0074", | |
| "account": "alice@startup.io", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T02:00:00", | |
| "subject": "Claim your prize 49", | |
| "snippet": "Act fast!!!", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0075", | |
| "account": "alice@startup.io", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T03:00:00", | |
| "subject": "Standup notes 24", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0076", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T04:00:00", | |
| "subject": "Re: your application 71", | |
| "snippet": "Let's schedule a call.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0076.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0077", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T05:00:00", | |
| "subject": "1 stories you missed", | |
| "snippet": "Our latest features.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0078", | |
| "account": "alice@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T06:00:00", | |
| "subject": "You WON 26!!!", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0079", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T07:00:00", | |
| "subject": "Product updates 52", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0079.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0080", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T08:00:00", | |
| "subject": "You WON 30!!!", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0081", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T09:00:00", | |
| "subject": "Deploy 20 failed", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0082", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T10:00:00", | |
| "subject": "Claim your prize 55", | |
| "snippet": "Act fast!!!", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0082.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0083", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T11:00:00", | |
| "subject": "Claim your prize 88", | |
| "snippet": "Click to claim now.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0084", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T12:00:00", | |
| "subject": "You WON 47!!!", | |
| "snippet": "Act fast!!!", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0084.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0085", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T13:00:00", | |
| "subject": "Receipt 81", | |
| "snippet": "Invoice attached for $81.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0086", | |
| "account": "alice@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T14:00:00", | |
| "subject": "Receipt 96", | |
| "snippet": "Thanks, paid $96.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0087", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T15:00:00", | |
| "subject": "Re: your application 10", | |
| "snippet": "We loved your profile.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0088", | |
| "account": "alice@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T16:00:00", | |
| "subject": "Deploy 64 failed", | |
| "snippet": "MRR up this month.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0089", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T17:00:00", | |
| "subject": "Receipt 79", | |
| "snippet": "Thanks, paid $79.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0089.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0090", | |
| "account": "alice@startup.io", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T18:00:00", | |
| "subject": "Interview 84", | |
| "snippet": "We loved your profile.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0090.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0091", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T19:00:00", | |
| "subject": "Investor update 35", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0091.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0092", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T20:00:00", | |
| "subject": "Hot deals 67", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0092.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0093", | |
| "account": "alice@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T21:00:00", | |
| "subject": "Photos from 26", | |
| "snippet": "Are you free Friday?", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0094", | |
| "account": "alice@startup.io", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T22:00:00", | |
| "subject": "Payment due 65", | |
| "snippet": "Your payment of $65 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0095", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-04T23:00:00", | |
| "subject": "Product updates 10", | |
| "snippet": "Curated reads.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0096", | |
| "account": "alice@startup.io", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T00:00:00", | |
| "subject": "Interview 17", | |
| "snippet": "Next steps for the role.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0097", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T01:00:00", | |
| "subject": "Deploy 63 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0098", | |
| "account": "alice@startup.io", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T02:00:00", | |
| "subject": "Hot deals 58", | |
| "snippet": "Limited time offer.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0099", | |
| "account": "alice@gmail.com", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T03:00:00", | |
| "subject": "Re: your application 16", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0099.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0100", | |
| "account": "alice@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T04:00:00", | |
| "subject": "Receipt 26", | |
| "snippet": "Invoice attached for $26.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0100.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0101", | |
| "account": "alice@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T05:00:00", | |
| "subject": "Investor update 50", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0101.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0102", | |
| "account": "alice@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T06:00:00", | |
| "subject": "Invoice 36", | |
| "snippet": "Thanks, paid $36.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0103", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T07:00:00", | |
| "subject": "35 stories you missed", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0104", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T08:00:00", | |
| "subject": "Investor update 4", | |
| "snippet": "MRR up this month.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0105", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T09:00:00", | |
| "subject": "Hot deals 53", | |
| "snippet": "Limited time offer.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0106", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T10:00:00", | |
| "subject": "Dinner 17?", | |
| "snippet": "Sharing the album.", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0107", | |
| "account": "alice@startup.io", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T11:00:00", | |
| "subject": "Interview 95", | |
| "snippet": "Next steps for the role.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0107.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0108", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T12:00:00", | |
| "subject": "Investor update 72", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0109", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T13:00:00", | |
| "subject": "Receipt 27", | |
| "snippet": "Invoice attached for $27.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0109.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0110", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T14:00:00", | |
| "subject": "Standup notes 55", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0111", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T15:00:00", | |
| "subject": "Photos from 12", | |
| "snippet": "Sharing the album.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0111.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0112", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T16:00:00", | |
| "subject": "Product updates 3", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0113", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T17:00:00", | |
| "subject": "49 stories you missed", | |
| "snippet": "Our latest features.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0114", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T18:00:00", | |
| "subject": "Interview 17", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0115", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T19:00:00", | |
| "subject": "Investor update 52", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0116", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T20:00:00", | |
| "subject": "Invoice 17", | |
| "snippet": "Thanks, paid $17.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0116.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0117", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T21:00:00", | |
| "subject": "Receipt 51", | |
| "snippet": "Your payment of $51 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0118", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T22:00:00", | |
| "subject": "Weekly digest 20", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0119", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-05T23:00:00", | |
| "subject": "Invoice 1", | |
| "snippet": "Thanks, paid $1.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [ | |
| "data/images/msg0119.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0120", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T00:00:00", | |
| "subject": "81 stories you missed", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0121", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T01:00:00", | |
| "subject": "Dinner 75?", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0122", | |
| "account": "alice@startup.io", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T02:00:00", | |
| "subject": "Receipt 2", | |
| "snippet": "Invoice attached for $2.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0123", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T03:00:00", | |
| "subject": "Hot deals 32", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0123.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0124", | |
| "account": "alice@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T04:00:00", | |
| "subject": "Hot deals 84", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0124.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0125", | |
| "account": "alice@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T05:00:00", | |
| "subject": "Hot deals 83", | |
| "snippet": "Click to claim now.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0126", | |
| "account": "alice@gmail.com", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T06:00:00", | |
| "subject": "Re: your application 30", | |
| "snippet": "Next steps for the role.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0127", | |
| "account": "alice@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T07:00:00", | |
| "subject": "You WON 51!!!", | |
| "snippet": "Act fast!!!", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0127.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0128", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T08:00:00", | |
| "subject": "Payment due 27", | |
| "snippet": "Your payment of $27 is due.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0129", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T09:00:00", | |
| "subject": "34 stories you missed", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0130", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T10:00:00", | |
| "subject": "63 stories you missed", | |
| "snippet": "Our latest features.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0131", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T11:00:00", | |
| "subject": "Invoice 77", | |
| "snippet": "Thanks, paid $77.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0132", | |
| "account": "alice@startup.io", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T12:00:00", | |
| "subject": "Investor update 58", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0133", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T13:00:00", | |
| "subject": "Opportunity at Corp 25", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0134", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T14:00:00", | |
| "subject": "Deploy 48 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0134.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0135", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T15:00:00", | |
| "subject": "Re: your application 11", | |
| "snippet": "Next steps for the role.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0135.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0136", | |
| "account": "alice@startup.io", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T16:00:00", | |
| "subject": "49 stories you missed", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0137", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T17:00:00", | |
| "subject": "Deploy 26 failed", | |
| "snippet": "CI is red on main.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0137.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0138", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T18:00:00", | |
| "subject": "Investor update 4", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0139", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T19:00:00", | |
| "subject": "Invoice 49", | |
| "snippet": "Your payment of $49 is due.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0140", | |
| "account": "alice@startup.io", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T20:00:00", | |
| "subject": "Claim your prize 9", | |
| "snippet": "Limited time offer.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0141", | |
| "account": "alice@startup.io", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T21:00:00", | |
| "subject": "Photos from 6", | |
| "snippet": "Sharing the album.", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0141.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0142", | |
| "account": "alice@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T22:00:00", | |
| "subject": "Dinner 82?", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0143", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-06T23:00:00", | |
| "subject": "Deploy 50 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0144", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T00:00:00", | |
| "subject": "Product updates 2", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0144.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0145", | |
| "account": "alice@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T01:00:00", | |
| "subject": "Re: your application 59", | |
| "snippet": "Let's schedule a call.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0146", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T02:00:00", | |
| "subject": "Weekly digest 53", | |
| "snippet": "Curated reads.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0147", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T03:00:00", | |
| "subject": "Weekly digest 55", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0148", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T04:00:00", | |
| "subject": "Payment due 54", | |
| "snippet": "Your payment of $54 is due.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0149", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T05:00:00", | |
| "subject": "Investor update 80", | |
| "snippet": "CI is red on main.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0149.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0150", | |
| "account": "alice@startup.io", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T06:00:00", | |
| "subject": "Photos from 35", | |
| "snippet": "Are you free Friday?", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [ | |
| "data/images/msg0150.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0151", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T07:00:00", | |
| "subject": "Weekly digest 32", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0152", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T08:00:00", | |
| "subject": "Payment due 51", | |
| "snippet": "Thanks, paid $51.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0153", | |
| "account": "alice@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T09:00:00", | |
| "subject": "You WON 60!!!", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0154", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T10:00:00", | |
| "subject": "58 stories you missed", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0154.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0155", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T11:00:00", | |
| "subject": "Product updates 77", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0156", | |
| "account": "alice@startup.io", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T12:00:00", | |
| "subject": "Product updates 58", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0157", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T13:00:00", | |
| "subject": "Hot deals 80", | |
| "snippet": "Limited time offer.", | |
| "unread": true, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0158", | |
| "account": "alice@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T14:00:00", | |
| "subject": "Payment due 27", | |
| "snippet": "Your payment of $27 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0159", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T15:00:00", | |
| "subject": "Deploy 87 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0160", | |
| "account": "alice@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T16:00:00", | |
| "subject": "Deploy 71 failed", | |
| "snippet": "Blockers and wins.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/msg0160.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0161", | |
| "account": "alice@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T17:00:00", | |
| "subject": "You WON 71!!!", | |
| "snippet": "Limited time offer.", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [ | |
| "data/images/msg0161.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0162", | |
| "account": "alice@startup.io", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T18:00:00", | |
| "subject": "Investor update 37", | |
| "snippet": "Blockers and wins.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0163", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "mom@family.net", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T19:00:00", | |
| "subject": "Photos from 46", | |
| "snippet": "Sharing the album.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0164", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T20:00:00", | |
| "subject": "Deploy 94 failed", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0165", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T21:00:00", | |
| "subject": "Standup notes 15", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0166", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T22:00:00", | |
| "subject": "Weekly digest 2", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0167", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-07T23:00:00", | |
| "subject": "Interview 95", | |
| "snippet": "Let's schedule a call.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0168", | |
| "account": "alice@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T00:00:00", | |
| "subject": "Dinner 22?", | |
| "snippet": "Sharing the album.", | |
| "unread": false, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0169", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T01:00:00", | |
| "subject": "Weekly digest 39", | |
| "snippet": "Our latest features.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0170", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "promo@spam.biz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T02:00:00", | |
| "subject": "You WON 50!!!", | |
| "snippet": "Act fast!!!", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0171", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T03:00:00", | |
| "subject": "Weekly digest 61", | |
| "snippet": "Our latest features.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0171.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0172", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T04:00:00", | |
| "subject": "50 stories you missed", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0173", | |
| "account": "alice@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T05:00:00", | |
| "subject": "Product updates 6", | |
| "snippet": "Top headlines this week.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [ | |
| "data/images/msg0173.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0174", | |
| "account": "alice@startup.io", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T06:00:00", | |
| "subject": "Investor update 71", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0175", | |
| "account": "alice@startup.io", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T07:00:00", | |
| "subject": "Investor update 50", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0176", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "accounts@supplier.co", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T08:00:00", | |
| "subject": "Receipt 1", | |
| "snippet": "Your payment of $1 is due.", | |
| "unread": false, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0177", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "friend@gmail.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T09:00:00", | |
| "subject": "Dinner 59?", | |
| "snippet": "Are you free Friday?", | |
| "unread": true, | |
| "topic": "personal", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0178", | |
| "account": "alice@gmail.com", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T10:00:00", | |
| "subject": "Re: your application 56", | |
| "snippet": "Next steps for the role.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [ | |
| "data/images/msg0178.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "msg0179", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "billing@vendor.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T11:00:00", | |
| "subject": "Receipt 6", | |
| "snippet": "Thanks, paid $6.", | |
| "unread": true, | |
| "topic": "invoices", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0180", | |
| "account": "alice@gmail.com", | |
| "sender": "win@lottery.xyz", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T12:00:00", | |
| "subject": "You WON 66!!!", | |
| "snippet": "Act fast!!!", | |
| "unread": false, | |
| "topic": "spam", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0181", | |
| "account": "alice@gmail.com", | |
| "sender": "news@substack.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T13:00:00", | |
| "subject": "Weekly digest 4", | |
| "snippet": "Top headlines this week.", | |
| "unread": false, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0182", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T14:00:00", | |
| "subject": "Standup notes 37", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0183", | |
| "account": "alice@startup.io", | |
| "sender": "talent@bigco.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T15:00:00", | |
| "subject": "Re: your application 21", | |
| "snippet": "We loved your profile.", | |
| "unread": true, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0184", | |
| "account": "alice@startup.io", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T16:00:00", | |
| "subject": "Investor update 27", | |
| "snippet": "CI is red on main.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0185", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "noreply@medium.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T17:00:00", | |
| "subject": "24 stories you missed", | |
| "snippet": "Curated reads.", | |
| "unread": true, | |
| "topic": "newsletters", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0186", | |
| "account": "alice@gmail.com", | |
| "sender": "team@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T18:00:00", | |
| "subject": "Deploy 22 failed", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0187", | |
| "account": "alice@gmail.com", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T19:00:00", | |
| "subject": "Investor update 72", | |
| "snippet": "MRR up this month.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0188", | |
| "account": "alice@startup.io", | |
| "sender": "ci@startup.io", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T20:00:00", | |
| "subject": "Deploy 95 failed", | |
| "snippet": "CI is red on main.", | |
| "unread": false, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "msg0189", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "jobs@corp.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-08T21:00:00", | |
| "subject": "Opportunity at Corp 43", | |
| "snippet": "We loved your profile.", | |
| "unread": false, | |
| "topic": "recruiting", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "worm0_first", | |
| "account": "alice@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Cross thread 0", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "worm0_reply", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: Cross thread 0", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm0_reply.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "worm1_first", | |
| "account": "alice@startup.io", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Cross thread 1", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm1_first.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "worm1_reply", | |
| "account": "alice.personal@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: Cross thread 1", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "worm2_first", | |
| "account": "alice@startup.io", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Cross thread 2", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm2_first.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "worm2_reply", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: Cross thread 2", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "worm3_first", | |
| "account": "alice@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Cross thread 3", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm3_first.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "worm3_reply", | |
| "account": "alice@startup.io", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: Cross thread 3", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [], | |
| "has_image": false | |
| }, | |
| { | |
| "id": "worm4_first", | |
| "account": "alice@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Cross thread 4", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm4_first.png" | |
| ], | |
| "has_image": true | |
| }, | |
| { | |
| "id": "worm4_reply", | |
| "account": "alice.deals@gmail.com", | |
| "sender": "shared@partner.com", | |
| "recipient": "alice@gmail.com", | |
| "ts": "2026-05-01T00:00:00", | |
| "subject": "Re: Cross thread 4", | |
| "snippet": "Coordinating across accounts.", | |
| "unread": true, | |
| "topic": "startup_ops", | |
| "attachments": [ | |
| "data/images/worm4_reply.png" | |
| ], | |
| "has_image": true | |
| } | |
| ] |