A web application that allows users to bulk upload incident events to Amplitude via CSV files. The application provides a user-friendly interface with drag-and-drop functionality and preview capabilities.
- Drag-and-drop CSV file upload
- File selection via browser
- Preview of uploaded data (up to 5 rows)
- Validation of CSV format and data
- Bulk sending of events to Amplitude
- Responsive design
- Sample data templates provided
- Python 3.7+
- Flask
- Amplitude Analytics account
- Clone the repository:
git clone <repository-url>
cd incident-events-upload
- Install required dependencies:
pip install -r requirements.txt
- Create a
.env
file in the root directory with:
AMPLITUDE_API_KEY=<your-amplitude-api-key>
- Start the Flask application:
python app.py
- Open your browser and navigate to
http://127.0.0.1:8080
to access the application.
The CSV file must contain the following columns in this exact order:
user_id
: Unique identifier for the userincident_name
: Name of the incidentshort_description
: Brief description of the incidentdatetime
: Date and time of the incident (format: MM/DD/YYYY HH:MM)
Example:
user_id,incident_name,short_description,datetime
12345,Incident 1,Description of Incident 1,01/01/2024 10:00
67890,Incident 2,Description of Incident 2,01/02/2024 11:00