How to export your Instantly Unibox replies: all 3 ways
Last updated: July 4, 2026 · Applies to Instantly's v2 API.
Short answer: Instantly has no native bulk export
for the Unibox — their help center says so directly. To get your replies out you can
(1) write a small script against the v2 /emails API,
(2) use the free open-source instantly-cli, or (3) use
ReplyVault, a one-click Chrome extension. All three need an Instantly
plan with API access (currently Hypergrowth and above).
Way 1: Natively, from the dashboard — you can't (here's what exists instead)
Instantly's own help center is direct about it:
"There is no direct way to bulk export all Unibox replies from the interface." — Instantly Help Center, "How to Export Data from Your Instantly Account"
The only in-interface option is copying replies out one email at a time. Bulk Unibox export is a long-standing feature request; Instantly's help doc itself points API-capable users at the Email API instead.
What the dashboard does export natively: your leads (CSV), campaign email activity (CSV of events — sends, opens, clicks, reply timestamps, but not reply text), email accounts (CSV), your blocklist (CSV), and campaign analytics as a JPG image. If you're leaving the platform, grab those too — we made a separate pre-cancellation backup checklist.
Way 2: Script the v2 API yourself (free, technical)
Plan requirement (applies to ways 2 and 3): the API needs an Instantly plan with API access — currently Hypergrowth and above. Instantly's docs are inconsistent about which tiers include it; what the app actually enforces (as of July 2026) is that Growth and trial accounts can't create v2 API keys.
The genuinely useful facts, so you don't have to reverse-engineer them:
- Endpoint:
GET https://api.instantly.ai/api/v2/emails, authenticated withAuthorization: Bearer <your v2 key>(create the key in Instantly → Settings → Integrations → API). - Pagination: cursor-based. Each response has
itemsandnext_starting_after; pass that value back asstarting_afterto get the next page. Stop when the cursor is absent — not when a page comes back short. - Page size:
limit=100max. - Rate limit: this endpoint allows 20 requests/minute — so ~2,000 emails/minute is the ceiling for every tool, including ours.
- Filters:
campaign_id,min_timestamp_created,max_timestamp_created,email_type(received/sent/manual),sort_order.
The core loop is about a dozen lines (Node 18+):
const KEY = process.env.INSTANTLY_API_KEY;
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
let cursor = null;
const all = [];
while (true) {
const url = 'https://api.instantly.ai/api/v2/emails?limit=100'
+ (cursor ? '&starting_after=' + cursor : '');
const res = await fetch(url, { headers: { Authorization: 'Bearer ' + KEY } });
if (res.status === 429) { await sleep(15000); continue; } // rate-limited: back off
const page = await res.json();
all.push(...page.items);
if (!page.next_starting_after) break; // no cursor = you have everything
cursor = page.next_starting_after;
await sleep(3000); // stay under 20 requests/min
}
Honest effort estimate: the loop above is the easy 80% and takes
maybe half an hour. A version you'd trust with a 50,000-email mailbox also needs
retry/backoff that honors Retry-After, a resume checkpoint so a crash at
email 40,000 doesn't restart from zero, a second call to
GET /api/v2/campaigns to turn campaign IDs into names, and real RFC 4180
CSV escaping with a UTF-8 BOM so Excel doesn't mangle commas, quotes, or non-English
text. Budget an afternoon to a day.
Field gotchas we hit building on this API:
bodyis an object{ text, html }— HTML-only emails need tag-stripping if you want a plain-text column.to_address_email_listis a comma-separated string, not an array (fun inside CSV).- Emails carry only
campaign_id, never the campaign name. ue_typemarks direction: 1 = sent from campaign, 2 = received, 3 = sent manually, 4 = scheduled (queued mail, not history).- There's no total-count endpoint, so you can't show "X of Y" progress.
The free CLI route: instantly-cli
If you'd rather not write the loop yourself,
instantly-cli
(open source, MIT, TypeScript) is a solid general-purpose CLI and MCP server covering
Instantly's whole v2 API — 156 commands, including listing and fetching Unibox emails
(npm install -g instantly-cli, then e.g. instantly email list --json).
It's the best free option if you live in a terminal. Fair caveats: it's not an
export-specialist tool, so paging through a large mailbox and converting the JSON
output into a clean CSV is still on you — and it needs the same API-capable plan.
Way 3: ReplyVault — the one-click version
Full disclosure: ReplyVault is our product. This page exists because we built the third option — the two routes above are real, free, and might be all you need.
ReplyVault is a Chrome/Edge extension that does everything in way 2 for you: paste your API key, pick filters (date, campaign, direction), and it exports your whole Unibox to Excel-ready CSV or JSON — pacing itself at the rate limit, resolving campaign names, surviving closed tabs mid-export. It runs entirely in your browser: your key and emails go only to Instantly, never to us.
The free tier exports your newest 200 emails with no license; unlimited is a $49 one-time license. Same hard requirement as the other API routes: an Instantly plan with API access (currently Hypergrowth and above) — if your settings show no API section, no tool on this page can help until you upgrade.
Add ReplyVault to Chrome — free
The 3 ways, compared
| By hand (interface) | API script / instantly-cli | ReplyVault | |
|---|---|---|---|
| Effort | One email at a time — hours to days | Half hour (happy path) to a day (robust); minutes per run after | ~2 minutes setup; export runs itself |
| Skills needed | None | Comfortable with APIs / a terminal | None |
| Cost | Free | Free | Free (newest 200) · $49 one-time unlimited |
| Instantly plan | Any | API access required (Hypergrowth+) | API access required (Hypergrowth+) |
| Output | Whatever you paste | JSON; CSV conversion is on you | Excel-ready CSV or JSON, campaign names resolved |
Whichever way you pick, the export speed is identical — Instantly's 20 requests/minute limit (~2,000 emails/minute) is the ceiling for everyone.
Frequently asked questions
Can you export Unibox replies directly from Instantly's dashboard?
No. Instantly's own help center states there is no direct way to bulk export Unibox replies from the interface. The native CSV exports cover leads, campaign activity events, email accounts and the blocklist — none of them contain reply text.
Which Instantly plans include API access?
Currently Hypergrowth and above. Instantly's docs are inconsistent about this, but the app itself won't issue v2 API keys on Growth or trial accounts — which rules out both the script route and ReplyVault on those tiers.
How fast can the API export a Unibox?
The /emails endpoint is limited to 20 requests per minute at 100 emails per request — about 2,000 emails per minute, no matter which tool you use. A 10,000-email Unibox takes ~5 minutes; 50,000 takes ~25.
Does Instantly's campaign activity CSV include reply text?
No. The activity export logs events — sends, opens, clicks, reply timestamps — but not the content of the replies. Reply bodies are only available through the Unibox interface or the API.
Is there a free way to export the whole Unibox?
Yes, two: write your own script against the v2 API, or use the open-source instantly-cli — both free but technical, and both still need a plan with API access. ReplyVault's free tier exports your newest 200 emails without code.
Related
- Backing up your Instantly account before you cancel or downgrade — the full pre-cancellation checklist.
- ReplyVault setup guide — install, API key, export, troubleshooting.