You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -60,7 +60,7 @@ It features a [MTA](https://en.wikipedia.org/wiki/Message_transfer_agent) based
60
60
### Based on standards
61
61
* 🔑 OpenID Connect for all user accounts as the primary authentication method. Plug any identity provider, including Keycloak.
62
62
* 📬 SMTP in and out (server-to-server).
63
-
* ✅ JMAP-inspired data model. JMAP-compilant endpoint [in progress](https://github.com/suitenumerique/messages/pull/479).
63
+
* ✅ JMAP-inspired data model. JMAP-compliant endpoint [in progress](https://github.com/suitenumerique/messages/pull/479).
64
64
* 📮 Optional IMAP and SMTP client access via the [client bridge](/src/client-bridge/), for users who prefer traditional email clients like Thunderbird or mobile phones. Uses app-specific passwords with configurable roles.
Copy file name to clipboardExpand all lines: src/backend/core/api/openapi.json
+22-29Lines changed: 22 additions & 29 deletions
Original file line number
Diff line number
Diff line change
@@ -124,34 +124,6 @@
124
124
}
125
125
}
126
126
},
127
-
"/api/v1.0/client-bridge/auth/": {
128
-
"post": {
129
-
"operationId": "client_bridge_auth_create",
130
-
"description": "Authenticate a client-bridge channel by email username and app-specific password.\n\nPOST /api/v1.0/client-bridge/auth/\nInput: {\"username\": \"<mailbox email>\", \"password\": \"...\"}\nReturns: {\"token\": \"<JWT>\", \"channel_id\", \"mailbox_id\", \"mailbox_email\", \"role\",\n\"expires_at\": \"<ISO 8601>\"}\n\nThe request must carry ``X-Service-Auth: Bearer <CLIENTBRIDGE_API_SECRET>``\nto prove it comes from the client-bridge service.\n\nThe JWT is signed with CLIENTBRIDGE_API_SECRET and contains the channel_id,\nmailbox_id, role, and expiration. The client-bridge passes it as\nX-Channel-Token on all subsequent requests.",
131
-
"tags": [
132
-
"client-bridge"
133
-
],
134
-
"responses": {
135
-
"200": {
136
-
"description": "No response body"
137
-
}
138
-
}
139
-
}
140
-
},
141
-
"/api/v1.0/client-bridge/submit/": {
142
-
"post": {
143
-
"operationId": "client_bridge_submit_create",
144
-
"description": "Submit an outbound message via the client-bridge.\n\nPOST /api/v1.0/client-bridge/submit/\nContent-Type: message/rfc822 (raw email)\nHeaders: X-Channel-Token (JWT), X-Mail-From, X-Rcpt-To\nReturns: {\"message_id\": \"...\", \"status\": \"accepted\"}\n\nUses ClientBridgeChannelAuthentication: the channel is resolved from\nthe JWT and available as request.auth.",
0 commit comments