> For the complete documentation index, see [llms.txt](https://docs.snyk.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.snyk.io/scan-fix-and-prevent/scan-with-snyk/snyk-api-web/integrations/issue-tracking/integrate-with-jira-server.md).

# Integrate with Jira Server

By connecting Snyk API & Web to your Jira Server, you can synchronize target scan results with a Jira project of your choice. Snyk can do this synchronization automatically or manually, finding by finding.

The synchronization is bi-directional. Snyk sends a reported finding to Jira, and as soon as the finding is closed, Snyk triggers a retest. If the finding is fixed, the Jira issue remains closed. Otherwise, Snyk reopens it.

Connecting Snyk to your Jira Server takes no more than five minutes if you follow these instructions.

## Generate an RSA public/private key pair

Jira validates the identity of the Snyk server by requiring it to use a certificate. You can use any RSA public/private key pair, so you can skip the generation if you want to use another pair.

When prompted for the certificate details, you can enter anything, including the default values, by pressing **Enter**. The exception is the Common Name, where you must enter something.

```bash
openssl genrsa -out jira_privatekey.pem 2048

openssl req -newkey rsa:2048 -x509 -key jira_privatekey.pem -out jira_publickey.cer -days 1825

openssl pkcs8 -topk8 -nocrypt -in jira_privatekey.pem -out jira_privatekey.pcks8

openssl x509 -pubkey -noout -in jira_publickey.cer > jira_publickey.pem
```

## Create a new Jira application link

1. In Jira Server, in the top-right corner, navigate to **gear icon > Applications** and then click **Application Links** under **Integrations**.
2. Enter `https://plus.probely.app/jira-server/` in the input field and then click **Create new link**.

Ignore the warning "No response was received from the URL you entered" and click **Continue**.

1. On the next dialog, enter the following:
   * **Application Name**: Probely
   * **Application Type**: Generic Application
   * **Service Provider Name**: Probely
   * **Consumer key**: The value does not matter, but you need it later
   * **Shared secret**: probely
   * **Request Token URL**: `https://plus.probely.app/jira-server/`
   * **Access Token URL**: `https://plus.probely.app/jira-server/`
   * **Authorize URL**: `https://plus.probely.app/jira-server/`
2. Click **Continue**. You now see Probely on your application links.
3. Edit the Probely application link (pencil icon on the right) and fill out the Incoming Authentication form as follows:
   * **Consumer Key**: Same key as in the previous form
   * **Consumer Name**: Probely
   * **Public Key**: Public key created at the start (in the jira\_publickey.pem file)
   * **Callback URL**: `https://plus.probely.app/jira-server/callback/`
4. Click **Save**.

## Connect Snyk API & Web

1. In your Snyk account, open the **Settings** dropdown menu in the bottom-left corner and click **Integrations**.
2. Fill out the **Jira Server** form as follows:
   * **Server URL**: URL for your Jira Server instance
   * **Consumer Key**: Same as previous steps
   * **Consumer Secret**: Private key created at the start (in the jira\_privatekey.pem file)
   * **Verify TLS**: On (do not turn this option off without a very good reason)
3. Click **Authorize**.
4. Click **Allow** to allow Snyk to access your Jira Server.

Your Jira Server is now connected to your Snyk account.

The next step is configuring the Snyk targets you want to synchronize. For each target whose findings you want to synchronize, navigate to its **Target Settings > Integrations > Jira Server** and configure how they synchronize.

Visit [Configure Jira synchronization settings](/scan-fix-and-prevent/scan-with-snyk/snyk-api-web/integrations/issue-tracking/configure-jira-synchronization-settings.md) for more information about the configuration options.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.snyk.io/scan-fix-and-prevent/scan-with-snyk/snyk-api-web/integrations/issue-tracking/integrate-with-jira-server.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
