The University of Adelaide has built a REST Client GEM as part of one of our integration projects.
The GEM has now been open sourced and available via https://rubygems.org. The source code can be found at https://github.com/universityofadelaide/rest-client-wrapper.
The GEM main features are:
- Retries for API calls
- Ability to set authentication types and automatically populating the request with auth parameters
- Re-auth for: OAUTH
- Getting all data for paginated endpoints. (Only if the API implements pagination with headers links)
The GEM is built as a wrapper around the rest-client GEM (https://github.com/rest-client/rest-client)