vkashti / app / api / sms / route.ts
route.ts
Raw
import { NextRequest, NextResponse } from 'next/server';

export async function POST(req: NextRequest) {
  try {
    const { to, message } = await req.json();
    const smsToken = process.env.SMS_API_KEY;
    if (!smsToken) {
      return NextResponse.json({ error: 'Missing SMS token' }, { status: 500 });
    }
    const response = await fetch(
      `https://api.smsapi.bg/sms.do?from=1511&to=${to}&message=${encodeURIComponent(message)}&format=json`,
      {
        method: 'POST',
        headers: { Authorization: `Bearer ${smsToken}` }
      }
    );
    if (!response.ok) {
      throw new Error(`Request failed with status ${response.status}`);
    }
    return NextResponse.json({ success: true });
  } catch (error) {
    const errorMessage =
      error instanceof Error ? error.message : 'An unknown error occurred';
    return NextResponse.json({ error: errorMessage }, { status: 500 });
  }
}