A better packet than forty pages of screenshots
Legal Message Export is a Mac app that reads the local Messages database and produces a paginated PDF: a timestamp and sender on every message, a Bates number on every page, a cover page recording the source and its SHA-256 hash, and an optional declaration of authenticity. The client runs it on their own Mac, and nothing is uploaded to a vendor, including me.
What you get back
| Page | Contents |
|---|---|
| Cover | Participants (display name alongside the actual number or email), date range, message count, Bates range, source database path, SHA-256 of the imported snapshot, and the import and export timestamps. |
| Declaration (optional) | A six-paragraph fill-in-and-sign statement, pre-filled with the hash, message count, date range, and first Bates number. Closing attestation in US (28 U.S.C. § 1746), Canadian statutory declaration, UK statement of truth, or generic form. |
| Transcript | Chronological messages with date, time, and sender. Images inline; reactions folded onto the message they belong to; edited and unsent messages marked; other attachments listed by name, type, and size. |
Bates prefix, starting number, and padding are configurable, so a client's export can pick up where your production left off. Page numbering is continuous from the cover. Walk through the sample page by page →
How it fits your workflow
The client runs it (usually easiest)
Send the client the instructions below. They install the app, choose the conversation and range you asked for, and send back the PDF. Their messages stay on their Mac, and your office never has to take custody of the full database.
Your office runs it on a copy
The app can import a chat.db file (with its Attachments
folder alongside) copied from the client's Mac, so staff can run the export on an
office machine. No special permission is needed to open a copied file.
Instructions you can send a client
Please export our text messages using Legal Message Export (Mac): appcamp.com/legal-message-export/guides/export-imessages-for-a-lawyer/
- Conversation with: [name / number]
- Date range: [from – to], or the entire conversation
- Bates prefix: [PREFIX], starting at [number]
- Declaration: [include / leave out]. Please don't sign it until we've reviewed it.
- Don't delete anything from the conversation, and set Messages → Settings → General → Keep messages to "Forever."
Technical details for litigation support
- Import: the source
chat.dbis copied and never modified. The write-ahead log is folded into the copy so it's a complete, stable snapshot, which is then SHA-256 hashed and only ever opened read-only. - Verifiable: the snapshot stays on the Mac under
~/Library/Application Support/LegalMessageExport/Cases/, so the hash on the cover can be recomputed withshasum -a 256. Details and limits. - Scope of the hash: the message database only. Attachment files are separate and aren't covered.
- Message text is decoded from the
attributedBodyfield, where modern macOS stores most message text, not just the plaintextcolumn. - Time zone: timestamps are rendered in the Mac's current time zone, and the zone isn't printed. Note it where it matters.
- Distribution: signed with an Apple Developer ID and notarized. It's outside the Mac App Store because reading Messages requires Full Disk Access, which the sandbox prohibits.
- Network: a license check on launch and weekly thereafter, sending only the license key. It works offline for up to 30 days.
What it doesn't do
- It doesn't claim admissibility or certify anything. The declaration is a template, and the page says so.
- It doesn't read iPhones directly, iCloud, or anyone else's account. It reads a Mac's Messages database.
- It doesn't recover deleted messages.
- It doesn't replace a forensic examiner when authenticity is seriously contested.
Licensing for offices
The app is free to download, and browsing and search are free. A license unlocks the PDF export. Pricing is pay what feels fair, from $0 up. Every license, at any price, works on up to three Macs, so a small office is covered by one. Clients who can't pay can take the $0 license, and that's deliberate. Refunds within 14 days, no questions asked.
Need more than three machines, or have questions before recommending it to clients? Email support@appcamp.com. I'm one person, and replies usually come within a day.
Read it the way opposing counsel would
The sample is a fabricated five-page export: cover, declaration, transcript. It's the same format every real export uses.
Legal Message Export produces a documented record. Whether any court admits it is for that court to decide. Nothing on this site is legal advice.