Connecting Confluence Cloud

edit

Connecting Confluence Cloud

edit

Enterprise Search versions 7.15.0 and later are required to connect to Confluence Cloud. This is due to backwards incompatible API changes introduced by Atlassian, the developer of Confluence Cloud.

Additionally, the following patch versions of Enterprise Search are not compatible with Confluence Cloud: 7.17.2, 8.1.1, and 8.1.2. This is due to additional, backwards incompatible API changes introduced by Atlassian.

Instructions provided in this guide apply to Confluence Cloud only. Refer to Confluence Server guide for more information.

Confluence Cloud is a team workspace, where knowledge and collaboration meet. Often used as an organizational wiki and intranet, it usually houses valuable information for staff across multiple areas of businesses, large and small. The Confluence Cloud connector provided with Workplace Search automatically captures, syncs and indexes the following items:

Spaces

Including ID, Content, Type, and timestamps

Pages

Including ID, Content, Type, Comments, Project, Collaborators and timestamps

Blog Posts

Including ID, Content, Type, Comments, Project, Collaborators and timestamps

Attachments

Including ID, Size, Type, Comments, Project, Collaborators and timestamps

(If your deployment is not syncing as expected, see Known issues.)

Known issues

edit
  1. Confluence Cloud attachment content can not be downloaded and extracted. Additionally, Confluence Cloud Permissions syncs will fail if Document Level Permissions are enabled and one or more External Identitiy mappings are created for the Confluence Cloud content source.

    This Issue affects all Confluence Cloud accounts on any Workplace Search version before (and including) 7.13.3.

    These failures are due to a backwards-incompatible API change made by Atlassian, the developer of Confluence Cloud, on June 24th 2021 that ran contrary to their documentation. Atlassian is aware of the flaw in their documentation.

  2. Confluence Cloud may require 48 hours to sync new and changed documents to your Workplace Search deployment.

    The issue affects Confluence Cloud accounts in particular timezones. Affected accounts do not expose changes to Workplace Search during more frequent syncs.

    The delay is caused by an issue in the Confluence Cloud API. Atlassian, the developer of Confluence Cloud, is aware of the issue.

Configuring the Confluence Cloud Connector

edit

Configuring the Confluence Cloud connector is the first step prior to connecting the Confluence Cloud service to Workplace Search, and requires that you create an OAuth App from the Confluence Cloud platform. To get started, first log in to Atlassian’s Developer Portal:


Step 1. Click Create app, then select OAuth 2.0 (3LO) integration:

Figure 23. Connecting Confluence

Step 2. Provide a name, agree to the terms, and click Create:

Figure 24. Connecting Confluence

Step 3. Click Settings in the sidebar, add a description and image, and Save changes.


Step 4. You can retrieve the application’s Client ID and Client Secret. Keep them handy, we’ll need these in just a few seconds.


Step 5. We must now create API access and set the right permission level. In the sidebar, click Authorization, locate OAuth 2.0 (3LO), and click Configure:

Figure 25. Connecting Confluence

Step 6. Use the Callback URL form to add one of the following callback URLs, substituting <WS_BASE_URL> with the base URL at which Workplace Search is hosted (scheme + host, no path).

Connect as organizational content source (Most commonly used)

<WS_BASE_URL>/ws/org/sources/confluence_cloud/create

Examples:

# Deployment using a custom domain name
https://www.example.com/ws/org/sources/confluence_cloud/create

# Deployment using a default Elastic Cloud domain name
https://c3397e558e404195a982cb68e84fbb42.ent-search.us-east-1.aws.found.io/ws/org/sources/confluence_cloud/create

# Unsecured local development environment
http://localhost:3002/ws/org/sources/confluence_cloud/create

Connect as private content source

<WS_BASE_URL>/ws/sources/confluence_cloud/create

Examples:

# Deployment using a custom domain name
https://www.example.com/ws/sources/confluence_cloud/create

# Deployment using a default Elastic Cloud domain name
https://c3397e558e404195a982cb68e84fbb42.ent-search.us-east-1.aws.found.io/ws/sources/confluence_cloud/create

# Unsecured local development environment
http://localhost:3002/ws/sources/confluence_cloud/create
Figure 26. Connecting Confluence

Step 7. A prompt appears. Click the Add APIs hyperlink:

Figure 27. Connecting Confluence

Step 8. Click Permissions, find Confluence API and click Add, then Configure:

Figure 28. Connecting Confluence

Step 9. We must enable a series of permissions. Add the following and save:

  • Read Confluence space summary
  • Read Confluence content properties
  • Read Confluence detailed content
  • Read Confluence content summary
  • Search Confluence content and space summaries
  • Read user.

Step 10. From the Workplace Search administrative dashboard’s Sources area, locate Confluence and provide both the Client ID and Client Secret, as well as your Confluence instance Base URL. Do not include a trailing slash:

https://example.atlassian.net

Voilà! The Confluence Cloud connector is now configured, and ready to be used to synchronize content. In order to capture data, you must now connect a Confluence Cloud instance with the adequate authentication credentials.

Connecting Confluence Cloud to Workplace Search

edit

Once the Confluence Cloud connector has been configured, you may connect a Confluence Cloud instance to your organization.


Step 1. Head to your organization’s Workplace Search administrative dashboard, and locate the Sources tab.


Step 2. Click Add a new source.


Step 3. Select Confluence Cloud in the Configured Sources list, and follow the Confluence Cloud authentication flow as presented.


Step 4. Upon the successful authentication flow, you will be redirected to Workplace Search.

Confluence Cloud content will now be captured and will be ready for search gradually as it is synced. Once successfully configured and connected, the Confluence Cloud synchronization automatically occurs every 2 hours.

(If your deployment is not syncing as expected, see Known issues.)