Issue Description
I am encountering an issue with the JMAP EventSource (SSE) implementation in Stalwart. While postman test SSE endpoints work perfectly in my environment, requests to the Stalwart EventSource endpoint hang indefinitely in a “Loading” state when valid credentials are provided.
Expected Behavior
The Stalwart EventSource endpoint should successfully establish the connection and stream data/pings rather than hanging indefinitely when proper credentials are provided.
Actual Behavior
Postman shows a continuous, infinite “Loading…” state. No data or initial events are ever returned or rendered.
Reproduction Steps
Baseline Test (Working Control)
To verify that my client-side setup and network support Server-Sent Events (SSE), I tested using Postman’s official echo endpoint:
Opened Postman on macOS and created a new HTTP GET request.
URL: https://postman-echo.com/server-events/5
Clicked Send.
Result: It works perfectly as expected, and events are streamed seamlessly (see attached file).
Steps to Reproduce (with Stalwart Endpoint)
I tested the following request using Postman against my Stalwart server:
Method: GET
URL: https://mail.your-domain.com/jmap/eventsource/?types=Email,Mailbox,Thread&closeafter=no&ping=30 (Note: replace with actual domain)
Test Case 1: Request WITHOUT Authorization header
Expected Behavior: The server should reject the request and return a 401 Unauthorized status code.
Actual Behavior: [Ok] Server returns 401 Unauthorized as expected.
Test Case 2: Request WITH valid Authorization header
Expected Behavior: The server should establish a successful persistent connection and begin streaming JMAP events or ping data.
Actual Behavior: [Error] Postman shows a continuous, infinite “Loading…” state. No data or initial events are ever returned or rendered.
Stalwart Version
v0.16.x
Installation Method
Binary (Linux)
Database Backend
RocksDB
Blob Storage
S3-compatible
Search Engine
Internal
Directory Backend
Internal
I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.
on
I have searched this support forum (open and closed topics) and confirm this is not a duplicate.
on
I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.
on


