from flask import Flask, request import sqlite3 # Create a Flask app and set up the API endpoint app = Flask(__name__) @app.route('/dump_db', methods=['GET']) def dump_db(): # Connect to the SQLite database conn = sqlite3.connect('database.db') cursor = conn.cursor() # Retrieve the data from the database cursor.execute('SELECT * FROM price_data') rows = cursor.fetchall() # Format the data as a JSON document data = { 'timestamp': [row[0] for row in rows], 'value': [row[1] for row in rows], 'symbol': [row[2] for row in rows], 'source': [row[3] for row in rows], } # Check if a timestamp was provided in the request timestamp = request.args.get('timestamp') if timestamp: # Filter the data to only include rows with a timestamp greater than or equal to the provided value data = {k: [v for i, v in enumerate(v) if data['timestamp'][i] >= timestamp] for k, v in data.items()} # Return the data as a JSON response return data # Run the app if __name__ == '__main__': app.run()