An access key and a secret key is required to use the API. If you are not already a Time and Date API user, please see our API offers to get a free 3 month trial. For more information, see our API Services page.
Add the gem as a dependency in the Gemfile:
gem'libtad'Require the gem in your source code:
require'libtad'Setup the client with your access key and secret key:
client= ::LibTAD::Client.new(access_key: 'access_key',secret_key: 'secret_key')Get astronomical events for a place on a date by textual ID:
place="usa/anchorage"date= ::LibTAD::TADTime::TADDateTime(year: 2015,month: 1,day: 1)client= ::LibTAD::Client.new(access_key: 'access_key',secret_key: 'secret_key')astro_events=client.get_astro_events(:sun,place_id: place,start_date: date)Get astronomical events for a place between two dates by numeric ID:
place=187start_date= ::LibTAD::TADTime::TADDateTime(year: 2015,month: 1,day: 1)end_date= ::LibTAD::TADTime::TADDateTime(year: 2015,month: 1,day: 30)client= ::LibTAD::Client.new(access_key: 'access_key',secret_key: 'secret_key')astro_events=client.get_astro_events(:moon,place_id: place,start_date: start_date,end_date: end_date)Retrieve specific astronomy events:
astro_events=client.get_astro_events(:moon,place_id: place,start_date: start_date,types: [:setrise,:twilight])Retrieve astronomy positions:
astro_position=client.get_astro_position(:moon,place_id: place,interval: [date_1,date_2])Get current time for a place:
place=179result=client.get_current_time(place_id: place)Convert time from a location:
place="norway/oslo"datetime= ::LibTAD::TADTime::TADDateTime.new.nowutc,locations=client.convert_time(from_id: place,datetime: datetime)Convert time from a location using an ISO 8601-string:
utc,locations=client.convert_time(from_id: place,iso: "2015-04-21T16:45:00")Convert time from one location to multiple locations:
list_of_locations=["usa/las-vegas",179]place="oslo/norway"utc,locations=client.convert_time(from_id: place,datetime: datetime,to_id: list_of_locations)Get all daylight saving times:
all_DST=client.get_daylight_savings_timeGet daylight saving time for a specified year:
result=client.get_daylight_savings_time(year: 2014)Get daylight saving time for a specified ISO3166-1 (Alpha2) country code:
result=client.get_daylight_savings_time(country: "no")Get all holidays for a country by ISO3166-1 (Alpha2) country code:
country="no"result=client.get_holidays(country: country)Get all holidays for a country by year and ISO3166-1 (Alpha2) country code:
country="no"result=client.get_holidays(country: country,year: 2014)Get specific holidays for a country:
country="no"result=client.get_holidays(country: country,types: [:federal,:weekdays])Get all places in Time and Date (these can be used to look up data in other services):
result=client.get_placesAdd days to a date:
date= ::LibTAD::TADTime::TADDateTime.new.nowgeo,period=client.add_days(start_date: date,days: 31)Subtract days from a date:
geo,period=client.subtract_days(start_date: date,days: 31)Caclculate the number of business days between two dates:
geo,period=client.get_duration(start_date: start_date,end_date: end_date)