From 0e4d1de7ce15171362909374c7c54f34fbe30897 Mon Sep 17 00:00:00 2001 From: Jeff Emmett Date: Wed, 25 Feb 2026 00:30:15 -0800 Subject: [PATCH] Add internal provision endpoint for rSpace Registry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Simple acknowledge endpoint — no DB to provision. Co-Authored-By: Claude Opus 4.6 --- app/api/internal/provision/route.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 app/api/internal/provision/route.ts diff --git a/app/api/internal/provision/route.ts b/app/api/internal/provision/route.ts new file mode 100644 index 0000000..3d26a12 --- /dev/null +++ b/app/api/internal/provision/route.ts @@ -0,0 +1,17 @@ +import { NextResponse } from "next/server"; + +/** + * Internal provision endpoint — called by rSpace Registry when activating + * this app for a space. No auth required (only reachable from Docker network). + * + * rtube stores videos in R2 buckets keyed by space slug. + * Acknowledges provisioning; bucket is created on first upload. + */ +export async function POST(request: Request) { + const body = await request.json(); + const space: string = body.space?.trim(); + if (!space) { + return NextResponse.json({ error: "Missing space name" }, { status: 400 }); + } + return NextResponse.json({ status: "ok", space, message: "rtube space acknowledged, bucket created on first upload" }); +}