Introduction

Description

This is a bash solution to script REST API calls.

The specialties of this component are

  • It was build to simplify http calls and handle http response for scripts
  • After making a request the response stays is in memory. There is no output to any file to grep something or to cleanup after usage.
  • Its functions feel a bit like class methods, i.e. http.getResponse to get the response body or http.getResponseHeader for the Http response header
  • This component wraps curl - it supports any http method
  • works with anonymous requests and authentication / authorization: (Basic authentication, Authorization header (tokens, NTLM) or any other request header variable
  • The response can be stored … and reimported later. After import you can use the http.get* functions to fetch results from the former request.
  • Caching support for GET requests with a given TTL: if you repeat a request to the same url and ttl was not reached yet then you continue with the cached result

Requirements

  • Bash as shell (runs on Linux - or with Cygwin or other Bash implementations on MS Windows too.)
  • Curl must be in the path
  • optional: sha1sum (for export function with autogenerated filenames only)

Screenshot

Screenshot - example script