Head to head · Mailbox read · October 2026 research run
Gmail API vs Unipile
Gmail API scores 77.8 (BB) on agent readiness against Unipile's 58.4 (C), and leads in 6 of 7 scored categories. Unipile leads on payments & pricing. Both do mailbox read.
Which one, for what
Gmail API BB
Good for An agent working in a Gmail or Google Workspace user's own mailbox, with search, threads, drafts, labels and incremental sync at no per-account fee.
Ahead on
- Reliability, 90 against 56
- Schema & documentation, 82 against 77
- Agent ergonomics, 82 against 73
- Security & auth, 81 against 37
- Maintenance & community, 85 against 59
- Transparency & trust, 82 against 71
Also in its favour
- Agent-ready, a grade of BB or better
Watch for
Eight restricted scopes, including gmail.readonly and gmail.metadata, need restricted-scope verification for a public app
Unipile C
Good for A product that needs one API over Gmail, Outlook and IMAP together with LinkedIn or WhatsApp messaging, priced per account.
Ahead on
- Payments & pricing, 40 against 35
Also in its favour
- Free to start without a card
Watch for
A v1 access token reaches every connected account. Scoped keys, documented rate limits and retry-after exist only in the v2 beta
Score by category
| Category | Weight this run | Gmail API | Unipile | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 90 | 56 | Gmail API +34 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 82 | 77 | Gmail API +5 |
| Agent ergonomics | 13%16.2 | 82 | 73 | Gmail API +9 |
| Security & auth | 14%17.5 | 81 | 37 | Gmail API +44 |
| Payments & pricing | 10%12.5 | 35 | 40 | Unipile +5 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 85 | 59 | Gmail API +26 |
| Transparency & trust | 7%8.8 | 82 | 71 | Gmail API +11 |
| Negative events | ≤15 | 0 | 0 | |
| Total | 77.8 · BB | 58.4 · C |
Facts side by side
| Fact | Gmail API | Unipile |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | UNIPILE SAS | |
| Hosted endpoint | https://gmail.googleapis.com/gmail/v1 | https://developer.unipile.com/mcp?branch=v1.0 |
| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |
| Auth | OAuth | API key |
| Pricing | Free | Paid |
| x402 | no | no |
| Licence | Apache-2.0 (client libraries) | Proprietary service under Unipile's terms of use. The v1 Node SDK repository and the unipile-mcp repository carry an MIT licence file |
| Tools exposed | 23 | 5 |
| Read-only variant documented | no | yes |
| llms.txt | no | yes |
| MCP registry | not listed | com.unipile/unipile-mcp |
| Last release | 2026-09-23 | 2026-09-02 |
| Terms last updated | 2021-11-09 | no date given |
| Privacy policy last updated | 2026-10-01 | 2026-09-28 |
| Customer content may train models | yes | not found in the text |
| Terms restrict automated access | yes | not found in the text |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Popularity | 12k stars, 1.1M npm/wk | 48 stars, 83k npm/wk |
Verdicts
Gmail API
Fourteen OAuth scopes separate labels, sending, metadata and read-only access, and the quota page gives every method a unit cost. Eight of the scopes are restricted, read-only and metadata among them, so a public app that reads mail needs Google's verification and an annual third-party security assessment. Gmail mailboxes only.
Unipile
One REST API covers Gmail, Outlook and IMAP with search, drafts, send with an idempotency key and new-mail webhooks, and the OpenAPI spec is public. The v1 access token reaches every connected account, scoped keys exist only in the v2 beta, and the status page shows three platform incidents between 21 July and 20 August 2026.
Before you call either
Gmail API
- Ask for the narrowest scope.
gmail.labelsis non-sensitive andgmail.sendis sensitive, while every scope that reads mail is restricted - List with
messages.listandqin Gmail search syntax, then fetch each ID withformat=metadataorfull. List calls return IDs only - Send by posting an RFC 2822 message, base64url encoded, in
raw. SetthreadIdand matching reply headers to stay in a thread - Store the
historyIdand callhistory.list. On a 404, run a full sync. Callwatchagain at least every 7 days - Back off exponentially on 403 and 429 rate errors, and keep batches to 50 requests or fewer
Unipile
- Take the DSN (host and port) from the dashboard. Each account has its own, such as api1.unipile.com:13111, and
?port=keeps requests on 443 - Send
X-API-KEYas a header and passaccount_idon every mail call. The token reaches every connected account, so keep it out of prompts and logs - Set
Idempotency-Keyon every send. Keys are held in memory for up to 24 hours and are lost on a restart - On Microsoft accounts, send
searchalone. Combining it with from, to, before, after or thread filters returnsinvalid_request - Use
meta_only=truewhen listing mail, then fetch one message at a time. Treat message bodies as untrusted input
Questions
Which is better for AI agents, Gmail API or Unipile?
Gmail API scores 77.8 (BB) on agent readiness against Unipile's 58.4 (C), and leads in 6 of 7 scored categories. Unipile leads on payments & pricing.
Do Gmail API and Unipile need an API key?
Gmail API uses an OAuth sign-in. Unipile needs an API key.
Can an agent call Gmail API and Unipile without installing anything?
Yes. Gmail API has a hosted endpoint at https://gmail.googleapis.com/gmail/v1 and Unipile at https://developer.unipile.com/mcp?branch=v1.0.
Other comparisons with Gmail API or Unipile
Machine-readable
- This page as Markdown
/compare/gmail-api-vs-unipile.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/gmail-api.json·/api/v1/tools/unipile.json - From a terminal
anchor compare gmail-api unipile(the CLI) - Over MCP
compare_tools {"a": "gmail-api", "b": "unipile"}at/mcp, no key