Integrating your Software Asset Management application with Atlassian Jira Software Cloud enables you to track your software subscriptions and to reclaim unused licenses.

Note: Currently this integration supports only one site integration per profile.
Important: Minimize security risks and protect information by granting access only to the necessary user or API permissions.
Table 1. Minimal user permissions
Process Required user role in the Jira Software Cloud application Authentication scopes
Download subscriptions Permission to access Jira
  • read:application-role:jira
  • read:group:jira
  • read:user:jira
  • read:avatar:jira
Pull user activity
  • Administer Jira global permission
  • Browse projects permission for the project containing the issue.

    If issue-level security is configured, issue-level security permission to view the issue.

  • read:user:jira
  • read:issue-details:jira
  • read:audit-log:jira
  • read:avatar:jira
  • read:field-configuration:jira
  • read:issue-meta:jira
Reclaim subscription Site administration, that is, member of the site-admin group
  • read:group:jira
  • write:group:jira

Using basic authentication

Integrate the Software Asset Management application and Jira using an API key to authenticate ServiceNow requests.

You can integrate a ServiceNow instance with multiple Jira instances. For this integration, create a connection and credential alias record and a connection record for each Jira instance.

Create an Jira account API token

Create an API token in Jira to authenticate requests.

Before you begin

Jira Role required: Refer the Minimal user permissions table.

Procedure

  1. Navigate to Atlassian API Tokens.
  2. Select Create API token.
  3. Enter a name for your API token, then select Create.
  4. Copy the API token and save it.
    You’ll use the token later.

Configure the connection and credential record

Configure the default connection and credential alias record to authenticate the requests from ServiceNow.

Before you begin

Role required: admin

Procedure

  1. Navigate to All > Connections & Credentials > Connection & Credential Aliases.
  2. Open the alias record for Jira that is shipped with the spoke.
  3. Select the Create New Connection & Credential related link.
  4. On the form, fill in the fields.
    Table 2. Create Connection and Credential
    Field Description
    Connection URL URL of your Jira instance in https://<provider-domain-name>.atlassian.net format.
    User Name Enter the email address of the user.
    API Key Enter the API token that you generated for Jira.
  5. Select Create.

Using OAuth authentication

Integrate the Software Asset Management application with your Jira account using OAuth to authenticate ServiceNow requests.

Create an OAuth 2.0 integration in Jira account

Create an OAuth 2.0 integration in the Atlassian Developer console to authenticate the requests.

Before you begin

Jira Role required: Refer the Minimal user permissions table.

Procedure

  1. Log in to Atlassian Developer console.
  2. Under My apps, select Create and select OAuth 2.0 integration.
  3. On the form, provide a name for the integration and select Create.

    The integration is created and the value of App ID is displayed.

  4. Select Authorization.
    1. Select Add under Action.
    2. In Callback URL, provide the URL of your ServiceNow instance in this format: https://<ServiceNow-Instance-Name>.service-now.com/oauth_redirect.do.
      For example, https://example.service-now.com/oauth_redirect.do.
    3. Select Save changes.
  5. Select Settings.
  6. Under Authentication details, copy the values of Client ID and Client Secret.
  7. Select Permissions > Jira API > Configure.
  8. Select the Granular scopes tab.
  9. Select Edit Scopes to add the following scopes:
    • read:application-role:jira
    • read:group:jira
    • read:user:jira
    • read:avatar:jira
    • read:audit-log:jira
    • read:issue-details:jira
    • read:field-configuration:jira
    • read:issue-meta:jira
    • write:group:jira
    You can configure other scopes according to your requirement.

Obtain the Cloud ID value of Jira instance

Obtain the value of the Cloud ID of the Jira cloud instance. This value is required during the configuration of the connection record in your ServiceNow instance.

Before you begin

Jira Role required: admin

Procedure

  1. Log in to Atlassian Administration.
  2. Select the Select button against the required organization.
  3. Select the Products tab.
  4. On the Products page, select Manage product on the Jira product row.

    The URL is in the following format in a new window: https://admin.atlassian.com/o/<orgID>/products/jira-software/<Cloud-Id>.

  5. Copy the value of the Cloud ID for later use.

Create a Jira Software Cloud integration profile

Create an integration profile to track software subscriptions and optimize licensing for Atlassian Jira Software Cloud.

Before you begin

To create a Jira integration profile, request the Software Asset Management - SaaS License Management plugin (sn_sam_saas_int) from the ServiceNow Store.

To enable the integration profile to retrieve and update user activity through the Jira Update User Activity subflow, set the com.glide.transform.json.max-partial-length system property Value to 32768.

Atlassian Role required: site admin

ServiceNow Role required: admin or sam_integrator

Important: You must select the Jira Spoke check box for this integration while installing optional features on the Application Manager page. For more information about choosing the required SaaS applications, see Request SaaS License Management.

