fluxmail 0.17.1 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accounts/defaultMicrosoftOAuth.d.ts +8 -0
- package/dist/accounts/defaultMicrosoftOAuth.d.ts.map +1 -0
- package/dist/accounts/defaultMicrosoftOAuth.js +8 -0
- package/dist/accounts/defaultMicrosoftOAuth.js.map +1 -0
- package/dist/accounts/gmailConnection.d.ts.map +1 -1
- package/dist/accounts/gmailConnection.js +1 -5
- package/dist/accounts/gmailConnection.js.map +1 -1
- package/dist/accounts/microsoftAuth.d.ts.map +1 -1
- package/dist/accounts/microsoftAuth.js +10 -3
- package/dist/accounts/microsoftAuth.js.map +1 -1
- package/dist/accounts/registry.d.ts.map +1 -1
- package/dist/accounts/registry.js +5 -2
- package/dist/accounts/registry.js.map +1 -1
- package/dist/accounts/telemetry.d.ts +0 -4
- package/dist/accounts/telemetry.d.ts.map +1 -1
- package/dist/accounts/telemetry.js +3 -5
- package/dist/accounts/telemetry.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +2 -1
- package/dist/cli.js.map +1 -1
- package/dist/cliMail.d.ts.map +1 -1
- package/dist/cliMail.js +4 -2
- package/dist/cliMail.js.map +1 -1
- package/dist/config.d.ts +12 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +28 -15
- package/dist/config.js.map +1 -1
- package/dist/configMigration.d.ts.map +1 -1
- package/dist/configMigration.js +2 -0
- package/dist/configMigration.js.map +1 -1
- package/dist/deploymentConfig.d.ts +25 -1
- package/dist/deploymentConfig.d.ts.map +1 -1
- package/dist/deploymentConfig.js +41 -1
- package/dist/deploymentConfig.js.map +1 -1
- package/dist/feedback.d.ts +69 -0
- package/dist/feedback.d.ts.map +1 -0
- package/dist/feedback.js +159 -0
- package/dist/feedback.js.map +1 -0
- package/dist/http/admin.js +3 -3
- package/dist/http/admin.js.map +1 -1
- package/dist/http/app.d.ts.map +1 -1
- package/dist/http/app.js +11 -0
- package/dist/http/app.js.map +1 -1
- package/dist/http/identity.d.ts.map +1 -1
- package/dist/http/identity.js +34 -0
- package/dist/http/identity.js.map +1 -1
- package/dist/http/rest.d.ts.map +1 -1
- package/dist/http/rest.js +18 -16
- package/dist/http/rest.js.map +1 -1
- package/dist/mcp/buildServer.d.ts +7 -13
- package/dist/mcp/buildServer.d.ts.map +1 -1
- package/dist/mcp/buildServer.js +374 -513
- package/dist/mcp/buildServer.js.map +1 -1
- package/dist/mcp/outputSchemas.d.ts +45 -0
- package/dist/mcp/outputSchemas.d.ts.map +1 -1
- package/dist/mcp/outputSchemas.js +5 -1
- package/dist/mcp/outputSchemas.js.map +1 -1
- package/dist/permissions.d.ts +2 -1
- package/dist/permissions.d.ts.map +1 -1
- package/dist/permissions.js +4 -17
- package/dist/permissions.js.map +1 -1
- package/dist/service/emailService.d.ts +2 -2
- package/dist/service/emailService.d.ts.map +1 -1
- package/dist/service/emailService.js +2 -2
- package/dist/service/emailService.js.map +1 -1
- package/dist/service/publicErrors.d.ts +4 -0
- package/dist/service/publicErrors.d.ts.map +1 -1
- package/dist/service/publicErrors.js +16 -2
- package/dist/service/publicErrors.js.map +1 -1
- package/package.json +5 -5
package/dist/http/identity.js
CHANGED
|
@@ -279,6 +279,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
279
279
|
path: '/api/v1/auth/login',
|
|
280
280
|
operationId: 'login',
|
|
281
281
|
summary: 'Log in with a member email and password',
|
|
282
|
+
description: 'Sign in with a member email and password and receive a member session.',
|
|
282
283
|
request: { body: { required: true, content: { 'application/json': { schema: loginBody } } } },
|
|
283
284
|
responses,
|
|
284
285
|
});
|
|
@@ -305,6 +306,9 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
305
306
|
path,
|
|
306
307
|
operationId,
|
|
307
308
|
summary: kind === 'enrollment' ? 'Enroll a member' : 'Redeem a password reset',
|
|
309
|
+
description: kind === 'enrollment'
|
|
310
|
+
? 'Set your first password with an enrollment code and receive a member session.'
|
|
311
|
+
: 'Set a new password with a reset code and receive a member session.',
|
|
308
312
|
request: { body: { required: true, content: { 'application/json': { schema: tokenPasswordBody } } } },
|
|
309
313
|
responses,
|
|
310
314
|
});
|
|
@@ -326,6 +330,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
326
330
|
path: '/api/v1/me',
|
|
327
331
|
operationId: 'getCurrentMember',
|
|
328
332
|
summary: 'Get the authenticated member',
|
|
333
|
+
description: 'Get the name, role and status of the authenticated member.',
|
|
329
334
|
...protectedRoute,
|
|
330
335
|
responses,
|
|
331
336
|
});
|
|
@@ -338,6 +343,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
338
343
|
path: '/api/v1/me',
|
|
339
344
|
operationId: 'updateCurrentMember',
|
|
340
345
|
summary: 'Update the current member profile',
|
|
346
|
+
description: 'Change the name of the signed-in member.',
|
|
341
347
|
request: {
|
|
342
348
|
body: {
|
|
343
349
|
required: true,
|
|
@@ -363,6 +369,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
363
369
|
path: '/api/v1/auth/logout',
|
|
364
370
|
operationId: 'logout',
|
|
365
371
|
summary: 'Revoke the current member session',
|
|
372
|
+
description: 'Revoke the session used for this request.',
|
|
366
373
|
...sessionRoute,
|
|
367
374
|
responses,
|
|
368
375
|
});
|
|
@@ -382,6 +389,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
382
389
|
path: '/api/v1/me/password',
|
|
383
390
|
operationId: 'changePassword',
|
|
384
391
|
summary: 'Change the current member password',
|
|
392
|
+
description: 'Change your password and revoke your other sessions and OAuth connections.',
|
|
385
393
|
request: {
|
|
386
394
|
body: {
|
|
387
395
|
required: true,
|
|
@@ -415,6 +423,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
415
423
|
path: '/api/v1/me/sessions',
|
|
416
424
|
operationId: 'listSessions',
|
|
417
425
|
summary: 'List current member sessions',
|
|
426
|
+
description: 'List your member sessions and identify the current session.',
|
|
418
427
|
...sessionRoute,
|
|
419
428
|
responses,
|
|
420
429
|
});
|
|
@@ -432,6 +441,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
432
441
|
path: '/api/v1/me/sessions/{sessionId}',
|
|
433
442
|
operationId: 'revokeSession',
|
|
434
443
|
summary: 'Revoke a member session',
|
|
444
|
+
description: 'Revoke one of your member sessions.',
|
|
435
445
|
request: { params: sessionParams },
|
|
436
446
|
...sessionRoute,
|
|
437
447
|
responses,
|
|
@@ -454,6 +464,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
454
464
|
path: '/api/v1/me/api-keys',
|
|
455
465
|
operationId: 'listOwnApiKeys',
|
|
456
466
|
summary: 'List API keys owned by the current member',
|
|
467
|
+
description: 'List your API key metadata without returning plaintext secrets.',
|
|
457
468
|
...sessionRoute,
|
|
458
469
|
responses,
|
|
459
470
|
});
|
|
@@ -471,6 +482,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
471
482
|
path: '/api/v1/me/api-keys',
|
|
472
483
|
operationId: 'createOwnApiKey',
|
|
473
484
|
summary: 'Create an API key for the current member',
|
|
485
|
+
description: 'Create an API key for yourself and return its secret once.',
|
|
474
486
|
request: {
|
|
475
487
|
body: {
|
|
476
488
|
required: true,
|
|
@@ -512,6 +524,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
512
524
|
path: '/api/v1/me/api-keys/{keyId}',
|
|
513
525
|
operationId: 'revokeOwnApiKey',
|
|
514
526
|
summary: 'Revoke an API key owned by the current member',
|
|
527
|
+
description: 'Revoke an API key you own.',
|
|
515
528
|
request: { params: keyParams },
|
|
516
529
|
...sessionRoute,
|
|
517
530
|
responses,
|
|
@@ -535,6 +548,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
535
548
|
path: '/api/v1/me/oauth-connections',
|
|
536
549
|
operationId: 'listOwnOAuthConnections',
|
|
537
550
|
summary: 'List MCP clients the current member connected with OAuth',
|
|
551
|
+
description: 'List the MCP clients you have connected with OAuth.',
|
|
538
552
|
...sessionRoute,
|
|
539
553
|
responses,
|
|
540
554
|
});
|
|
@@ -552,6 +566,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
552
566
|
path: '/api/v1/me/oauth-connections/{grantId}',
|
|
553
567
|
operationId: 'updateOwnOAuthConnection',
|
|
554
568
|
summary: 'Change the mailboxes an OAuth connection can use',
|
|
569
|
+
description: 'Replace or clear the mailbox allowlist for an OAuth connection you own.',
|
|
555
570
|
request: {
|
|
556
571
|
params: grantParams,
|
|
557
572
|
body: { required: true, content: { 'application/json': { schema: oauthConnectionBody } } },
|
|
@@ -590,6 +605,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
590
605
|
path: '/api/v1/me/oauth-connections/{grantId}',
|
|
591
606
|
operationId: 'revokeOwnOAuthConnection',
|
|
592
607
|
summary: 'Disconnect an MCP client the current member connected with OAuth',
|
|
608
|
+
description: 'Disconnect one of your MCP clients and revoke its OAuth tokens.',
|
|
593
609
|
request: { params: grantParams },
|
|
594
610
|
...sessionRoute,
|
|
595
611
|
responses,
|
|
@@ -613,6 +629,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
613
629
|
path: '/api/v1/admin/oauth-connections',
|
|
614
630
|
operationId: 'listOAuthConnections',
|
|
615
631
|
summary: 'List OAuth connections for every member or one member',
|
|
632
|
+
description: 'List OAuth connections for all members or one member. Requires admin.api_keys.',
|
|
616
633
|
request: { query: oauthConnectionQuery },
|
|
617
634
|
...protectedRoute,
|
|
618
635
|
responses,
|
|
@@ -633,6 +650,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
633
650
|
path: '/api/v1/admin/oauth-connections/{grantId}',
|
|
634
651
|
operationId: 'revokeOAuthConnection',
|
|
635
652
|
summary: "Disconnect a member's OAuth connection",
|
|
653
|
+
description: "Disconnect a member's MCP client and revoke its OAuth tokens. Requires admin.api_keys.",
|
|
636
654
|
request: { params: grantParams },
|
|
637
655
|
...protectedRoute,
|
|
638
656
|
responses,
|
|
@@ -656,6 +674,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
656
674
|
path: '/api/v1/accounts/connections',
|
|
657
675
|
operationId: 'connectOwnAccount',
|
|
658
676
|
summary: 'Connect or reauthorize a mailbox account',
|
|
677
|
+
description: 'Connect a Gmail, Outlook or IMAP mailbox, or reauthorize an existing mailbox you own or administer.',
|
|
659
678
|
request: {
|
|
660
679
|
body: {
|
|
661
680
|
required: true,
|
|
@@ -759,6 +778,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
759
778
|
path: '/api/v1/accounts/{accountId}/connection',
|
|
760
779
|
operationId: 'removeOwnAccount',
|
|
761
780
|
summary: 'Remove a mailbox account owned by the current member',
|
|
781
|
+
description: 'Disconnect a mailbox you own or administer and remove its stored credentials.',
|
|
762
782
|
request: { params: accountParams },
|
|
763
783
|
...sessionRoute,
|
|
764
784
|
responses,
|
|
@@ -787,6 +807,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
787
807
|
path: '/api/v1/accounts/{accountId}/imap/folders',
|
|
788
808
|
operationId: 'updateOwnedImapFolders',
|
|
789
809
|
summary: 'Update folder settings for an owned IMAP mailbox',
|
|
810
|
+
description: 'Update special-folder overrides for an IMAP mailbox you own or administer.',
|
|
790
811
|
request: {
|
|
791
812
|
params: accountParams,
|
|
792
813
|
body: { required: true, content: { 'application/json': { schema: folderPatch } } },
|
|
@@ -836,6 +857,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
836
857
|
path: '/api/v1/admin/members',
|
|
837
858
|
operationId: 'listMembers',
|
|
838
859
|
summary: 'List members',
|
|
860
|
+
description: 'List members with their roles, status and mailbox and API key counts. Requires admin.members.',
|
|
839
861
|
...protectedRoute,
|
|
840
862
|
responses,
|
|
841
863
|
});
|
|
@@ -853,6 +875,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
853
875
|
path: '/api/v1/admin/members',
|
|
854
876
|
operationId: 'createMember',
|
|
855
877
|
summary: 'Create and invite a member',
|
|
878
|
+
description: 'Create a pending member and return a one-time enrollment code. Requires admin.members.',
|
|
856
879
|
request: {
|
|
857
880
|
body: {
|
|
858
881
|
required: true,
|
|
@@ -890,6 +913,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
890
913
|
path: '/api/v1/admin/members/{memberId}',
|
|
891
914
|
operationId: 'updateMember',
|
|
892
915
|
summary: 'Update a member',
|
|
916
|
+
description: "Change a member's name, email, role or status. Requires admin.members.",
|
|
893
917
|
request: {
|
|
894
918
|
params: memberParams,
|
|
895
919
|
body: {
|
|
@@ -940,6 +964,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
940
964
|
path: '/api/v1/admin/members/{memberId}',
|
|
941
965
|
operationId: 'deleteMember',
|
|
942
966
|
summary: 'Remove a member',
|
|
967
|
+
description: 'Remove a member after reassigning or removing their mailboxes. Requires admin.members.',
|
|
943
968
|
request: { params: memberParams },
|
|
944
969
|
...protectedRoute,
|
|
945
970
|
responses,
|
|
@@ -966,6 +991,9 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
966
991
|
path: `/api/v1/admin/members/{memberId}/${suffix}`,
|
|
967
992
|
operationId: kind === 'enrollment' ? 'inviteMember' : 'createMemberPasswordReset',
|
|
968
993
|
summary: kind === 'enrollment' ? 'Issue a member invitation' : 'Issue a member password reset',
|
|
994
|
+
description: kind === 'enrollment'
|
|
995
|
+
? 'Issue a new one-time enrollment code for a pending member. Requires admin.members.'
|
|
996
|
+
: 'Issue a one-time password reset code for a member. Requires admin.members.',
|
|
969
997
|
request: { params: memberParams },
|
|
970
998
|
...protectedRoute,
|
|
971
999
|
responses: { ...responses, 201: responses[200] },
|
|
@@ -993,6 +1021,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
993
1021
|
path: '/api/v1/admin/members/{memberId}/sessions',
|
|
994
1022
|
operationId: 'listMemberSessions',
|
|
995
1023
|
summary: "List a member's sessions",
|
|
1024
|
+
description: "List a member's sessions. Requires admin.members.",
|
|
996
1025
|
request: { params: memberParams },
|
|
997
1026
|
...protectedRoute,
|
|
998
1027
|
responses,
|
|
@@ -1012,6 +1041,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
1012
1041
|
path: '/api/v1/admin/members/{memberId}/sessions/{sessionId}',
|
|
1013
1042
|
operationId: 'revokeMemberSession',
|
|
1014
1043
|
summary: "Revoke a member's session",
|
|
1044
|
+
description: "Revoke one of a member's sessions. Requires admin.members.",
|
|
1015
1045
|
request: { params: memberSessionParams },
|
|
1016
1046
|
...protectedRoute,
|
|
1017
1047
|
responses,
|
|
@@ -1036,6 +1066,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
1036
1066
|
path: '/api/v1/admin/accounts',
|
|
1037
1067
|
operationId: 'listAdminAccounts',
|
|
1038
1068
|
summary: 'List all mailbox account metadata',
|
|
1069
|
+
description: 'List mailbox metadata across the instance without granting access to private mail. Requires admin.accounts.',
|
|
1039
1070
|
...protectedRoute,
|
|
1040
1071
|
responses,
|
|
1041
1072
|
});
|
|
@@ -1054,6 +1085,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
1054
1085
|
path: '/api/v1/admin/accounts/{accountId}',
|
|
1055
1086
|
operationId: 'updateAccountAccess',
|
|
1056
1087
|
summary: 'Update mailbox ownership and access',
|
|
1088
|
+
description: 'Change mailbox ownership, instance-wide sharing or member grants. Requires admin.accounts.',
|
|
1057
1089
|
request: {
|
|
1058
1090
|
params: accountParams,
|
|
1059
1091
|
body: {
|
|
@@ -1105,6 +1137,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
1105
1137
|
path: '/api/v1/admin/accounts/{accountId}',
|
|
1106
1138
|
operationId: 'deleteAdminAccount',
|
|
1107
1139
|
summary: 'Remove a mailbox account',
|
|
1140
|
+
description: 'Disconnect a mailbox and remove its stored credentials. Requires admin.accounts.',
|
|
1108
1141
|
request: { params: accountParams },
|
|
1109
1142
|
...protectedRoute,
|
|
1110
1143
|
responses,
|
|
@@ -1133,6 +1166,7 @@ export function registerIdentityRoutes(typedApp, deps) {
|
|
|
1133
1166
|
path: '/api/v1/admin/audit-events',
|
|
1134
1167
|
operationId: 'listAuditEvents',
|
|
1135
1168
|
summary: 'List security audit events',
|
|
1169
|
+
description: 'List recent security audit events. Requires admin.audit.',
|
|
1136
1170
|
request: { query: z.object({ limit: z.string().regex(/^\d+$/).optional() }) },
|
|
1137
1171
|
...protectedRoute,
|
|
1138
1172
|
responses,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/http/identity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/http/identity.ts"],"names":[],"mappings":"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"}
|
package/dist/http/rest.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/http/rest.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAK,MAAM,mBAAmB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/http/rest.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,WAAW,EAAK,MAAM,mBAAmB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAatD,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAqB,KAAK,YAAY,EAAkB,MAAM,4BAA4B,CAAC;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAA2C,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAIrF,OAAO,EAA2C,KAAK,SAAS,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAMpH,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AASzE,UAAU,aAAa;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED,KAAK,OAAO,GAAG;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,aAAa,CAAA;CAAE,CAAC;AAGpE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,oBAAoB,CAAC;IACpC,EAAE,EAAE,UAAU,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAkWD,eAAO,MAAM,qBAAqB;;;;;;;CAOjC,CAAC;AA4pBF,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAggCrE"}
|
package/dist/http/rest.js
CHANGED
|
@@ -2,6 +2,7 @@ import { createHash, randomUUID } from 'node:crypto';
|
|
|
2
2
|
import { createRoute, OpenAPIHono, z } from '@hono/zod-openapi';
|
|
3
3
|
import { HTTPException } from 'hono/http-exception';
|
|
4
4
|
import { EmailError, isEmailError, mergeEmailQueries, parseEmailSearch, } from '@fluxmail/core';
|
|
5
|
+
import { MODIFY_ACTION_SCOPES } from '@fluxmail/core/mcp';
|
|
5
6
|
import { connectionFailureKind } from '../accounts/telemetry.js';
|
|
6
7
|
import { batchFailureCause } from '../service/emailService.js';
|
|
7
8
|
import { authenticateBearer, isBootstrapComplete } from '../auth.js';
|
|
@@ -483,6 +484,14 @@ const messageQuerySchema = z
|
|
|
483
484
|
.describe('Include a match-centered body excerpt. Requires a portable text query.'),
|
|
484
485
|
})
|
|
485
486
|
.strict();
|
|
487
|
+
const getMessageQuerySchema = z
|
|
488
|
+
.object({
|
|
489
|
+
includeHeaders: z
|
|
490
|
+
.enum(['true', 'false'])
|
|
491
|
+
.optional()
|
|
492
|
+
.describe('Include Message-ID, References, In-Reply-To, and other threading headers.'),
|
|
493
|
+
})
|
|
494
|
+
.strict();
|
|
486
495
|
const portableFolder = z.enum(['inbox', 'sent', 'drafts', 'archive', 'spam', 'trash', 'all']);
|
|
487
496
|
const BatchSearchRequestSchema = z
|
|
488
497
|
.object({
|
|
@@ -510,19 +519,6 @@ const BatchSearchRequestSchema = z
|
|
|
510
519
|
})
|
|
511
520
|
.strict()
|
|
512
521
|
.openapi('BatchSearchRequest');
|
|
513
|
-
const MODIFY_CAPABILITIES = {
|
|
514
|
-
markRead: 'mail.organize',
|
|
515
|
-
markUnread: 'mail.organize',
|
|
516
|
-
star: 'mail.organize',
|
|
517
|
-
unstar: 'mail.organize',
|
|
518
|
-
archive: 'mail.organize',
|
|
519
|
-
trash: 'mail.trash',
|
|
520
|
-
untrash: 'mail.trash',
|
|
521
|
-
delete: 'mail.delete',
|
|
522
|
-
move: 'mail.organize',
|
|
523
|
-
addLabels: 'mail.organize',
|
|
524
|
-
removeLabels: 'mail.organize',
|
|
525
|
-
};
|
|
526
522
|
const PROTECTED_MOVE_DESTINATIONS = new Set(['archive', 'trash']);
|
|
527
523
|
class RestFailure extends Error {
|
|
528
524
|
code;
|
|
@@ -1441,7 +1437,7 @@ export function createRestApi(deps) {
|
|
|
1441
1437
|
operationId: 'getMessage',
|
|
1442
1438
|
summary: 'Get a message',
|
|
1443
1439
|
description: 'Get one message by its provider ID.',
|
|
1444
|
-
request: { params: messageParams },
|
|
1440
|
+
request: { params: messageParams, query: getMessageQuerySchema },
|
|
1445
1441
|
...protectedRoute,
|
|
1446
1442
|
responses: {
|
|
1447
1443
|
200: { content: { 'application/json': { schema: dataEnvelope(MessageSchema) } }, description: 'Message' },
|
|
@@ -1450,8 +1446,11 @@ export function createRestApi(deps) {
|
|
|
1450
1446
|
});
|
|
1451
1447
|
app.openapi(getMessageRoute, (c) => {
|
|
1452
1448
|
const { accountId, messageId } = c.req.valid('param');
|
|
1449
|
+
const { includeHeaders } = c.req.valid('query');
|
|
1453
1450
|
return runJson(c, deps, { operation: 'getMessage', capabilities: ['mail.read'] }, async () => ({
|
|
1454
|
-
data: await c
|
|
1451
|
+
data: await c
|
|
1452
|
+
.get('restService')
|
|
1453
|
+
.getMessage(accountId, messageId, includeHeaders !== undefined ? { includeHeaders: includeHeaders === 'true' } : undefined),
|
|
1455
1454
|
}));
|
|
1456
1455
|
});
|
|
1457
1456
|
const getThreadRoute = createRoute({
|
|
@@ -1478,6 +1477,7 @@ export function createRestApi(deps) {
|
|
|
1478
1477
|
path: '/api/v1/accounts/{accountId}/drafts/{draftId}',
|
|
1479
1478
|
operationId: 'getDraft',
|
|
1480
1479
|
summary: 'Get a draft',
|
|
1480
|
+
description: 'Read an existing draft by its provider ID. Requires mail.drafts.',
|
|
1481
1481
|
request: { params: draftParams },
|
|
1482
1482
|
...protectedRoute,
|
|
1483
1483
|
responses: {
|
|
@@ -1567,6 +1567,7 @@ export function createRestApi(deps) {
|
|
|
1567
1567
|
path: '/api/v1/accounts/{accountId}/send/preview',
|
|
1568
1568
|
operationId: 'previewSend',
|
|
1569
1569
|
summary: 'Preview a send',
|
|
1570
|
+
description: 'Resolve the sender, recipients and attachments without sending mail. Requires mail.send, plus mail.drafts for an existing draft or mail.read for a reply.',
|
|
1570
1571
|
request: {
|
|
1571
1572
|
params: accountParams,
|
|
1572
1573
|
body: { required: true, content: { 'application/json': { schema: SendRequestSchema } } },
|
|
@@ -1657,6 +1658,7 @@ export function createRestApi(deps) {
|
|
|
1657
1658
|
path: '/api/v1/accounts/{accountId}/delivery-operations/{operationId}',
|
|
1658
1659
|
operationId: 'getDeliveryOperation',
|
|
1659
1660
|
summary: 'Get a delivery outcome',
|
|
1661
|
+
description: 'Check whether a send or forward succeeded, failed or has an uncertain outcome. Requires mail.send.',
|
|
1660
1662
|
request: { params: z.object({ accountId, operationId: id }).strict() },
|
|
1661
1663
|
...protectedRoute,
|
|
1662
1664
|
responses: {
|
|
@@ -1790,7 +1792,7 @@ export function createRestApi(deps) {
|
|
|
1790
1792
|
app.openapi(modifyRoute, (c) => {
|
|
1791
1793
|
const { accountId } = c.req.valid('param');
|
|
1792
1794
|
const input = c.req.valid('json');
|
|
1793
|
-
const capability =
|
|
1795
|
+
const capability = MODIFY_ACTION_SCOPES[input.action];
|
|
1794
1796
|
return runJson(c, deps, {
|
|
1795
1797
|
operation: 'modifyMessages',
|
|
1796
1798
|
capabilities: [capability],
|