No-CodeIntermediate

How to Send Voiceflow Chat Data to a Spreadsheet With an API Step

Capture an email in Voiceflow and POST it to a Zapier or Make webhook with the API block so each chat lands in a Google Sheet.

10 minIntermediate

Voiceflow's API block lets your bot call any HTTP endpoint mid-conversation. Pair it with a webhook from Zapier or Make and you can log every captured lead to a Google Sheet, CRM, or database without writing a backend. This guide wires capture to a POST request.

What you need

  • A Voiceflow agent on the canvas
  • A Zapier or Make account to create a Catch Hook / webhook trigger
  • A Google Sheet (or any destination) connected to that automation

Step 1: Create the webhook in Zapier

In Zapier create a Zap with the Webhooks by Zapier trigger set to Catch Hook. Copy the unique URL it gives you. The second action sends a row to Google Sheets, mapping fields from the incoming payload.

test the webhook before wiring Voiceflow
Confirm the Zapier Catch Hook accepts JSON
$curl -X POST https://hooks.zapier.com/hooks/catch/123/abcde \
$ -H "Content-Type: application/json" \
$ -d '{"email":"test@example.com","topic":"pricing"}'
{"status":"success","attempt":"01H..."}
$

Step 2: Capture the data in Voiceflow

On the canvas add a Capture block to store the user's email into {email}, and another to store their question into {topic}.

Step 3: Configure the API block

Drag in an API block. Set the method to POST, paste the Zapier URL, add a Content-Type header, and put your variables in the JSON body. Voiceflow substitutes the variable values at run time.

Voiceflow — API block
API request
----------------------------------------
Method POST
URL https://hooks.zapier.com/.../abcde
Headers Content-Type: application/json
Body:
{
"email": "{email}",
"topic": "{topic}"
}
[ Send test request ]
POSTing captured variables to the webhook.
API block body
{
  "email": "{email}",
  "topic": "{topic}",
  "source": "voiceflow-web-agent"
}
Send a test request from the block
Voiceflow's API block has a Send Test button that shows the live response. Fire it once so Zapier sees a sample, which lets you map the fields to your Sheet columns correctly.

Step 4: Run the flow end to end

Open the tester, complete the capture steps, and let the API block fire. Switch to your Google Sheet and confirm a new row appeared with the email and topic. If not, check the Zapier task history for the failed run.

Result

Your bot now writes every captured conversation to a spreadsheet in real time. Because the API block is generic, you can repoint the URL at any endpoint later, a CRM, your own server, or a Make scenario, without touching the rest of the flow.

Watch related tutorials

Tags
#voiceflow#api#webhook#zapier#no-code