def post(self, name): if ItemModel.find_by_name(name): return { 'message': 'item with name {} already exists'.format(name) }, 400 parser = self.get_payload_parser([('price', float), ('store_id', int)]) data = parser.parse_args() new_item = ItemModel(name, data['price'], data['store_id']) new_item.create() saved_item = ItemModel.find_by_name(name) return saved_item.as_json(), 201