Connecting Jira Cloud

edit

Connecting Jira Cloud

edit

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

Additionally, the following patch versions of Enterprise Search are not compatible with Jira 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 Jira Cloud only. Refer to Jira Server guide for more information.

Atlassian Jira is an issue tracking product that provides bug tracking, workflow automation, and agile project management tools for teams of all sizes. The Jira Cloud connector provided with Workplace Search automatically captures, syncs and indexes the following items:

Epics

Including ID, Content, Type, and timestamps

Projects

Including ID, Content, Type, Slug and timestamps

Issues

Including ID, Content, Status, Priority, Comments, Project, Slug, Collaborators and timestamps

Attachments

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

Configuring the Jira Cloud Connector

edit

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


Step 1. Click Create, then select OAuth 2.0 integration:

Figure 53. Connecting Jira

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

Figure 54. Connecting Jira

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 55. Connecting Jira

Step 6. Use the Callback URL form to add one of the following callback URLs.

Among other factors, the callback URL is affected by which user interface you are using to manage Enterprise Search. Enterprise Search in Kibana and standalone Enterprise Search use different callback URLs. See user interfaces for details on each UI.

For standalone Enterprise Search, you will use one of the following two 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 for standalone Enterprise Search (Most commonly used)

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

Examples:

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

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

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

Connect as private content source for standalone Enterprise Search

<WS_BASE_URL>/ws/sources/jira_cloud/create

Examples:

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

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

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

When using Enterprise Search in Kibana, use the following callback URL, substituting <KIBANA_BASE_URL> with the base URL of your Kibana instance. This should correspond with the value of kibana.external_url in your enterprise-search.yml:

Connect for Enterprise Search in Kibana

<KIBANA_BASE_URL>/app/enterprise_search/workplace_search/sources/added

Examples:

# Deployment using a custom domain name for Kibana
https://www.example.com/app/enterprise_search/workplace_search/sources/added

# Deployment using a default Elastic Cloud domain name for Kibana
https://c3397e558e404195a982cb68e84fbb42.kb.us-east-1.aws.found.io:443/app/enterprise_search/workplace_search/sources/added

# Unsecured local Kibana environment
http://localhost:5601/app/enterprise_search/workplace_search/sources/added
Figure 56. Connecting Jira

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

Figure 57. Connecting Jira

Step 8. Click Permissions, find Jira platform REST API and click Add, then Configure:

Figure 58. Connecting Jira

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

  • View Jira issue data
  • View user profiles

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

https://example.atlassian.net

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

Connecting Jira Cloud to Workplace Search

edit

Once the Jira Cloud connector has been configured, you may connect a Jira 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 Jira Cloud in the Configured Sources list, and follow the Jira Cloud authentication flow as presented.


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

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

Document-level permissions

edit

You can synchronize document access permissions from Jira Cloud to Workplace Search. This will ensure the right people see the right documents.

See Document-level permissions for Atlassian Cloud.

Synchronized fields

edit

The following table lists the fields synchronized from the connected source to Workplace Search. The attributes in the table apply to the default search application, as follows:

  • Display name - The label used when displayed in the UI
  • Field name - The name of the underlying field attribute
  • Faceted filter - whether the field is a faceted filter by default, or can be enabled (see also: Customizing filters)
  • Automatic query refinement preceding phrases - The default list of phrases that must precede a value of this field in a search query in order to automatically trigger query refinement. If "None," a value from this field may trigger refinement regardless of where it is found in the query string. If '', a value from this field must be the first token(s) in the query string. If N.A., automatic query refinement is not available for this field by default. All fields that have a faceted filter (default or configurable) can also be configured for automatic query refinement; see also Update a content source, Get a content source’s automatic query refinement details and Customizing filters.
Display name Field name Faceted filter Automatic query refinement preceeding phrases

Id

id

No

N.A.

URL

url

No

N.A.

Title

title

No

N.A.

Type

type

Default

None

Slug

slug

No

N.A.

Body

body

No

N.A.

Assigned to

assigned_to

Default

[assigned to]

Created by

created_by

Default

[creator is, created by, edited by, modified by]

Status

status

Default

[with status, status is, in state, '']

Priority

priority

Default

[with priority, priority is]

Comments

comments

No

N.A.

Project

project

Default

N.A.

Created at

created_at

No

N.A.

Updated at

updated_at

No

N.A.

Last updated

last_updated

No

N.A.

Size

size

No

N.A.

Issue

issue

No

N.A.

Media type

mime_type

Configurable

None

Extension

extension

Configurable

None