diff --git a/accountant/api/views/entries.py b/accountant/api/views/entries.py index 0bdff97..a5d0062 100644 --- a/accountant/api/views/entries.py +++ b/accountant/api/views/entries.py @@ -130,5 +130,22 @@ class EntryResource(Resource): return entry +category_resource_fields = { + 'category': fields.String, + 'expenses': fields.Float, + 'revenues': fields.Float +} + + +class CategoriesResource(Resource): + @session_aware + @marshal_with_field(fields.List(Object(category_resource_fields))) + def get(self, session): + kwargs = range_parser.parse_args() + + return Operation.get_categories_for_range(session, **kwargs) + + api_api.add_resource(EntryListResource, "/entries") api_api.add_resource(EntryResource, "/entries/") +api_api.add_resource(CategoriesResource, "/categories")