{"id":34171,"date":"2019-10-31T21:56:48","date_gmt":"2019-10-31T18:56:48","guid":{"rendered":"https:\/\/prohoster.info\/blog\/integratsiya-3cx-s-office-365-cherez-azure-api\/"},"modified":"2019-10-31T21:56:48","modified_gmt":"2019-10-31T18:56:48","slug":"integratsiya-3cx-s-office-365-cherez-azure-api","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/integratsiya-3cx-s-office-365-cherez-azure-api","title":{"rendered":"3CX integration with Office 365 via Azure API","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>3CX v16 Pro and Enterprise editions offer full integration with Office 365 applications. Specifically, it includes:<\/p>\n<ul>\n<li>Synchronization of Office 365 users and extensions (users) in 3CX.\n<\/li>\n<li>Synchronization of personal contacts of Office users and the personal address book in 3CX.\n<\/li>\n<li>Synchronization of the status (availability) of the Office 365 user's calendar and the status of the 3CX extension. \u00a0\u00a0\n<\/li>\n<\/ul>\n<p>\nTo make outbound calls from the Office applications web interface, 3CX uses the extension <noindex><a rel=\"nofollow\" href=\"https:\/\/www.3cx.ru\/user-manual\/click-to-call\/\">3CX Click to Call<\/a><\/noindex> for browsers. <noindex><a rel=\"nofollow\" href=\"https:\/\/chrome.google.com\/webstore\/detail\/3cx-click-to-call\/ingddacbmngapennhhfhnpjnaklakach\">Activated<\/a><\/noindex> and <noindex><a rel=\"nofollow\" href=\"https:\/\/addons.mozilla.org\/en-US\/firefox\/addon\/3cx-clicktocall\/\">Firefox<\/a><\/noindex>You can also use keyboard shortcuts in the <noindex><a rel=\"nofollow\" href=\"https:\/\/www.3cx.ru\/user-manual\/calls\/#h.dhgiz52kkyvm\">3CX app for Windows.<\/a><\/noindex>.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>To get started, you will need a 3CX Office 365 subscription and administrator credentials for the Office portal with 'Global Administrator' privileges.<\/p>\n<p>Some Office 365 subscriptions have limited integration capabilities with 3CX or do not support it at all:<\/p>\n<ul>\n<li>Subscriptions without user management, i.e., all 'home' subscriptions.\n<\/li>\n<li>Subscriptions without Exchange cannot synchronize contacts and the calendar (Office 365 Business and Office 365 Pro Plus).\n<\/li>\n<\/ul>\n<p>\nOffice 365 servers must have a direct connection to your 3CX server for real-time status updates. If a constant connection is not possible, 3CX will still perform daily synchronization.<\/p>\n<p>Please note that synchronization occurs only one way \u2014 from Office 365 to 3CX. For successful synchronization, Office 365 users must have the 'UserType' attribute set to 'Member' (set in Active Directory). If a user synchronized from Office 365 is deleted or modified through the 3CX interface, they revert to their previous state during the next manual or automatic synchronization.<\/p>\n<h2>Microsoft Azure Authentication App<\/h2>\n<p>\n<img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/1eaf84c4e607ae316f49c710f32fdc60.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nThe first step in connecting <noindex><a rel=\"nofollow\" href=\"https:\/\/www.3cx.ru\/blog\/office-365-pbx-sync\/\">Office 365 integration<\/a><\/noindex> is to create a custom application in your account for authorizing the integration.<\/p>\n<ol>\n<li>In the 3CX management interface, go to Options \u2014 Office 365 \u2014 the Settings tab \u2014 Section Step 3 and copy the Redirect URL.\n<\/li>\n<li>Log in to the Office 365 portal with Global Administrator credentials and go to the <noindex><a rel=\"nofollow\" href=\"https:\/\/portal.azure.com\/#blade\/Microsoft_AAD_RegisteredApps\/ApplicationsListBlade\">Microsoft Azure App Registration<\/a><\/noindex>.\n<\/li>\n<li>Click New Registration and specify the app name, for example, 3CX PBX Office 365 Sync App.\n<\/li>\n<li>In the Supported account types section, leave the default option for Accounts in this organizational directory only.\n<\/li>\n<li>In the URI redirect section (optional), specify the Web type and insert the redirect URI from the 3CX interface: Settings &gt; Office 365 Integration &gt; Settings tab &gt; Step 3. Platform and permissions, for example, <noindex>company.3cx.eu<\/noindex>:5001\/oauth2office2\n<\/li>\n<li>Click Register, and the application will be created.\n<\/li>\n<li>A page will open with the settings of the created application. Copy the Application ID (client) value and paste it into the corresponding field in the 3CX management interface, Settings &gt; Office 365 Integration &gt; Settings tab &gt; Step 1. Configure the App ID.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/8484467d2bdd28de6b96fca31a19509e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Authentication keys<\/h2>\n<p>\nYou now need to establish a trust relationship with the public key between your 3CX v16 system and the created application in the Office 365 portal.<\/p>\n<ol>\n<li>In the 3CX interface (Settings &gt; Office 365 Integration &gt; Settings tab), click Generate new key pair and save the public_key.pem key.\n<\/li>\n<li>Go to the application settings page under Certificates and secrets. Click Upload certificate and upload the created key.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/80292c3b9113ddf29e13b14b948b230f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/9fd6f496908fc456ff3f299223331ad3.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Application permissions<\/h2>\n<p>\nThe final setup step is to set API permissions in the API permissions section. These permissions define the access rules of your 3CX system to the Office 365 account.<\/p>\n<ol>\n<li>Go to the API permissions section, click Add permission, and select Microsoft Graph.\n<\/li>\n<li>Add API permissions in the Application permissions section: Calendars &gt; Calendars.Read, Contacts &gt; Contacts.Read, Directory &gt; Directory.Read.All and click Add permissions.\n<\/li>\n<li>In the Grant consent section, click Grant admin consent for \u2026 to activate the permissions.\n<\/li>\n<li>Wait about 10 minutes for the changes to take effect properly.\n<\/li>\n<li>Switch to the 3CX interface and in the Office 365 Integration section click Sign in to Office 365. Confirm the permissions for the created application, and the connection between the systems will be established.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/0e4b9ac6c2dd7145989a2e68abad05a6.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Sync capabilities<\/h2>\n<p>\nSynchronization between 3CX and Office 365 is configured in three tabs:<\/p>\n<ul>\n<li>User synchronization \u2014 Office 365 users are synchronized with users (additional numbers) in 3CX. The synchronized users are placed in the Azure AD organizational group in the 3CX management interface.\n<\/li>\n<li>Contact synchronization \u2014 personal contacts from Office 365 are synchronized with the 3CX address book. Users see these contacts in 3CX apps across all platforms.\n<\/li>\n<li>Calendar synchronization \u2014 automatic updates of the 3CX extension status depending on the availability in the Office 365 calendar:\n<\/li>\n<\/ul>\n<p>\nAfter an event ends in the Office 365 calendar, the user's 3CX status also synchronizes and reverts to its previous state.<\/p>\n<p>All synchronization elements can be configured for all Office 365 users or selected users.<\/p>\n<p><img decoding=\"async\" alt=\"3CX integration with Office 365 via Azure API\" src=\"\/wp-content\/uploads\/2019\/05\/5c2199339eb36f0741466a51825de25c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nThis completes the integration.<br \/>\n<br \/>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/3cx\/blog\/452838\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0410\u0422\u0421 3CX v16 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438 Pro \u0438 Enterprise \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 Office 365. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430: \u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 Office 365 \u0438 \u0434\u043e\u0431\u0430\u0432\u043e\u0447\u043d\u044b\u0445 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 (\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439) 3CX. \u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 Office \u0438 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438 3CX. \u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u0432 (\u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u0438) \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f Office 365 \u0438 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0434\u043e\u0431\u0430\u0432\u043e\u0447\u043d\u043e\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430 3CX. \u00a0\u00a0 \u0414\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0438\u0437 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25787,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-34171","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0410\u0422\u0421 3CX v16 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438 Pro \u0438 Enterprise \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 Office 365.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/integratsiya-3cx-s-office-365-cherez-azure-api\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f 3CX \u0441 Office 365 \u0447\u0435\u0440\u0435\u0437 Azure API | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0410\u0422\u0421 3CX v16 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438 Pro \u0438 Enterprise \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 Office 365.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/integratsiya-3cx-s-office-365-cherez-azure-api\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:56:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:56:48+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd473CX integration with Office 365 via Azure API | ProHoster","description":"3CX v16 Pro and Enterprise editions provide full integration with Office 365 applications.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/integratsiya-3cx-s-office-365-cherez-azure-api","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f 3CX \u0441 Office 365 \u0447\u0435\u0440\u0435\u0437 Azure API | ProHoster","og:description":"\u0410\u0422\u0421 3CX v16 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438 Pro \u0438 Enterprise \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044e \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 Office 365.","og:url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/integratsiya-3cx-s-office-365-cherez-azure-api","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:56:48+00:00","article:modified_time":"2019-10-31T18:56:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34171","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 18:11:39","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:27:28","updated":"2026-01-21 18:11:39","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/34171","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=34171"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/34171\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media\/25787"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=34171"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=34171"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=34171"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}