route.ts 531 Bytes
Newer Older
1
2
3
4
5
6
7
8
import { Analytics } from '@segment/analytics-node'
import { v4 as uuid } from 'uuid'

const analytics = new Analytics({ writeKey: process.env.TELEMETRY_WRITE_KEY || '<empty>' })

export async function POST(req: Request) {
  const { email } = await req.json()

Jeffrey Morgan's avatar
Jeffrey Morgan committed
9
10
11
12
  const id = uuid()

  await analytics.identify({
    anonymousId: id,
13
14
15
16
17
    traits: {
      email,
    },
  })

Jeffrey Morgan's avatar
Jeffrey Morgan committed
18
19
20
21
22
23
24
25
  await analytics.track({
    anonymousId: id,
    event: 'signup',
    properties: {
      email,
    },
  })

26
27
  return new Response(null, { status: 200 })
}