Skip to the page

Recipes

Google Sheets recipes

Text each new row, and keep a sheet of every reply.

Three recipes for Google Sheets. Each names its trigger and the BlueBot step, lists the fields to map and says how to test it with your own number before anyone else gets a text.

How Google Sheets connects

  • Zapier: BlueBot’s Zapier app has a Send Text action and instant triggers for incoming texts and every change of state.
  • Make: BlueBot’s Make app sends texts and starts scenarios when a text comes in or changes state.
  • n8n: BlueBot’s n8n community node sends texts and starts workflows from BlueBot’s webhooks.

Text each new row

PartWhat it is
TriggerGoogle Sheets’ New Spreadsheet Row trigger in Zapier
ActionBlueBot’s Send Text action
Connects throughZapier

Steps

  1. Keep one row per person with their first name and mobile number.
  2. Start a Zap with Google Sheets’ New Spreadsheet Row trigger.
  3. Add BlueBot’s Send Text action, map the phone column to To and write the text with the name column in it.

Map the fields

BlueBot fieldMap it to
ToThe person’s mobile number from Google Sheets. US numbers can leave off the +1.
TextHi {{first_name}}, your {{service}} is booked for {{date}}. Reply here if you need to change it.
{{first_name}} in the textGoogle Sheets’s first name field.
{{service}} in the textGoogle Sheets’s service field.
{{date}} in the textGoogle Sheets’s date field.
Metadatasource set to google-sheets, and record_id set to the record’s id, so the status and reply webhooks for this text can find the record again.
ServiceAuto, the default: iMessage when the person uses it, otherwise SMS through your iPhone.

Test it

Put your own number in To and press Test step. A text arrives on your phone from your own number, and Zapier shows the message BlueBot returned with state: "queued". Then map Google Sheets’s field back into To and turn the Zap on.

Log every reply in a sheet

PartWhat it is
TriggerBlueBot’s New Incoming Text trigger in Zapier
ActionBlueBot’s New Incoming Text trigger starts it, and Google Sheets takes the text
Connects throughZapier

Steps

  1. Start a Zap with BlueBot’s New Incoming Text trigger.
  2. Add Google Sheets’ Create Spreadsheet Row action.
  3. Map the sender’s number, the words and the time to the sheet’s columns.

Map the fields

From BlueBotInto Google Sheets
FromThe phone number to find the person by in Google Sheets. It’s in E.164 (+15555550123); search by the last 10 digits if Google Sheets stores numbers another way.
TextThe words, for a note, a row or a message. Null when the person sent only a picture.
Received AtWhen it came in, in UTC.
FilesPictures and voice memos. Each url works for an hour, so copy a file you want to keep.
Chat IDSet when the text came in a group chat; null for a one-to-one text.

Test it

Text your BlueBot number from another phone, one you’ve texted through BlueBot before, then press Test trigger in Zapier. It loads that text with its fields, ready to map. BlueBot copies texts from people you’ve texted through it, unless you set Which chats to copy to Everything.

Mark each row delivered or failed

PartWhat it is
TriggerA text is delivered or fails (BlueBot’s message.delivered and message.failed webhooks)
ActionGoogle Sheets acts on what BlueBot reports
Connects throughMake

Steps

  1. Send each row’s text with BlueBot’s Send Text module and put the row number in metadata.
  2. Start a second scenario from BlueBot’s webhooks for message.delivered and message.failed.
  3. Use the row number BlueBot echoes back to update that row’s Status column with Google Sheets’ Update a Row.

Map the fields

From BlueBotInto Google Sheets
Statesent, delivered, read, failed or expired, for a field or a filter.
MetadataThe record_id you sent with the text, to find the record it was for.
Failure ReasonWhy a failed text didn’t go: not_on_imessage, messages_refused or file_unavailable.
ToWho the text was for.

Test it

Send one text to your own number, then look for the event. To try the step without sending anything, POST /v1/webhooks/{id}/test sends an example of any event type to your webhook.

Before you turn it on

  • Text only people who asked to hear from you. Anyone who replies STOP goes on your stop list, and BlueBot cancels texts to them. Stop words
  • A text that can’t go yet waits with a hold rather than failing: quiet hours, your Mac away, a daily limit. Holds
  • Google Sheets with BlueBot on the integrations page says what else the two do together.