I'm writing an app for internal use that needs to collect data from a Jira Server. Basically, it will crawl the Jira server, starting with Projects and recursing down into Issues looking for specific bits of data.
Everything I've read seems to indicate that the REST API is best suited for this. In fact, everything I've read about the Java API seems to indicate that it's intended for writing plugins for JIRA, intended to be installed on the server.
The one thing that bothers me, though, is that the architecture diagram for the Java API here: https://developer.atlassian.com/server/jira/platform/integrating-with-jira-server/ has a "Common Component" labelled "REST". Is there a way to use that common component in my Java projects? I'm about to go down a path of creating a bunch of Jackson annotated objects so that I can Java-fy the REST API. I would love to avoid doing that work if it's already been done.
Thanks,
Ed
Okay, so that's a "No" answer to my question? ie: ' [...] has a "Common Component" labelled "REST". Is there a way to use that common component in my Java projects?'
Yes, you can use that common component if your projects are running in a context that draws in the Jira libraries that provide it.
But I think what you're looking for is the flat "no". Common component in the docs you're reading means "common within the context of the Jira application". So if you're not coding within Jira (and you've said you are not), then they're no use to you.
Hi
Is it a correct assumption that the Rest API is wider than Java API? I have my Jira plugin and there is some functionality that is only available via Rest. For example I don’t find a way to list all the Agile sprints for a project via Java API while it exists in the Rest
Ed
Absolutely not. The Java api can do anything in Jira that isn't prevented by the structure of the data. The REST api is a limited set of calls that have been made available by Atlassian coding for them to be exposed.
Recommended Learning For You
Level up your skills with Atlassian learning
Learning Path
Apply agile practices
Transform how you manage your work with agile practices, including kanban and scrum frameworks.
Learning Path
Configure agile boards for Jira projects
Learn how to create and configure agile Jira boards so you can plan, prioritize, and estimate upcoming work.
Jira Essentials with Agile Mindset
Suitable for beginners, this live instructor-led full-day course will set up your whole team to understand how to use Jira with an agile methodology.