> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brosbots.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Make

> Agent uruchamia scenariusz Make w trakcie rozmowy i przekazuje rozmówcy to, co scenariusz odpowie. Plus: zdarzenia po rozmowie i leady z reklam.

Make łączy się z BrosBots w trzy strony. Ta strona opisuje pierwszą, która
jest osobną integracją w katalogu, i wskazuje, gdzie są pozostałe dwie.

| Kierunek | Co to robi | Gdzie |
| - | - | - |
| **Agent → Make w trakcie rozmowy** | Agent uruchamia scenariusz z danymi z rozmowy i **słyszy odpowiedź** scenariusza | ta strona |
| **BrosBots → Make po zdarzeniu** | Podpisany `POST` po rozmowie, SMS-ie, kampanii, przy niskim saldzie | [Webhooki](/pl/integrations/webhooks) |
| **Make → BrosBots** | Make każe agentowi zadzwonić: lead z Facebooka, LinkedIna, TikToka, arkusza | [Szablony Make i Zapier](/pl/integrations/leads/make-zapier), [Wyzwalacz API](/pl/voice-agent/api-trigger) |

## Czym różni się od Zapiera

Wyzwalacz Zapier wysyła dane i na tym koniec: Catch Hook nie odpowiada.
Scenariusz Make zakończony modułem **Webhook response** odpowiada, a to, co
odpowie, trafia do agenta jako wynik narzędzia. Agent może więc nie tylko
przekazać coś do Waszych systemów, ale też **o coś je zapytać** jeszcze na
linii: o stan zamówienia w sklepie, wolny termin w systemie rezerwacji, kartę
klienta w aplikacji, do której Make ma moduł, a my nie mamy integracji.

Scenariusz bez modułu Webhook response też działa: Make odpowiada `Accepted`,
agent dostaje „wysłano” i mówi dalej.

## Podłączenie

