mirror of
https://github.com/beilunyang/moemail.git
synced 2026-06-09 17:39:39 +08:00
feat: profile page & webhook notification
This commit is contained in:
39
app/api/webhook/test/route.ts
Normal file
39
app/api/webhook/test/route.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
import { callWebhook } from "@/lib/webhook"
|
||||
import { WEBHOOK_CONFIG } from "@/config"
|
||||
import { z } from "zod"
|
||||
import { EmailMessage } from "@/lib/webhook"
|
||||
|
||||
export const runtime = "edge"
|
||||
|
||||
const testSchema = z.object({
|
||||
url: z.string().url()
|
||||
})
|
||||
|
||||
export async function POST(request: Request) {
|
||||
try {
|
||||
const body = await request.json()
|
||||
const { url } = testSchema.parse(body)
|
||||
|
||||
await callWebhook(url, {
|
||||
event: WEBHOOK_CONFIG.EVENTS.NEW_MESSAGE,
|
||||
data: {
|
||||
emailId: "123456789",
|
||||
messageId: '987654321',
|
||||
fromAddress: "sender@example.com",
|
||||
subject: "Test Email",
|
||||
content: "This is a test email.",
|
||||
html: "<p>This is a <strong>test</strong> email.</p>",
|
||||
receivedAt: "2023-03-01T12:00:00Z",
|
||||
toAddress: "recipient@example.com"
|
||||
} as EmailMessage
|
||||
})
|
||||
|
||||
return Response.json({ success: true })
|
||||
} catch (error) {
|
||||
console.error("Failed to test webhook:", error)
|
||||
return Response.json(
|
||||
{ error: "Failed to test webhook" },
|
||||
{ status: 400 }
|
||||
)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user