I was inspired by how little control people have over where their personal data ends up. Most people receive marketing emails from companies they barely remember interacting with, and even if they want their data deleted, finding the right contact and dealing with each company manually is tedious. I wanted to see if I could use the inbox itself as a starting point to find organisations that may hold someone’s data and automate some of that process.

I built the project in Python using the Gmail API and OpenAI API. It reads unread emails, classifies them as personal, marketing, or replies to previous requests, and can generate and send a data deletion request to relevant organisations. It also reads replies and checks whether the request is complete or whether the company needs more information. If the company says where it originally got the data from, the program can extract that source so it could later be used to build a wider map of how personal data is shared between companies.

The main thing I learned was that connecting APIs is only a small part of the problem. The harder part was getting the program to deal with unpredictable email content and AI responses reliably. I also ran into issues when moving my original Jupyter notebook into a normal Python script, because the notebook relied on variables being stored between cells. I had to restructure the program so that each email was fully processed in one flow. With more time, I would improve the tracking system, build the data source graph properly, and add more safeguards before any sensitive information is sent.

Built With

Share this project:

Updates

Submission history