Commonwealth Games Australia: Custom API Integration

2019

Commonwealth Games Australia: Custom API Integration

Brief

Integrate APIs via custom plugins into a rebuilt site in order to display various pieces of data such as games, sports, athletes and results, in a way that is easy for users to filter and search through.

Context

I've had the pleasure of working with the team at Digital Thing for a few years. This project, for CGA, is an excellent example of the kind of work that I would usually collaborate with them on. DT were tasked to do a revamp of the CGA site, this also included updating the way that historical data was presented on the site.

This meant integrating with APIs that provided a very rich set of historical games data and ensuring that the data was fed into the CGA site. After that, the data would need to be easy to use and filter through for users.

Solution

Without going into too much detail on the tech stack and overall architecture, the challenge here was ensuring that a very large set of data was pulled in and stored in a format that the site FE could query and work with locally. We then also had to set up a continued process that would import data as it was updated at the source.

In a nutshell, the back-end work involved:

  1. Creating custom plugins with their own settings and admin controls
  2. Ensuring thed necessary objects and taxonomies were set up to store the imported API data
  3. Configuring a CRON to run periodic syncs for the various types of data available - such as games or athletes.

Once that part was sorted, the front-end work would require creating an AJAX based filtering system and data table. The data table rows would have to also easily be linked to all the relevant data objects so that users could quickly search or filter for whatever they needed and then click through and go to the relevant details elsewhere on the site.

CGA fronted filtering example

The design team did a fantastic job of organising all of this in a simple to use, clean and user friendly way. Users can play with the data set from a number of different angles (by game, by sport, by athlete) as well as have the ability to drill down in each of these.

I had worked with CGA many years ago when I first started in digital back in 2006 while working for Elite Sports Properties, so it was also cool to come back to a client I had some experience with in the past.