Jira Server API Version Questions (with Jira Service Management)

I am currently using the Jira Cloud Platform API to get the issues out of Jira Service Management (/rest/api/3/issue/issue_id).

Im looking at how this relates to on-premise and I believe I can use the Jira Server API version to do a similar call. However, what I am not able to find is what versions of the Jira Server API support which versions of Jira Service Management. Does V2 support all versions?

Additionally, is there a way to set up an on-prem developer instance of Jira Service Management to test different versions of the software? I have not seen anything on that either.

Finally, if anyone has gone through something similar, would it be possible for me to setup a config for a call that uses /rest/api/latest/issue/issue_id and have it work automatically for both APIs based on which one is hit (Jira Server or Jira Cloud).

Thanks ahead of time for any help!

@cam welcome to the Atlassian developer community.

REST APIs between Jira Server and Jira Cloud are similar. They do have a shared history (until about 5 years ago). However, Atlassian makes no guarantees these are compatible. V2 Cloud is not the same as V2 Server (but yes, there is a V2 in both). The list of differences is too long and too difficult to maintain. However, the major differences would be identity, editor, and configuration. V3 is even more different, with different endpoints, and payloads. I don’t know that you could do something like /rest/api/latest, without pulling a lot of complexity into the code that handles those payloads. I think it is easier to handle as if they were different APIs.

The key to understanding JSM in both Server and Cloud is platform vs product. For example, issues (like your example) are Jira platform (link to Server docs). But queues, SLAs, and customer requests are JSM (Server docs again).

All that said, there are Marketplace partners who do manage both Server and Cloud with same code base. For recent example, consider:

Dev and testing can be done 2 ways. You can be (or become) a customer. Dev licenses are to customers. Or, you can use the Atlassian SDK to run JSM, with limits (like 3 days between reboot).

Thank you @ibuchanan.

This makes a lot of sense.