Project

hukd

0.0
No commit activity in last 3 years
No release in over 3 years
API Wrapper for HotUKDeals (HUKD)
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 2.6

Runtime

 Project Readme

API Client for HotUKDeals (HUKD)

This client allows you to access all the documented API features from HUKD REST API 2.0 http://www.hotukdeals.com/rest-api/docs

Please note that the HUKD API Documentation is not entirely upto date (for example there is no longer a clothing category) and the deals return some additional fields such as mobile_deal_link which I've attempted to include. You could say that the gem is actually more up to date than the API docs at the time of release :)

Prerequisites

gem install hukd

YOU ARE NOW READY TO GET SOME SWEET DEAL DATA!

Usage

You can start of by creating an instance of the client, which just needs an Api Key.

require 'hukd'
hukd	=	Hukd.new("YOUR_API_KEY_HERE")

You can then make an API request to receive an Array of Deal objects

deals	=	hukd.hottest('deals')

Once you've made a successful request, the total_results attribute will become available

hukd.total_results

This gives you the total number of results that can be retrieved using the current filter options

The following API calls are available

hottest(forum='', category='', limit=20, options={})
newest(forum='', category='', limit=20, options={})
discussed(forum='', category='', limit=20, options={})
user(user='',forum='', category='', limit=20, options={})
tag(tag='',forum='', category='', limit=20, options={})
merchant(merchant='',forum='', category='', limit=20, options={})
online(forum='', category='', limit=20, options={})
offline(forum='', category='', limit=20, options={})
search(keywords='',forum='', category='', online=false, page=1, limit=20, exclude_expired=0)

The options hash can contain all the keys available from http://www.hotukdeals.com/rest-api/docs

Each deal object has the following attributes available:

title
deal_link
mobile_deal_link
deal_image
description
submit_time
hot_time
poster_name
temperature
temperature_rounded
price
timestamp
expired
forum_name
forum_url_name
category_name
category_url_name
merchant_name
merchant_url_name
tags (a hash containing each tag as a string)
deal_image_highres

Combining everything together will give you something like this:

require 'hukd'
hukd	=	Hukd.new("YOUR_API_KEY_HERE")
deals	=	hukd.hottest('deals')
deals.each |deal| do
	puts(deal.title)
end

This will fetch the hottest deals (default at 20) and print the title to the console.

Support

Feel free to contact me or open an issue if need be.

PLEASE NOTE: You will need to add replace the "API_KEY_HERE" text with your key to make the tests pass.

Thanks

To the great guide by Hrvoje Šimić to help me develop my first gem :)

To the badfruit gem by brianmichel which I referenced and to develop my own gem