JIRA RPC Services
Overview of the RPC Services
You can find the latest news about the RPC plugin in the Atlassian Plugins project. The full source of the plugin is available and you are free to modify and extend the source. See the RPC Endpoint Plugin Module for more information.
The JIRA SOAP service is backed by Apache Axis, an open-sourced Java web services framework.
If you're familiar with SOAP, ensure that RPC is enabled and point your stub generator to the
/rpc/soap/jirasoapservice-v2?wsdl path of your JIRA installation (for example, http://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl) and you're away. If you are less familiar with SOAP, you should first take a look at the SOAP tutorial.
When developing SOAP clients, keep in mind that the SOAP service respects the permissions and screen configurations that are set up in JIRA. For example, if you have configured JIRA so that the screen for a given issue type does not include a 'Summary' field, then you will not be permitted to set a value for the 'Summary' field through the SOAP request.
For the latest information on the remote methods available, see the latest Javadoc for JiraSoapService.
Hint: Take a look at the Command Line Interface for an existing remote scripting tool.
XML-RPC can also be used as an alternative where SOAP is unavailable. You can find some background information on XML-RPC by reading the overview. Start building your own client by following the instructions in the tutorial. The XML-RPC interface is backed by the SOAP interface, and will usually have a subset of methods from the SOAP interface.
For the latest information on the remote methods available, see the latest Javadoc for XmlRpcService . Method calls should be prefixed with
jira1. and be made to the URL
/rpc/xmlrpc of your installation. The Javadoc will often refer to "hashtables with fields from RemoteObject".
The hashtable will contain keys that map to the fields available through reflection of the particular RemoteObject. For example, the object
RemoteVersion has the methods getReleaseDate(), getSequence(), isArchived() and isReleased(). This will be converted into a Hashtable with keys releaseDate, sequence, archived and released.
The code uses the Java server code that makes up the existing SOAP interface in JIRA. There is a one-to-one mapping between the methods and parameters in the JIRA SOAP API and the equivalent JSON-RPC methods and parameters. The main difference lies in the JSON-RPC wire format.
See the JIRA JSON-RPC Overview.