Към съдържанието
REST API

Гласов агент с чешки номер във Вашето приложение от Lovable

Lovable изгражда приложения с React и Supabase бекенд - затова повикванията към REST API на volai се поставят на сървъра, в една Edge Function, а не в приложението в браузъра.

1Запазете API ключа като Supabase secret

В проекта в Supabase, който Lovable е създал за Вашето приложение, добавете променлива на средата VOLAI_API_KEY със стойността на своя ключ (портал, раздел API и MCP). Никога не го слагайте във фронтенд кода или в хранилището - всеки, който го види, би могъл да харчи Вашия баланс.

2Извикайте volai от Edge Function

Създайте Edge Function, която приема заявката от приложението и едва ТЯ извиква https://volai.cz/v1/messages със заглавие Authorization: Bearer ${VOLAI_API_KEY}. По същия начин може да се изгради и функция за POST /v1/calls (обаждане чрез гласов агент).

typescript
// supabase/functions/send-sms/index.ts
Deno.serve(async (req) => {
  const { to, body } = await req.json();

  const res = await fetch("https://volai.cz/v1/messages", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${Deno.env.get("VOLAI_API_KEY")}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ to, body }),
  });

  return new Response(await res.text(), { status: res.status });
});

3Извикайте функцията от потребителския интерфейс

От компонент на приложението извикайте Edge Function през supabase.functions.invoke(...) - ключът остава само на сървъра, а приложението изпраща единствено to и текста на съобщението.

typescript
const { data, error } = await supabase.functions.invoke("send-sms", {
  body: { to: "+420777123456", body: "Вашата поръчка е готова за получаване." },
});

4Задайте webhook, за да научава приложението изхода от обаждането

Създайте втора Edge Function, която приема събитие (call.completed, call.failed, call.no_answer, call.missed, message.sent, message.received) и го записва в таблица в Supabase - оттам приложението го чете през Realtime или обикновена заявка. Адреса запазете през PUT /v1/webhook; празно поле events би означавало всички събития без изключение, затова по-добре ги изброете. По подразбиране Supabase допуска до Edge Function само заявки с ключ в заглавието Authorization, иначе връща 401: за тази функция изключете verify_jwt и проверявайте събитието с подписа Volai-Signature или изпратете ключа в собствено заглавие през полето headers.

bash
curl -X PUT https://volai.cz/v1/webhook \
  -H "Authorization: Bearer vk_TVUJ_KLIC" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://tvuj-projekt.supabase.co/functions/v1/volai-webhook", "events": ["call.completed", "message.sent"]}'

5По желание: нека Lovable AI сам добави volai

При изграждането на приложението Lovable може да използва и външен инструмент чрез собствен MCP сървър (Custom MCP servers / Custom connectors в настройките за интеграции). Адресът на сървъра е https://volai.cz/mcp, удостоверяването е Authorization: Bearer vk_TVUJ_KLIC - точните бутони в интерфейса на Lovable се променят по-бързо, отколкото тази страница може да следи, затова актуалните стъпки потърсете в docs.lovable.dev/integrations.

Какво ще постигнете

Потвърдителен SMS след поръчка или резервация

Онлайн магазин или приложение за резервации, изградено с Lovable, след плащане извиква собствена Edge Function, която изпраща потвърдителен SMS с подробности за поръчката.

Гласов агент, който вдига телефона вместо приложението

Приложението купува телефонен номер и създава агент през REST (или ги настройвате ръчно в портала) - клиентите на приложението тогава звънят на истински чешки номер, а не на чужда платформа.

Lovable AI сам добавя обаждания и SMS в приложението

При изграждането на приложението оставяте Lovable AI да използва volai през Custom MCP - описвате функцията с думи („добави бутон, който звъни на клиента“) и AI сам избира подходящия инструмент.

Често задавани въпроси

Мога ли да извиквам API на volai директно от фронтенд кода на приложението?
Не. API ключът не бива да стига до браузъра - всеки, който отвори конзолата за разработчици, би могъл да го види и да харчи Вашия баланс. Винаги минавайте през Edge Function или друг сървърен маршрут, който държи ключа само на бекенда.
Има ли за Lovable вграден конектор за volai?
Засега не - вградените конектори в Lovable са винаги партньорства (така работи например този за ElevenLabs). Днес пътят е през REST от Edge Function или през общия Custom MCP сървър, описан по-горе.
Как приложението разбира, че обаждането е приключило, без непрекъснато да пита?
Webhook call.completed записвате в таблица в Supabase чрез Edge Function, а приложението чете промяната през Supabase Realtime - без периодично запитване.
Колко ще струва работата на приложението?
Същите тарифи като в ценовата страница, без допълнителна такса за Lovable: SMS 1,36 kr (≈ 0,06 EUR), изходящо обаждане 0,92 kr/min (≈ 0,04 EUR), гласов агент допълнително 2,50 kr/min (≈ 0,10 EUR). Точните цени са на /cenik.

Опитайте веднага

Регистрирайте се и първите 50 kr са от нас.