<Steps>
  <Step title="Scenariusz w Make">
    Nowy scenariusz → moduł **Webhooks → Custom webhook** → **Add**, nadaj
    nazwę. Jeśli scenariusz ma odpowiadać agentowi, zakończ go modułem
    **Webhooks → Webhook response** z treścią w JSON-ie (przykład niżej).

    Zalecane: w ustawieniach webhooka **Show advanced settings** → włącz
    **Get request headers**, a po pierwszym module dodaj filtr: nagłówek
    `x-brosbots-secret` równy Twojemu sekretowi. Ten sam sekret wpiszesz po
    naszej stronie.
  </Step>

  <Step title="Skopiuj adres i włącz scenariusz">
    Adres jest w module webhooka (**Copy address to clipboard**), postaci
    `https://hook.eu1.make.com/…`. Przełącznik w lewym dolnym rogu edytora
    musi być włączony; przy wyzwalaczu webhookiem harmonogram to
    **Immediately**.

    <Note>
      Make pokazuje strukturę danych dopiero po pierwszym żądaniu. Kliknij
      **Redetermine data structure**, zapisz połączenie u nas (zapis wysyła
      wiadomość testową) i dopiero potem mapuj pola w kolejnych modułach.
    </Note>
  </Step>

  <Step title="Połączenie w BrosBots">
    **Integracje** → **Make**. Wklej adres i sekret, jeśli go ustawiłeś.
    Zapis wysyła wiadomość testową, więc scenariusz uruchomi się raz
    z `"event": "test"` w treści.
  </Step>

  <Step title="Włącz narzędzie w agencie">
    Edytor agenta → **Integracje** → **Scenariusz Make**. Wybierz połączenie
    i wypełnij **Kiedy i co wysłać** oraz **Zdania, po których ma zadziałać**.
    Bez tych pól agent ma narzędzie, ale nie wie, po co - i zwykle go nie
    użyje. Szczegóły w [Slack, e-mail, Zapier i kalendarz w trakcie
    rozmowy](/pl/integrations/overview#slack-e-mail-zapier-i-kalendarz-w-trakcie-rozmowy).
  </Step>
</Steps>

Ten sam przełącznik jest też w kreatorze nowego agenta (**Co agent potrafi**
→ **Scenariusz Make**): wpisany tam adres i sekret tworzą połączenie przy
zapisie.

<Note>
  Integracja Make jest dostępna od planu **Start**, tak jak Zapier, n8n
  i webhooki. Moduł Webhooks jest w Make dostępny także w planie darmowym.
</Note>

## Co przychodzi do scenariusza

Agent wysyła `POST` z JSON-em. Pola `event` i `data` wymyśla sam, zgodnie z
tym, co wpisałeś w **Kiedy i co wysłać**; pozostałe dwa dokładamy my, więc
agent nie może ich zmyślić.

```json theme={null}
{
  "event": "appointment_request",
  "data": "wtorek 10:00, strzyżenie, klientka Anna",
  "caller_phone": "+48600100200",
  "workflow_run_id": "3f1c2a7e-...."
}
```

| Pole | Skąd |
| - | - |
| `event` | krótka nazwa zdarzenia od agenta, np. `lead_qualified`, `order_status`, `appointment_request` |
| `data` | to, co agent zebrał w rozmowie, albo o co pyta - wolny tekst |
| `caller_phone` | numer rozmówcy (pusty w rozmowie z widgetu) |
| `workflow_run_id` | id rozmowy; ten sam, który przychodzi później w `call.completed` |

W Make pola są dostępne jako `{{1.event}}`, `{{1.data}}`,
`{{1.caller_phone}}`. Z nagłówkiem `X-Brosbots-Secret`, jeśli połączenie ma
sekret.

## Co może odpowiedzieć scenariusz

Moduł **Webhook response**: **Status** `200`, w **Custom headers** dodaj
`Content-Type: application/json`, a w **Body** jedno zdanie, które agent ma
przekazać:

```json theme={null}
{ "message": "Wtorek 10:00 jest wolny, zapisałem Annę na strzyżenie." }
```

Obsługiwane kształty:

| Odpowiedź | Co dostaje agent |
| - | - |
| `{"message": "…"}` (też `result`, `answer`, `text`) | sam tekst |
| zwykły tekst | tekst bez zmian |
| dowolny inny JSON | JSON w całości, do 2000 znaków - agent sam go odczyta |
| `Accepted` (bez modułu Webhook response) | „wysłano”, bez wyniku |

Agent czeka na odpowiedź do **15 sekund**. Rozmowa trwa, więc jeśli
scenariusz robi coś długiego, postaw Webhook response wcześniej w łańcuchu,
a ciężkie moduły za nim. Make wykona je po wysłaniu odpowiedzi.

Kod `4xx`/`5xx` to błąd narzędzia: agent dostaje „Make failed (kod)” i mówi
rozmówcy, że nie udało się sprawdzić. Make zwraca `400` także wtedy, gdy
filtr odrzuci żądanie bez sekretu.

## Zdarzenia po rozmowie w Make

To osobna integracja, **Webhook po rozmowie** z katalogu, i osobny
scenariusz: moduł **Custom webhook**, którego adres wklejasz w kreatorze
webhooka. Przychodzi `call.completed` z transkrypcją, podsumowaniem i
wynikiem, a na życzenie też SMS-y, kampanie i `balance.low`; format i lista
zdarzeń w [Webhookach](/pl/integrations/webhooks).

## Rozwiązywanie problemów

| Objaw | Przyczyna | Co zrobić |
| - | - | - |
| Test: Make zwrócił `400` | filtr na sekret odrzucił żądanie albo webhook czeka na strukturę danych | wpisz ten sam sekret po obu stronach; w Make kliknij **Redetermine data structure** |
| Test: Make zwrócił `410` / `404` | webhook usunięty albo scenariusz wyłączony | włącz scenariusz, skopiuj adres jeszcze raz |
| Agent mówi, że nie udało się sprawdzić | scenariusz zgłosił błąd albo nie odpowiedział w 15 s | **History** w Make pokaże, który moduł padł; przenieś Webhook response przed długie moduły |
| Agent nie używa narzędzia | puste **Kiedy i co wysłać** | opisz, kiedy ma uruchomić scenariusz i co przekazać |
| Agent przekazuje surowy JSON | scenariusz odpowiada całym rekordem | odpowiadaj `{"message": "…"}` z gotowym zdaniem |
| Pola z agenta są puste w kolejnych modułach | struktura danych ustalona przed pierwszym prawdziwym żądaniem | **Redetermine data structure**, potem zapisz połączenie u nas jeszcze raz |

Każde uruchomienie widać w Make w **History**, z treścią, która przyszła od
agenta.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.