aboutsummaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorDhravya <[email protected]>2024-04-14 00:27:17 -0700
committerDhravya <[email protected]>2024-04-14 00:27:17 -0700
commit7f34ca31a88ab1434d06e6d35f5ab8504a87e12e (patch)
treee665ea8223bccb07c2cca64814140c0788bc27df /apps
parentadded edit route (diff)
downloadarchived-supermemory-7f34ca31a88ab1434d06e6d35f5ab8504a87e12e.tar.xz
archived-supermemory-7f34ca31a88ab1434d06e6d35f5ab8504a87e12e.zip
wipedata api
Diffstat (limited to 'apps')
-rw-r--r--apps/cf-ai-backend/src/routes.ts2
-rw-r--r--apps/cf-ai-backend/src/routes/wipedata.ts19
2 files changed, 21 insertions, 0 deletions
diff --git a/apps/cf-ai-backend/src/routes.ts b/apps/cf-ai-backend/src/routes.ts
index 0f16b4d2..b9e1cdb4 100644
--- a/apps/cf-ai-backend/src/routes.ts
+++ b/apps/cf-ai-backend/src/routes.ts
@@ -7,6 +7,7 @@ import * as apiBatchUploadTweets from './routes/batchUploadTweets';
import * as apiGetPageContent from './routes/getPageContent';
import * as apiDelete from './routes/delete';
import * as apiEdit from './routes/edit';
+import * as apiWipeData from './routes/wipedata';
import { OpenAIEmbeddings } from './OpenAIEmbedder';
import { GenerativeModel } from '@google/generative-ai';
import { Request } from '@cloudflare/workers-types';
@@ -35,6 +36,7 @@ routeMap.set('/getPageContent', apiGetPageContent);
routeMap.set('/delete', apiDelete);
routeMap.set('/edit', apiEdit);
+routeMap.set('/wipedata', apiWipeData);
// Add more route mappings as needed
// routeMap.set('/api/otherRoute', { ... });
diff --git a/apps/cf-ai-backend/src/routes/wipedata.ts b/apps/cf-ai-backend/src/routes/wipedata.ts
new file mode 100644
index 00000000..841330f8
--- /dev/null
+++ b/apps/cf-ai-backend/src/routes/wipedata.ts
@@ -0,0 +1,19 @@
+import { Request } from '@cloudflare/workers-types';
+import { type CloudflareVectorizeStore } from '@langchain/cloudflare';
+import { OpenAIEmbeddings } from '../OpenAIEmbedder';
+import { GenerativeModel } from '@google/generative-ai';
+import { seededRandom } from '../util';
+
+// TODO: Waiting for cloudflare to implement tojson so i can get all IDS for that user and delete them
+export async function DELETE(request: Request, store: CloudflareVectorizeStore, _: OpenAIEmbeddings, m: GenerativeModel, env: Env) {
+ const { searchParams } = new URL(request.url);
+ const user = searchParams.get('user');
+
+ console.log(store.toJSONNotImplemented());
+
+ // for (const match of matches.matches) {
+ // await store.delete({ ids: [match.id] });
+ // }
+
+ return new Response(JSON.stringify({ message: 'Document deleted' }), { status: 200 });
+}