Events
- id : The provider id of the event
- title : Title of the event
- description : Description of the event. The word count controlled by words and chars
- start : Start time in milliseconds from epoch
- end : End time in milliseconds from epoch
- offset : UTC offset in milliseconds
You'll notice that there is no place information in the event object. This is already rolled up for you in the place object.
Timezones
Each service handles timezone information differently, so we have to standardize the responses across services. If the offset time is null then Embedly was not able to get the event timezone. In this case start and end times are assumed to be in the local timezone. For example Facebook and Plancast do not give timezone information.
On the other hand if the offset is set then the start and end times are in UTC and the offset tells you what timezone the event is in. Meetup and Eventbrite give timezone information.
An offset gives the developer the ability to localize the time to the user's timezone, but is a little extra work. Here is an example in Python:
import time
import datetime
import pytz
start = 1308226500000
offset = -14400000
#get the localtime in seconds
local_time = (start + offset) / 1000
#convert to datetime
dt = datetime.datetime(*time.gmtime(local_time)[:6])
print 'Local Time ', dt
#Say you want to show the time in central time
#epoch to datetime
dt = datetime.datetime(*time.gmtime(start/1000)[:6])
#set the tzinfo on the datetime
utc = pytz.timezone('UTC')
dt = utc.localize(dt)
# Central Time
central = pytz.timezone('US/Central')
dt = central.normalize(dt.astimezone(central))
print 'Central Time ', dtWe will be adding more values like public, num_attendees or cost, but these values are not standardized across providers. As we get a better handle on how people are using it we will roll out more changes.
We are always looking for ways to improve, so drop feature requests in Convore or submit a support ticket


