public CategoryWithGroupList Categories([FromUri] CategoryParam param)
 {
     if (param == null)
     {
         throw new ArgumentNullException("param");
     }
     if (!(param.StartPoint.HasValue || (param.StartPointAlias == null)))
     {
         param.sp = new int?(CatalogProvider.GetGeoPointIdByAlias(param.StartPointAlias));
     }
     return(new CategoryWithGroupList(ExcursionProvider.GetCategories(param.Language, param.StartPoint)));
 }