summaryrefslogtreecommitdiff
path: root/ping/frontend/src/routes/stocksapi/chart
diff options
context:
space:
mode:
Diffstat (limited to 'ping/frontend/src/routes/stocksapi/chart')
-rw-r--r--ping/frontend/src/routes/stocksapi/chart/+server.ts21
1 files changed, 21 insertions, 0 deletions
diff --git a/ping/frontend/src/routes/stocksapi/chart/+server.ts b/ping/frontend/src/routes/stocksapi/chart/+server.ts
new file mode 100644
index 0000000..3271e83
--- /dev/null
+++ b/ping/frontend/src/routes/stocksapi/chart/+server.ts
@@ -0,0 +1,21 @@
+import type { RequestHandler } from '@sveltejs/kit';
+import yahooFinance from 'yahoo-finance2';
+
+/**
+ * Example request : GET /stocksapi/chart?query=AAPL&startDate=2025-01-01&
+ */
+export const GET: RequestHandler = async ({ request }) => {
+ const sp = new URL(request.url).searchParams;
+ const query = sp.get('query') || 'AAPL';
+ const startDate = sp.get('startDate') || '2025-01-01';
+ const endDate = sp.get('endDate') || new Date().toISOString().split('T')[0];
+ const interval = sp.get('interval') || '1d';
+
+ const data = await yahooFinance.chart(query, { period1: startDate, period2: endDate, interval: interval });
+ return new Response(JSON.stringify(data), {
+ headers: {
+ 'Content-Type': 'application/json',
+ 'Cache-Control': 'no-cache',
+ },
+ });
+}; \ No newline at end of file