How to delete issue link via Jira Java Client REST API?

kriegaex September 8, 2022

I am able to create links between two Jira issues via Java client REST API like this:

restClient
.getIssueClient()
.linkIssue(new LinkIssuesInput("FOO-11", "FOO-22", "Blocks"))
.claim();

 

However, the issue client does not seem to have a method to delete/remove an existing link. How can I do this with the Java REST API? Do I have to resort to manually call the corresponding REST URI for removing the link?

Moreover, when working with the REST Java API, it is not easy at all to implement my own 'unlinkIssue' method, because even when I search for the source or target issue, iterate over the links and identify the one I want to delete, I cannot get its ID, because it is abstracted away behind the object layer. But in order to unlink manually via REST, I do need the ID. In that case, I would have to re-implement existing functionality for searching issues and iterate over their links, just so as to find the ID of the link I wish to delete. How can that method be missing in the API in the first place?

Extending com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClient is also not a viable action, because the fields I would need in order to meaningfully extend the class are not protected but private. I.e., extending the class is not really useful.

 


Update: I really had to implement this manually, using the HTTP client class from this library, which was really tedious, because I am switching between the high level object API layer and the bare REST layer for doing related things. Does anyone know how to contact the maintainers of this library and how to raise an issue or contribute a PR? The documentation in this regard is either non-existent or extremely difficult to find. FWIW, I did not find it. How can any such library live and improve without user feedback?

0 answers

Suggest an answer

Log in or Sign up to answer