The cURL project is the cross-browser command line utility for transferring files using various protocols. The project consists of two products; curl is the CLU for sending or receiving files using URL syntax; libcurl is the client-side URL transfer library that supports a range of protocols, including FTP, IMAP, SMTP and HTTPS, among many others.
Under normal conditions, your specified URI, which includes the protocol information, will inform curl which protocol to use to fetch the data. In the absence of a specified protocol, the utility will default to HTTP. cURL’s non-graphical nature means it can run on a console that has only command-line functionality to expose the entire HTTP content on a given URL, and the inclusion of a simple redirection method in Linux will save the output to file.
In this tutorial on DZone, Peter Van de Voorde shows followers how to cURL the JIRA Project Management REST API. He begins by creating a project, with details on how to bring in neatly formatted JSON, and adding three issues to it. Next, the author creates and adds issues to the first sprint, moving these issues through the workflow systematically to complete the sprint using cURL for file transfers at each step.
This is a simple example of what can be done using cURL and the JIRA Software REST API. Users can easily access the API for reading information, but to do anything more than reading, users will need to be authenticated.