Jira integration broken on Atlassian Cloud - split API/browse URLs

Hi,

We recently migrated from a self-hosted Jira instance to Atlassian Cloud (`company.atlassian.net`). After the migration, the Jira integration stopped working.

On Atlassian Cloud, the REST API is only accessible via `https://api.atlassian.com/ex/jira/{cloud\-id}/\`. Calling the same endpoints directly on the instance URL (`https://{instance}.atlassian.net/rest/api/2/…`) returns `“No project could be found”` even for projects the service account has access to. Browse links however use `https://{instance}.atlassian.net/browse/{key}` as expected.

The current `JiraService` uses a single `JiraUrl` for both API calls and browse links, which works for self-hosted Jira but not for Atlassian Cloud. We added a `JiraApiUrl` config property that falls back to `JiraUrl` when not set, preserving backwards compatibility. Is this the recommended approach, or does Epic have a preferred solution for Atlassian Cloud support?

While investigating the above, we also noticed that the `JiraService` calls `/rest/api/2/search` which returns “The requested API has been removed. Please migrate to the /rest/api/3/search/jql API.” We believe this endpoint may never have been valid — the correct minimum version endpoint that works appears to be `/rest/api/2/search/jql` even if that seems deprecated. Could you confirm whether `/rest/api/2/search` was ever a valid Jira REST API endpoint, and whether the engine code should be updated?

Cheers, Daniel

[Attachment Removed]

Steps to Reproduce[Attachment Removed]

Hello! We’ve added support for Jira Cloud in Unreal Engine version 5.8. You can see that we also had to add a separate URL for the REST calls (_jiraBaseUrl).

It looks as though this change affected only the JiraService.cs file, so you may be able to cherry-pick it if you’re not yet ready to upgrade to 5.8.

https://github.com/EpicGames/UnrealEngine/commit/6f63f5b04fb755f5169c9dac06caa18bc766d7ac

https://github.com/EpicGames/UnrealEngine/commits/5\.8\.0\-release/Engine/Source/Programs/Horde/Plugins/Build/HordeServer.Build/Issues/External/JiraService.cs

The “/rest/api/2/search” endpoint definitely was valid, and the deprecation message even mentions that it has been “removed”.

In the latest version of JiraService.cs, we’re using the “rest/api/3/search/jql” endpoint as the primary search endpoint.

[Attachment Removed]