After reviewing your post again, I think that you are not looking at the error correctly.
Because of the way you have your controller configured, there is an ambiguous route.
Multiple actions were found that match the request:
GetUser(Int32) on type Byui.ILearnAPI2.API.Controllers.UsersController
GetUserEnrollments(Int32) on type Byui.ILearnAPI2.API.Controllers.UsersController
GetUser and GetUserEnrollments share the same route. From what I can tell GetUser is not going to work if you pass it an int or a string or whatever, because it does not know how to resolve properly.
You can add a route config before your default to resolve the issue.
config.Routes.MapHttpRoute(
name: "GetUsers",
routeTemplate: "api/users/{id}",
defaults: new { controller = "Users", action = "GetUser" }
);