← All projects
MAN Truck & Bus MLOps · Cloud Engineering

Survey Response Ingestion Endpoint on AWS

Connecting a conversational front-door (Open WebUI) to durable, centralized storage for departmental survey data — replacing hours of manual, repeated data collection with a chatbot backed by a serverless AWS API.

A business department needed a way to collect and persist structured survey responses without repeatedly walking employees through the same clarifying questions by hand. A chatbot was chosen as the user interface, and a serverless AWS backend was built for persisting and retrieving survey responses.

Solution

To validate the use case and get buy-in from the business department, a prototype of a customized chatbot was built and demoed within two days using the Open WebUI low-code platform. The outcome was the decision to move the project to the next phase and build a production-ready solution.

AWS was chosen for the production service over two alternatives — Power Automate’s HTTP endpoint feature and on-prem servers. Open WebUI sends survey results to a public HTTP endpoint (AWS API Gateway) backed by an AWS Lambda function which retrieves, validates, and persists survey data in DynamoDB. API access is controlled via Usage Plans and API keys. Images submitted in the surveys are stored on S3.

Mentorship

This project was executed in collaboration with a junior data scientist. High-level architecture and design were owned end-to-end, while the colleague took over implementation work, collaborating in a lean Scrum process aided by a shared Jira board.

Results and outlook

After the initial prototype, early skepticism from the business team was disproved and the project got full buy-in. It was presented to the business department’s leadership and to skip-level management.

Next steps identified: a frontend to browse and download stored responses, moving API authentication from API Keys/Usage Plans to Cognito with a custom Lambda authorizer, adding observability via AWS Lambda Powertools plus CloudWatch alarms, evaluating CloudFront + ECS Fargate + DynamoDB against a lighter backend-less pattern for retrieval, integrating with the department’s internal database software, and adding an MCP server.