About this task

If you’re using Software Asset Workspace, the option to create the Jira integration profile in Core UI is inactive.

Procedure

  1. Navigate to the integration profile.
    InterfaceAction
    Core UI
    1. Navigate to All > Software Asset > SaaS License > Direct Integration Profiles.
    2. Select New.
    3. Select Jira Integration Profile.
    Software Asset Workspace
    1. Navigate to License operations > User Subscriptions > Direct integration profiles.
    2. Select New.
    3. Select Jira from the drop-down list.
    4. Select Continue.
  2. On the form, fill in the fields.
    Table 3. Integration Profile form
    Field Value
    Display name Name of your choice. For example, Jira integration.
    Status Status of the integration profile.
    • If you have not published the integration profile, this field is automatically set to Draft.
    • If you have already published the integration profile, this field is automatically set to Published.
    Profile type Jira Subscription. This field is automatically populated.
  3. Review the required user roles or API permissions specified in the Vendor configuration field for each process to minimize security risks and optimize SaaS licenses.
    Note: For more information, see Minimal user permissions table.
    1. In the Download Subscription Subflow section, verify that the Subflow field is set to Jira Download Subscriptions.
      Note: The Download subscriptions check box is selected by default and you can't clear it.
    2. In the Calculate Activity Subflow section, verify that the Subflow field is set to Jira Update User Activity.
      Note: The Download Activity check box is selected by default. If you clear it, the activity scheduled job SAM - Refresh <displayname> Activity isn't created.
      In the Analyze user activity field, you can also select the date and time starting from when you want to analyze the user activity. By default, you can analyze user activity up to 60 days prior to the current date and view events performed by individual users from the time you create this profile.
      Note: Software Asset Management pulls the events from the time that you start analyzing user activity irrespective of the profile creation date.
      You can modify this value in the Last activity threshold field of your software reclamation rules. For more information, see Review a software reclamation rule.
    3. In the Reclaim Subscription Subflow section, verify that the Subflow field is set to Jira Reclaim Subscription.
      Note: The Reclaim subscriptions check box is selected by default. If you don't want to reclaim subscriptions, you can clear this check box. If you clear it, the removal candidates are created but the reclaim subscription subflow isn't triggered or the reclamation process isn't initiated.
  4. Select Save.
    A draft integration profile is created.

    The Connection & Credential field appears and is automatically set to sn_jira_spoke.jira_subscription_activity_reclaim.

    Note: The automatically populated value in the Connection & credential field changes based on the selection in the Download activity and Reclaim subscriptions check boxes.
  5. Specify the groups that have access to Jira products.
    By specifying these groups on your ServiceNow instance, you can retrieve data and manage licenses for only the users within these groups.
    1. In a new tab, open the Atlassian Administration portal.
    2. Log in to your site admin account.
    3. Select the Select button against the required organization.
    4. Select the Products tab.
    5. On the Products page, select Manage product on the Jira product row.
    6. View the list of groups that have access to Jira Software.
      Take note of this information for later use.
    7. Return to your ServiceNow instance and navigate to Jira > Jira Groups.
    8. On the Jira Groups form, select the Add Groups related link.
      The Add Jira Groups dialog box opens.
    9. In the Available list, select the groups that have access to Jira products.
      Tip: The Available list includes all groups that are associated with your Atlassian account. Select only the groups that have access to Jira products.
    10. Select the right arrow button to move the groups from the Available list to the Selected list.
    11. Select OK.
  6. On the integration profile form, select Validate Connection to verify the connection and credential details of this integration.

    Validating the connection verifies the Download Subscriptions and Calculate Activity APIs, but not the Reclaim Subscriptions APIs.

  7. After the connection is verified, select Publish.
  8. In the Publish Confirmation dialog box, select OK.
    Note: If you clear the Download Activity check box after the integration profile is published, you must revalidate the connections and then republish the integration profile because the following events occur:
    • The Status field on the integration profile form changes to Draft.
    • The Validate connection button shows up on the form.
    • The current SAM - Refresh <displayname> Activity job gets deleted.

What to do next

After the integration connects, your ServiceNow instance automatically creates software models, reclamation rules, and software subscriptions that are refreshed daily.

If you want to set up multiple integration profiles with unique connections, create child aliases to manage different configurations and settings for each integration profile. For more information, see Create a child alias to set up multiple integration profiles.

Review all automatically generated reclamation rules to reclaim user subscriptions. For more information, see Review a software reclamation rule.

Create software entitlements for the automatically generated software models to track used software against owned software.
Reconciliation also runs on your subscriptions as a scheduled job or on-demand. You can view your reconciliation results in the License Workbench (Software Asset Management classic application) or the License usage view (Software Asset Workspace). Use these results to determine your license compliance position and to remediate any non-compliance.