Розробка Serverless Functions для сайту (Vercel Functions)

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Розробка Serverless Functions для сайту (Vercel Functions)
Проста
~2-3 робочих дні
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Розробка Serverless Functions для сайту (Vercel Functions)

Vercel Functions — це серверні функції, які розгортаються разом зі статичним сайтом або Next.js-додатком. Жодної інфраструктури: push у git → функція доступна через /api/....

Як влаштовані Vercel Functions

Файли в директорії api/ (для Vite/SPA) або app/api/ (для Next.js App Router) автоматично стають серверними ендпоїнтами. Підтримуються Node.js, Edge Runtime, Python, Ruby, Go.

Приклад: функція форми зворотного зв'язку

Файл api/contact.ts:

import type { VercelRequest, VercelResponse } from "@vercel/node";
import { Resend } from "resend";

const resend = new Resend(process.env.RESEND_API_KEY);

export default async function handler(req: VercelRequest, res: VercelResponse) {
  if (req.method !== "POST") {
    return res.status(405).json({ error: "Method not allowed" });
  }

  const { name, email, message } = req.body;

  if (!name || !email || !message) {
    return res.status(400).json({ error: "Missing fields" });
  }

  await resend.emails.send({
    from: "[email protected]",
    to: "[email protected]",
    subject: `Нове повідомлення від ${name}`,
    text: `Від: ${name} <${email}>\n\n${message}`,
  });

  return res.status(200).json({ ok: true });
}

Функція доступна за адресою https://your-site.vercel.app/api/contact.

Next.js App Router API Routes

// app/api/newsletter/route.ts
import { NextRequest, NextResponse } from "next/server";

export async function POST(request: NextRequest) {
  const { email } = await request.json();

  // Додавання в Mailchimp/SendGrid
  const response = await fetch("https://api.mailchimp.com/3.0/lists/LIST_ID/members", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.MAILCHIMP_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ email_address: email, status: "subscribed" }),
  });

  if (!response.ok) {
    return NextResponse.json({ error: "Subscription failed" }, { status: 400 });
  }

  return NextResponse.json({ ok: true });
}

Змінні оточення

У Vercel Dashboard → Settings → Environment Variables. Для локальної розробки — .env.local:

RESEND_API_KEY=re_...
DATABASE_URL=postgresql://...

Vercel автоматично не передає змінні з NEXT_PUBLIC_ на сервер — лише на клієнт. Серверні секрети не додавайте з цим префіксом.

Обмеження безплатного плану

  • Максимальний час виконання: 10 секунд (Hobby), 60 секунд (Pro)
  • Розмір відповіді: 5 MB
  • 100 GB-годин виконання на місяць
  • Регіони: один регіон на Hobby, всі регіони на Pro

Для більшості сайтів плану Hobby достатньо.

Терміни

Базові API-функції (форма, підписка, webhook) — 1–2 дні, включаючи розгортання та налаштування змінних оточення.