Use Knowledge Base and Google Workflow Integrations

Workflow integration nodes let a workflow use organization-owned knowledge files and connected Google services. The result of each node is stored in the workflow variables so that later nodes can use it in templates or Logic conditions. This guide covers:
  • Knowledge Base search
  • Google Calendar event creation
  • Google Calendar availability checks
  • Google Sheets row appends
  • Passing results between nodes

Before you begin

  1. Create and save the required Google tool in Tools.
  2. Connect the relevant Google account in Integrations.
  3. For Knowledge Base nodes, upload files from the Files page and wait until they are indexed and ready.
  4. Add the integration node to your workflow and select the saved Google tool in the node configuration.
  5. Test every success and fallback path before publishing.
A workflow Google node references a saved tool with toolUuid. The saved tool contains the Google spreadsheet or calendar configuration and the connected integration. The workflow node supplies the values for the current call.

Workflow variables and output keys

Every Knowledge Base and Google integration node has an Output key (called Output variable for Google nodes in the editor). The runtime stores the node result using that key:
If no output key is configured, the node ID is used. In the example above, later nodes can access the result as calendar_availability. If the output key were omitted, they would use calendar-check instead. Use dotted paths in templates:
Numeric path segments access list items. The runtime also supports the optional $ prefix:
Use these paths in:
  • Google Calendar fields
  • Google Sheets row mappings
  • Function/API Request URLs, headers, and body templates
  • Logic edge conditions
A Knowledge Base node searches the selected organization files. It does not search every file automatically; choose one or more indexed files in the node editor.

Configure the node

The rendered query is sent to the organization-scoped Knowledge Base. A successful result has this shape:
Access the first matching chunk in a later node with:
Useful paths include: When a search fails, the result contains error. A search error normally also includes an empty results array and the rendered query:
Use a Logic condition such as knowledge_result.count > 0 before using a result in a downstream action.

Google Calendar

The Google Calendar workflow node supports two operations:
  • Check availability — checks whether a calendar is free during a time range.
  • Create event — creates an event after the caller has confirmed the details.
Create the matching saved tool in Tools first:
  • googleCalendarAvailabilityCheck for availability checks
  • googleCalendarEventCreate for event creation
Then select that tool from the workflow node. The node operation and saved tool type must match. Use ISO 8601 date-time values. Include an offset when possible, for example 2026-06-20T14:00:00+01:00. You can also provide timeZone, such as Africa/Lagos, on the node or in the saved tool configuration.

Check calendar availability

startDateTime and endDateTime are required. calendarId defaults to primary and timeZone defaults to the saved tool’s timezone or UTC. The result is stored under calendar_availability:
Use the available value in a Logic edge. condition.value must be a JSON boolean, not the string "true":
You can also use the busy periods in a later node:
An empty busy array means that no busy period was returned for the requested range. Always keep an unconditional fallback edge for the unavailable or error path.

Create a calendar event

Only create an event after the caller has supplied the required details and explicitly confirmed the booking.
Required fields are summary, startDateTime, and endDateTime. Optional fields are attendees, description, location, calendarId, and timeZone. Multiple attendees can be provided as a comma-separated string. A successful event result looks like:
Later nodes can use:

Google Sheets

The Google Sheets workflow node appends one row to the spreadsheet and range configured in the saved Google Sheets tool. It does not read rows from a spreadsheet. Use a Function/API Request node or a separate integration if your workflow needs to read or query sheet data. Create and configure a saved googleSheets tool with:
  • Google Sheets integration and connected account
  • Spreadsheet ID
  • Sheet range, for example Leads!A:E
  • Optional field definitions
Then select that saved tool in the workflow node and map the row values.
The keys in googleSheets.data are mapped to the saved tool’s configured fields. The values can be literal strings or workflow templates. At least one mapped field is required. A successful result is stored under sheet_result:
Access the write receipt in later nodes with:
The workflow Sheets node is currently an append operation. updatedRange and updatedRows confirm where the row was written; they are not the contents of the entire sheet.

Passing results between nodes

Use an integration result in another integration

Use a Knowledge Base result in an API request

Branch on an integration result

Connect the available branch with:
Add an unconditional edge to the unavailable or recovery path. If the integration fails, the runtime emits an error and the workflow should have an error or fallback route.

Example: availability, booking, and logging

A typical appointment workflow is:
  1. A Task collects appointment_start, appointment_end, full_name, email, and service.
  2. A Calendar node with operation: "checkAvailability" writes to calendar_availability.
  3. A Logic node routes on calendar_availability.data.available.
  4. An Agent asks the caller to confirm the available slot.
  5. A Calendar node with operation: "createEvent" writes to calendar_event.
  6. A Sheets node appends the booking and writes to sheet_result.
  7. A confirmation or error path ends the workflow.
This keeps the availability check separate from event creation and prevents an unconfirmed event from being created.

Troubleshooting

Current runtime limitation

Workflow variables are available to deterministic nodes such as Logic, Function, Knowledge Base, Calendar, and Sheets. Static Say text and a later Agent prompt are not currently template-rendered or automatically populated with the full result object. Use the values in supported integration/API fields and Logic conditions, or use a custom runtime step when a later spoken response must include dynamic integration data.