Status: Internet-Draft (unofficial)
Last Updated: July 2025
JMTP defines a JSON-based message transport protocol operating over HTTPS, suitable for secure, structured communication between organizations, systems, or individuals. JMTP is designed to replace or supplement traditional protocols such as SMTP for email or EDI for business messages.
The protocol supports decoupled notification and retrieval phases. Senders post message notifications to recipients' endpoints, and recipients pull the full message if it passes validation or policy review.
{
"message_type": "email",
"message_id": "1234567890",
"from": "alice@example.com",
"to": ["bob@example.com"],
"subject": "Test Message",
"body": {
"text": "This is a test.",
"html": "This is a test.
"
},
"attachments": [
{
"filename": "doc.pdf",
"content_type": "application/pdf",
"content_base64": "..."
}
]
}
JMTP clients and servers should expose a discovery file at /.well-known/jmtp
:
{
"inbox": "https://example.org/api/jmtp/notify",
"retrieval": "https://example.org/api/jmtp/retrieve"
}
JMTP supports structured email messaging with headers and bodies defined in JSON. An SMTP-to-JMTP gateway can convert MIME email into JMTP messages. Message discovery uses DNS and /.well-known
endpoints to locate recipient inboxes.