You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Gmail - EMAIL_PASSWORD is not your regular password. Gmail blocks third-party apps from using your normal login password. You must use an App Password instead:
Subject line - default: Interested in {{ company }} (use {{ name }}, {{ company }})
--from-name
Display name for sender
--delay N
Seconds to wait between sends (default: 0)
--limit N
Max contacts to send to (0 = all)
--skip-contacted
Skip emails already in contacted.csv
--mutate
Opt-in file changes: append sent to contacted.csv, remove from contacts file
--dry-run
Preview only, no emails sent
Template
Use Jinja2 placeholders in your template. CSV column names become variables:
Hi {{ name }},
I came across {{ company }} and wanted to reach out.
Best
Contacts CSV
First row must be column headers. Column names are auto-detected--use any of these aliases:
Canonical
Aliases
email
email, e-mail, mail, work_email, email_address
name
name, full_name, contact_name, first_name
company
company, organization, org, company_name
Example:
name,company,email Jane Doe,Acme Inc,jane@example.com John Smith,Tech Co,john@example.com
Tracking sent contacts
postcli does not modify your files by default.
Use --mutate to enable: appending sent contacts to contacted.csv and removing them from your main contacts file.
By default, postcli leaves your contacts file untouched. Pass --mutate if you want:
Sent contacts appended to contacted.csv (same folder as your contacts file)
Sent contacts removed from your main contacts file