client.emails(slim=False) -> pd.DataFrame
Download the email archive as a pandas DataFrame.
Parameters
When True, returns a smaller dataset without body text columns (content_markdown, content_html). Ideal for network analysis, sender/recipient graphs, and timeline visualizations.
Returns
pd.DataFrame with columns depending on the slim parameter.
Example
from jmail import JmailClient
client = JmailClient()
# Full dataset with body text
df = client.emails()
# Slim: no body text, much smaller download
df = client.emails(slim=True)
# Filter to Epstein-sent emails
sent = df[df.epstein_is_sender == True]
print(f"Epstein sent {len(sent)} emails")
Columns (slim)
| Column | Type | Description |
|---|
id | int | Unique email ID |
doc_id | string | Thread grouping ID |
sender | string | Sender email/name |
subject | string | Email subject line |
to_recipients | json | To recipients |
cc_recipients | json | CC recipients |
bcc_recipients | json | BCC recipients |
sent_at | timestamp | Send date |
account_email | string | Source account |
email_drop_id | string | Source identifier |
epstein_is_sender | bool | Whether Epstein sent this email |
Additional Columns (full)
| Column | Type | Description |
|---|
content_markdown | string | Email body as Markdown |
content_html | string | Email body as HTML |
attachments | int | Number of attachments |
Direct URLs
https://data.jmail.world/v1/emails.parquet
https://data.jmail.world/v1/emails-slim.parquet
https://data.jmail.world/v1/emails.ndjson.gz
https://data.jmail.world/v1/emails-slim.ndjson.gz