Third Party Social Aggregator Tools? Not in Our House.

The key to hosting a killer industry event is to make sure that everyone attending is engaged throughout. One way Nebo likes to do this is by creating digital experiences that attendees can interact with. We'd be remiss if we didn't leverage the most interactive technology ever created: social media. Because let's be real, if you didn't post it, did it really happen?

The Idea

We wanted to create a cool social media aggregator tool that would display a live feed of Instagram and Twitter posts based on a user-generated hashtag. We have previously used an expensive third-party tool, such as, to do this for industry events hosted at Nebo. But why spend that money when we have an amazing (and humble) Engineering team that could whip up an app with the same functionality, and make it totally customizable with company branding?

The Problem

Facebook, who owns Instagram, has really tightened up their credentials for who can use their API since switching from their legacy API to their Graph API in 2020. In order to grab Instagram data based on a hashtag, I had to have a working prototype of the app, request access to 4 different permissions, write a summary of how I will use each of the permissions and upload a screencast displaying how each of the permissions would be used. After doing ALL of that, I had a 5-7 day wait to get a response. So I waited …. And….




For my non-sports-loving friends, that is a monster of a man Zion Williamson (aka Facebook) rejecting the crap out of some scrub (aka me 🙁). 

Well ok then, let's try again. Facebook gave me some very broad feedback that I tried to follow. I read a few blog posts, watched a few videos, and even reached out to Nebo’s Facebook marketing rep for some pointers. By the end of my day, I had developed an amazing pitch as to why I need these permissions. I sent it in…. waited 5-7 days…. And….




It was time to come up with another plan, and that’s when I learned that Instagram allows you to make a GET request to their explore page, which returns a big, gross JSON response of post data. With enough patience and determination, I was able to parse through this JSON in order to grab the caption, post date, and image link. Luckily, Twitter was much easier to deal with thanks to the Twitter gem, so pulling out the Tweet and user information was easy.

A downside of pulling Instagram posts from the explore page? I couldn't ensure the content is appropriate or even relevant. The Twitter Gem allows users to filter by certain accounts, which helps filter out spam, but we want our app to be open to all event attendees. As anyone who is familiar with a lot of the content on Instagram and Twitter knows, this has the potential to be a major issue when displaying posts to a packed room full of people.

Nebo CMS4 Saves The Day

To solve this issue, I developed a way to save all of the posts in Nebo CMS4. This gave me or someone at the live feed event a chance to remove any post that contained sensitive or irrelevant content. Here is a quick demonstration of what that looks like:

The Result

Once I had the connectors set up and made it editable through the CMS, it was just a matter of calling the database and sending a nicely packaged array of safe-for-work post objects to the front end. And after some CSS wizardry, we came up with a beautiful social wall that we are able to display at all of the industry events hosted by Nebo, while saving thousands of dollars. Take that, third-party tools.



Take Over the World With Us

Work With Us



Join the Team


Open Jobs