I finally figured out the problem in case anyone else finds this problem. My Register Routes over load previously looked like this
mapRouteManager.MapHttpRoute(
moduleFolderName: "Programs",
routeName: "Programs",
url: "{controller}/{action}",
defaults: new { controller = "ProgramApi", action = "GetList", id = System.Web.Mvc.UrlParameter.Optional },
namespaces: new string[] { "[Namespace]" });
In order to register the routes through Azure, for some reason this overload doesn't work. I had to change it to this:
mapRouteManager.MapHttpRoute("Programs",
"default",
"{controller}/{action}",
new[] { "HyperLib.Modules.Programs.Services" });