RSS, XML, and JSON feeds under the microscope

See just how easy it is to get Tandem on your organization's website.
Andrew (Tandem)
Posts: 12
Joined: Mon Jan 21, 2008 1:22 pm

RSS, XML, and JSON feeds under the microscope

Postby Andrew (Tandem) » Tue Sep 09, 2008 1:52 pm

Many of you have inquired about the RSS, XML, and JSON feeds in the calendar in hopes of incorporating the events on the calendar into certain portions of your website. If you are unfamiliar with RSS feeds and how they are used you can read up on them at Wikipedia here or watch a simple video on Youtube about them here.

Tandem provides event information in RSS, XML, and JSON feeds. As changes occur on the calendar the RSS, XML, and JSON feeds immediately reflect those changes and any reader actively reading the feed will be updated. If you filter the calendar and then hit the RSS icon on the calendar view, only events that apply to the filters you set will show in the feed. Also, almost all of the objects in the system have RSS, XML, and JSON feeds associated with them. Go to the details page of any school, group, or facility and you will find RSS and XML links. Any user can subscribe to these RSS feeds off of your calendar and be updated about current events at your school.

So if you are new to RSS, XML, and/or JSON feeds you might be wondering how to leverage this information on your own website. There are many RSS feed readers available that you can use to pull event information from the calendar directly onto a page of your website. If you are using a Sharepoint environment to host your website there are already webparts available to read and display RSS and even XML information. Talk to your website guru and share this and the following information with him.

Keep in mind that because there is no way for us to verify login information on an RSS, XML, or JSON feed, only public events are shown in them.

Here are some additional parameters that can be added to any RSS, XML, or JSON feed to further tweak the list of events it returns.

Here is an example RSS feed off our demo calendar.

https://demo.tandem.co/index.php?type=export&action=rss&date_start=2022-09-01&limit=30

If no options are passed will only retrieve the next 30 events on the calendar from the specified date.

(ie. https://demo.tandem.co/index.php?type=export&action=rss)

To get an XML feed instead of a RSS one - change '&action=rss' in the URL to '&action=xml' - example: https://demo.tandem.co/index.php?type=export&action=xml

To get a JSON feed instead of a RSS one - change '&action=rss' in the URL to '&action=json' - example: https://demo.tandem.co/index.php?type=export&action=json

Options that can be passed into the RSS/XML/JSON exporter and appropriate values are:

date_start – expects either a date in yyyy-mm-dd format or no_start. (no_start will retrieve events from the earliest date)
date_end – expects either a date in yyyy-mm-dd format or no_end. (no_end will retrieve events until the latest date)
limit – expects an integer or none. (none will retrieve all events between given dates, if limit is not specified it defaults to 30)
get_key_dates – expects ‘f’. (if this parameter is not specified key dates will be included in the feed by default)
get_events – expects ‘f’. (if this parameter is not specified normal events will be included in the feed by default)
only_recently_updated – expects ‘t’. (only retrieve events added or updated in the past 48 hours)

Filters:

Add the following options to your URL to further customize your RSS or XML feed.

By School - '&schools=[school id]'
By Group - '&groups=[group id]'
By Facility - '&facilities=[facility id]'
By Other Location - '&facilities=[other location id]'
By Department - '&departments=[department id]'
By Activity - '&activities=[activity id]'
By Event Type - '&event_types=[event type id]'

To filter by multiple of one type - just add all the IDs separated by commas. For example - filtering by multiple schools: '&schools=1,2,3,4'

Excludes:

Excludes are setup just like Filters.

By School - '&ex_schools=[school id]'
By Group - '&ex_groups=[group id]'
By Facility - '&ex_facilities=[facility id]'
By Other Location - '&ex_facilities=[other location id]'
By Department - '&ex_departments=[department id]'
By Activity - '&ex_activities=[activity id]'
By Event Type - '&ex_event_types=[event type id]'

XML extra fields:

In XML feeds you can specify additional fields to be included. To do so add '&extra_fields=' to your XML feed URL and include one or more of the following field separated by commas:

notes
setup_instructions
created
created_by_name
time_dismiss
time_leave
time_return
time_setup
time_breakdown
event_type
activity_name
department_name
school_name
school_status
school_address
school_city
school_state
school_zip
location_name
location_type
location_address
location_city
location_state
location_zip
group_name
group_abbreviation
group_level
group_season
contact_first_name
contact_last_name
contact_name
supervisor_first_name
supervisor_last_name
supervisor_name
equipment_name
equipment_type
equipment_storage_location
owned_by_name
user_viewing_group_name

If you wanted to get an XML feed that had both the group and location names included you would add '&extra_fields=group_name,location_name' to your XML feed URL.

Example: https://demo.tandem.co/index.php?type=export&action=xml&extra_fields=group_name,location_name

JSON extra fields:

In JSON feeds you can specify additional fields to be included. To do so add '&fields=' to your JSON feed URL and include one or more of the following field separated by commas:

notes
setup_instructions
setup_picture
request_user_id
early_dismissal
time_leave
time_return
time_setup
time_breakdown
event_type
activities
departments
home_away (for participants)
locations
contacts
supervisors
equipment
num_adults
num_students
num_wheelchairs
user_viewing_groups
attachments
virtual_meeting_link
featured_image

If you wanted to get a JSON feed that had both the participants and location included you would add '&fields=home_away,locations' to your JSON feed URL.

Example: https://demo.tandem.co/index.php?type=export&action=json&fields=home_away,locations

Return to “Integrating Tandem into your organization's website”

Who is online

Users browsing this forum: No registered users and 3 guests