feat: add MCP creator screenshot metrics recognition
This commit is contained in:
@@ -4,9 +4,10 @@ import {
|
||||
getUploadBucket,
|
||||
} from "../../../lib/mvp-db";
|
||||
import { adminForbidden, isAdminRequest } from "../../../lib/admin-auth";
|
||||
import { verifyCreatorScreenshotAccessToken } from "../../../lib/creator-screenshot-access";
|
||||
|
||||
export async function GET(request: Request) {
|
||||
if (!(await isAdminRequest(request))) return adminForbidden();
|
||||
const isAdmin = await isAdminRequest(request);
|
||||
try {
|
||||
await ensureSchema();
|
||||
const distributionId = new URL(request.url).searchParams
|
||||
@@ -22,6 +23,18 @@ export async function GET(request: Request) {
|
||||
)
|
||||
.bind(distributionId)
|
||||
.first<{ screenshot_key: string | null }>();
|
||||
const mcpToken = new URL(request.url).searchParams.get("mcp_token") || "";
|
||||
if (
|
||||
!isAdmin &&
|
||||
(!row?.screenshot_key ||
|
||||
!verifyCreatorScreenshotAccessToken(
|
||||
distributionId,
|
||||
row.screenshot_key,
|
||||
mcpToken,
|
||||
))
|
||||
) {
|
||||
return adminForbidden();
|
||||
}
|
||||
if (
|
||||
!row?.screenshot_key ||
|
||||
!row.screenshot_key.startsWith("creator-center/")
|
||||
|
||||
Reference in New Issue
Block a user