diff --git a/backend/oauth_connect.json b/backend/oauth_connect.json
index ceabe29145..b5ebd80e2a 100644
--- a/backend/oauth_connect.json
+++ b/backend/oauth_connect.json
@@ -446,6 +446,37 @@
],
"req_body_auth": true
},
+ "outlook": {
+ "req_body_auth": true,
+ "scopes": ["offline_access", "User.Read", "Mail.ReadWrite", "Mail.Send", "Calendars.ReadWrite", "Contacts.ReadWrite"],
+ "scope_options": [
+ { "value": "offline_access", "label": "Stay connected (refresh token)" },
+ { "value": "User.Read", "label": "Read your profile" },
+ { "value": "Mail.Send", "label": "Send mail" },
+ { "value": "Mail.Read", "label": "Read and search mail" },
+ { "value": "Mail.ReadWrite", "label": "Read, draft, move and modify mail" },
+ { "value": "MailboxSettings.Read", "label": "Read mailbox settings and categories" },
+ { "value": "Contacts.Read", "label": "Read contacts" },
+ { "value": "Contacts.ReadWrite", "label": "Read, create and edit contacts" },
+ { "value": "People.Read", "label": "Search relevant people" },
+ { "value": "Calendars.Read", "label": "Read calendars and events" },
+ { "value": "Calendars.ReadWrite", "label": "Read, create, edit and delete events" },
+ { "value": "Calendars.Read.Shared", "label": "Read shared calendars and find meeting times" },
+ { "value": "Mail.Send.Shared", "label": "Send mail from shared mailboxes" },
+ { "value": "Mail.Read.Shared", "label": "Read mail in shared mailboxes" },
+ { "value": "Mail.ReadWrite.Shared", "label": "Read and modify mail in shared mailboxes" }
+ ],
+ "connect_config_template": {
+ "display_name": "Outlook",
+ "label": "Microsoft Entra tenant",
+ "placeholder": "common, organizations, or your tenant id",
+ "help_url": "https://learn.microsoft.com/en-us/entra/identity-platform/v2-protocols#endpoints",
+ "auth_url": "https://login.microsoftonline.com/{instance}/oauth2/v2.0/authorize",
+ "token_url": "https://login.microsoftonline.com/{instance}/oauth2/v2.0/token",
+ "req_body_auth": true,
+ "scopes": ["offline_access", "User.Read", "Mail.ReadWrite", "Mail.Send", "Calendars.ReadWrite", "Contacts.ReadWrite"]
+ }
+ },
"hubspot": {
"auth_url": "https://app.hubspot.com/oauth/authorize",
"token_url": "https://api.hubapi.com/oauth/v1/token",
diff --git a/frontend/src/lib/components/icons/OutlookIcon.svelte b/frontend/src/lib/components/icons/OutlookIcon.svelte
new file mode 100644
index 0000000000..a9cec0cfa6
--- /dev/null
+++ b/frontend/src/lib/components/icons/OutlookIcon.svelte
@@ -0,0 +1,94 @@
+
+
+
+
diff --git a/frontend/src/lib/components/icons/index.ts b/frontend/src/lib/components/icons/index.ts
index bbefc16469..2b63491c6c 100644
--- a/frontend/src/lib/components/icons/index.ts
+++ b/frontend/src/lib/components/icons/index.ts
@@ -90,6 +90,7 @@ import ResendIcon from './ResendIcon.svelte'
import PushoverIcon from './PushoverIcon.svelte'
import QuickbooksIcon from './QuickbooksIcon.svelte'
import MsTeamsIcon from './MSTeamsIcon.svelte'
+import OutlookIcon from './OutlookIcon.svelte'
import MailgunIcon from './MailgunIcon.svelte'
import IpinfoIcon from './IpinfoIcon.svelte'
import GoogleCloudIcon from './GoogleCloudIcon.svelte'
@@ -445,6 +446,7 @@ export const APP_TO_ICON_COMPONENT = {
quickbooks: QuickbooksIcon,
ms_teams_webhook: MsTeamsIcon,
teams: MsTeamsIcon,
+ outlook: OutlookIcon,
mailgun: MailgunIcon,
ipinfo: IpinfoIcon,
gworkspace: GoogleIcon,
@@ -776,6 +778,7 @@ export {
PushoverIcon,
QuickbooksIcon,
MsTeamsIcon,
+ OutlookIcon,
MailgunIcon,
IpinfoIcon,
GoogleCloudIcon,