from flask import make_response, current_app from flask_apispec import MethodResource from connectors.schemas import webhook_event from connectors.services.connectors_service import ConnectorsService from flask_apispec import marshal_with, use_kwargs, doc from utils.test_helpers import sync @doc(tags=['Connectors']) class ConnectorsWebhookView(MethodResource): connectors_service = ConnectorsService() @doc(description='Sync data for the connectors. Catch Fivetran webhook events') @use_kwargs(webhook_event) @marshal_with(None, code=200, description='Successful parsing of data sent by webhook') @sync async def post(self, params): await self.connectors_service.webhook_data_process(params) response = make_response("", 200) response.mimetype = current_app.config["JSONIFY_MIMETYPE"] return response