POST
/v1/senders/Connect sender
Connects an SMTP sending account — the same starting point as clicking “Connect Account” → SMTP in the app. The connection is verified live (Stynar actually logs in over SMTP, and IMAP too if you send those fields) before anything is saved, and credentials are encrypted at rest.
Trailing slash required, and SMTP only
Call this as /v1/senders/, not /v1/senders. Outlook accounts aren't supported here — connecting Outlook requires signing into Microsoft in a browser, which doesn't fit a server-to-server API call, so that stays a dashboard-only flow.
Request
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| fromName | string | Required | Display name. |
| fromEmail | string | Required | Sending address. |
| smtpHost | string | Required | Must be a real, publicly-reachable mail server — private/internal addresses are rejected. |
| smtpPort | number | Required | SMTP port. |
| smtpUser | string | Required | SMTP username. |
| smtpPassword | string | Required | SMTP password. |
| imapHost, imapPort, imapUser, imapPassword | string | Optional | Enables native reply sync. If you send any one of these, all four are required. |
curl -X POST "https://api.stynar.com/v1/senders/" \
-H "Authorization: Bearer esk_your_key_here" \
-H "Content-Type: application/json" \
-d '{"fromName":"Alex from Acme","fromEmail":"alex@yourdomain.com","smtpHost":"smtp.yourprovider.com","smtpPort":587,"smtpUser":"alex@yourdomain.com","smtpPassword":"your-smtp-password"}'Response
✓ 201 Created
201 response
{
"senderId": "sender_abc123",
"fromName": "Alex from Acme",
"fromEmail": "alex@yourdomain.com",
"smtpHost": "smtp.yourprovider.com",
"status": "VERIFIED",
"imapConnected": false
}Response fields
Errors
| Status | Code | Meaning |
|---|---|---|
| ✕ 422 Unprocessable Entity | VALIDATION_FAILED | SMTP (or IMAP) verification failed — the error message says why (auth vs. connection). |
| ✕ 403 Forbidden | API_ACCESS_DISABLED | You're at your plan's mailbox limit. |
| ✕ 401 Unauthorized | UNAUTHORIZED | Missing, malformed, unknown, revoked, or expired key. |
| ✕ 403 Forbidden | API_ACCESS_DISABLED | Your account doesn't currently have API access. |
| ✕ 403 Forbidden | INSUFFICIENT_SCOPE | The key doesn't have the scope this endpoint requires. |
| ✕ 404 Not Found | NOT_FOUND | Unknown route, or a resource that doesn't exist / isn't yours. |
| ✕ 409 Conflict | CONFLICT | The action can't be applied to the resource's current state. |
| ✕ 429 Too Many Requests | RATE_LIMIT_EXCEEDED | Per-minute or per-second limit hit. |
| ✕ 429 Too Many Requests | QUOTA_EXCEEDED | Monthly quota exhausted. |
| ✕ 500 Internal Server Error | INTERNAL_ERROR | Something broke on Stynar's end. |