Overview
Gorillaa Mail exposes a standard SMTP server alongside the REST API. If your framework, CMS, or language already has SMTP support built in (WordPress, Django, Rails, PHPmail(), etc.), you can start sending through Gorillaa without writing any API integration code.
Both interfaces use the same authentication, domain verification, and delivery pipeline — you get the same tracking, analytics, and deliverability regardless of which method you use.
SMTP server details
| Setting | Value |
|---|---|
| Host | smtp.gorillaa.one |
| Port (STARTTLS) | 587 — Recommended |
| Port (TLS) | 465 — Implicit TLS |
| Port (Alt) | 2525 — Use when ISP blocks 587 |
| Username | gorillaa |
| Password | Your API key (e.g. grl_live_xxxx...) |
| Encryption | TLS 1.3 required on all ports |
| Max message size | 25 MB |
The username is always the literal string
gorillaa. Your API key goes in the password field.Quick start
- Nodemailer (Node.js)
- Python (smtplib)
- PHP (PHPMailer)
- Ruby (Mail gem)
- Go (net/smtp)
- Django
- Laravel
- WordPress
Ports and encryption
Gorillaa SMTP supports three ports. All require TLS — plaintext connections are not accepted.| Port | Protocol | When to use |
|---|---|---|
| 587 | STARTTLS | Recommended. Connects in plaintext, then upgrades to TLS via the STARTTLS command. Supported by all modern clients. |
| 465 | Implicit TLS | TLS handshake happens immediately on connect. Use if your client prefers this mode. |
| 2525 | STARTTLS | Alternative port. Use if your ISP or hosting provider blocks port 587. Same behavior as 587. |
All ports negotiate TLS 1.3 with AES-256-GCM encryption when supported by the client.
Authentication
SMTP authentication uses theAUTH LOGIN or AUTH PLAIN mechanisms:
- Username: Always
gorillaa - Password: Your full Gorillaa API key
email:send scope. Domain-scoped keys work too — SMTP enforces the same domain restrictions as the REST API.
Test mode keys
You can usegrl_test_ keys via SMTP. The same test-mode limits and behavior apply as with the REST API (see Authentication → Test Mode).
SMTP vs REST API
Both methods produce identical results — same delivery pipeline, same tracking, same analytics. Choose based on your use case:| Feature | REST API | SMTP |
|---|---|---|
| Batch send | ✅ Up to 100 per request | ❌ One message per session |
| Scheduling | ✅ scheduledAt parameter | ❌ Not supported |
| Idempotency | ✅ idempotencyKey parameter | ❌ Not supported |
| Metadata & Tags | ✅ Custom metadata and tags | ❌ Not supported |
| Attachments | ✅ Via API body | ✅ Standard MIME attachments |
| Framework support | Requires HTTP client | ✅ Built into most frameworks |
| No code changes | Requires integration code | ✅ Config-only in many cases |
| Delivery tracking | ✅ Full event tracking | ✅ Full event tracking |
| Domain verification | ✅ Same requirements | ✅ Same requirements |
Troubleshooting
535 Authentication credentials invalid
535 Authentication credentials invalid
- Verify the username is exactly
gorillaa(not your email address). - Verify the password is your full API key (starts with
grl_live_orgrl_test_). - Check that the key has the
email:sendscope. - Check that the key hasn’t expired or been revoked.
Connection timeout
Connection timeout
- Confirm DNS resolves:
nslookup smtp.gorillaa.one - Your network may block the port. Try port
2525as an alternative. - Ensure your firewall allows outbound connections to
smtp.gorillaa.oneon the chosen port.
TLS handshake failure
TLS handshake failure
- Ensure your client supports TLS 1.2 or later.
- If using port 587, make sure your client sends the
STARTTLScommand (most libraries do this automatically). - If using port 465, configure your client for implicit TLS (sometimes called “SSL”).
550 Domain not verified
550 Domain not verified
- The
Fromaddress must use a domain you’ve verified in the dashboard. - Check domain status at Dashboard → Domains or via
GET /v1/domains. - See the Domain Setup Guide for DNS configuration.
452 Too many recipients
452 Too many recipients
- SMTP allows up to 50 recipients per message (same as the REST API).
- For larger sends, use the REST API’s batch endpoint or send multiple SMTP messages.
Verify connectivity
You can test SMTP connectivity withopenssl:
Protocol version: TLSv1.3 and Peer certificate: CN=smtp.gorillaa.one.