import type { NextApiRequest, NextApiResponse } from "next";

type ResponseData = {
  message: string;
};

export default async function handler(
  req: NextApiRequest,
  res: NextApiResponse<ResponseData>,
) {
  const data = JSON.parse(req.body);
  const body = {
    url: data.url,
    description: data.title,
    domain: "vdaysong.com",
  };

  try {
    const response = await fetch(`${process.env.TINY_URL_API_URL}`, {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.TINY_URL_TOKEN}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify(body),
    });

    const data = await response.json();
    return res.status(200).json(data);
  } catch (e) {
    return res.status(500).json({ message: "Failed to generate short link." });
  }
}
