Thank you for contacting us.
Yes building a custom widget is your best bet to consume JSON from an outside source and display it on the page. With this method you could consume the WebAPI as you would in any other asp.net application as the widget's are based off user controls or custom controls. Here's a video on how to create custom widgets. If you don't have it already I highly recommend using Sitefinity Thunder as it makes the process infinitely easier from development to installing your custom widget.
I hope this helps.
the Telerik team
Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Public Issue Tracking
system and vote to affect the priority of the items