Google Sheets
The Google Sheets tool turns a spreadsheet into a simple database for your AI agent. When a customer gives details in a chat, such as an order, a registration, or a request, the agent writes them as a new row. Later in the same conversation it can update that row or read it back. Available on every plan, including the free one.
:::warning If you change the sheet's columns, re-run the setup Mojeeb reads your column headers once, when you connect, and writes every row by column position from that snapshot. Adding, removing, renaming, or reordering columns in the sheet later means new columns stay empty and values can land under the wrong header. After any column change, open Tools → Google Sheets → Connect, sign in with Google again, pick the same spreadsheet, and click Update tools. A renamed column comes back switched off, so switch it on again. The Reconnect button does not do this; it only refreshes Google access and keeps the old column setup. :::
How does the Google Sheets tool work?
You connect one spreadsheet and one tab, and Mojeeb turns each column header into a field the agent can fill. During a conversation the agent collects those fields from what the customer writes and adds one row. The row gets a hidden reference, so the same conversation can update or read it later without touching anyone else's rows.
The flow in a typical chat:
- The customer gives details — "I want two large shirts, delivered to Maadi, my name is Sara."
- The agent adds a row — Name, product, quantity, area, and whatever other columns you enabled are written to the sheet in one go.
- The customer changes something — "Make it three shirts."
- The agent updates the row — Only the quantity cell changes; the rest stays as written.
- The customer asks to confirm — The agent reads the row and repeats the saved details.
Your team watches the sheet fill up in real time, in Google Sheets on any device.
What do I need before I start?
A Google account, a spreadsheet with a header row, and a decision about which columns the agent should fill. Nothing else is installed on your side. The whole setup happens in the dashboard and a Google sign-in window; your team keeps working in Google Sheets exactly as before, and the agent's rows arrive alongside the rows they type themselves.
- A Google account that can open the spreadsheet; you sign in during the connection
- A spreadsheet with headers in row 1 of the tab you want to use, for example
Name,Phone,Product,Quantity,Notes. Headers can be Arabic or English. - An idea of which columns the agent fills from the chat and which are automatic, such as a timestamp or an order number
Empty tabs cannot be connected. If the tab has no header row, Mojeeb asks you to add one in Google Sheets and reopen the dialog.
How do I connect a Google Sheet?
Go to Tools, pick the agent at the top of the dashboard, find Google Sheets under Available tools, and click Connect. The setup has three steps shown at the top of the window: Connect, Choose sheet, and Customize. It takes about three minutes.
- Connect — A Google sign-in window opens. Sign in and accept the permission.
- Choose sheet — Google Drive opens. Pick the spreadsheet. Mojeeb gets access to this one file only, nothing else in your Drive.
- Customize — Choose the Tab. Mojeeb lists the columns it found in row 1. Decide which tools to switch on: Add row is always on, Update row and Read row are optional. Open Advanced settings to switch individual columns off or change what fills them.
- Click Create integration. You see Integration created — Add, Update, and Read are now wired up.
The spreadsheet now appears under Active tools with the tab name and a chip for each tool that is on.
What can fill a column?
Each enabled column has one source, set under Advanced settings in the Customize step. The default is a value the agent extracts from the conversation. The other three sources are automatic: Mojeeb fills them without asking the customer anything, which is how a sheet gets a timestamp, a fixed label, or a running order number on every row.
| Source | What goes into the cell | Example |
|---|---|---|
| Variable | A value the agent extracts from the chat; the column header becomes the field name the agent looks for | Phone → the customer's number |
| Static Value | The same fixed text on every row | Source → "WhatsApp bot" |
| Timestamp | The date and time the row was added, in UTC, which is 2 to 3 hours behind Egypt and Gulf time; default format yyyy-MM-dd HH:mm | Created → 2026-10-08 14:32 |
| Auto Increment | A running number with a prefix, unique per sheet; two chats writing at the same moment can receive the same number, so do not use it for invoices | Order ID → MOJ0001, MOJ0002 |
Switch off only columns at the end of the header row. Rows are written by position from column A, so a switched-off column in the middle shifts every later value one column to the left. To keep a middle column empty, leave it on and set it to Static Value with an empty value. Fill every header cell up to your last column; a blank header cell causes the same shift.
Which Google permission does Mojeeb use?
Per-file access to the spreadsheet you picked in the Drive window, and nothing else in your Google Drive. Mojeeb can read and write that one file. The connection belongs to your organization and is keyed by the spreadsheet: every agent that uses the sheet shares it, and reconnecting it with a different Google account replaces the access for all of them. For a different spreadsheet, create a new connection.
What tools does the agent get?
Up to three tools on the same tab and columns. During setup Add row is always on and the other two are optional. In the spreadsheet's settings all three have their own switch, and the Active switch on the card turns the whole set on or off. Each tool has an instruction that tells the agent when to use it, which you can edit.
| Tool | When the agent uses it | What it does |
|---|---|---|
| Add row | The customer has given the information the sheet needs | Appends one row with every enabled column and returns a row reference the agent remembers for the rest of the conversation |
| Update row | The customer changes details they gave earlier in the same conversation | Changes only the cells the customer mentioned; the rest keep their values |
| Read row | The customer asks what was saved | Returns the row's current values, only for the columns you enabled |
Automatic columns, meaning timestamp, static text, and auto-increment numbers, are written once by Add row and never changed by Update row.
How do I write the instruction for each tool?
Each tool carries an instruction under When should the AI fire this? that the agent reads to decide when to act. The default for Add row says to add a row once the customer has provided the required information. Make it specific to your sheet: name the details the customer must give and tell the agent to ask for anything missing before writing.
Example for an order sheet:
When the customer has given their name, phone number, the product, and the quantity,
add a row. If any of these is missing, ask for it first. Do not add a row for general
questions. After adding, confirm the order details back to the customer.
Edit instructions during setup under Advanced settings, or later from the spreadsheet's settings.
Can the agent read or change other customers' rows?
No. The agent only ever handles rows it created in the current conversation. Update row and Read row need the row reference that Add row returned in that same chat; the agent has no way to list, search, or guess other rows. A customer cannot ask for "Sara's order" and get it.
How do I change which columns the agent fills?
Run the setup again: open Tools → Google Sheets → Connect, sign in with Google, and pick the same spreadsheet. Mojeeb notices it is already connected to this agent and reads the headers fresh, so the Customize step shows the sheet as it is now. Adjust the switches and click Update tools; nothing is duplicated.
What the fresh read does:
- Columns Mojeeb already knew keep their settings.
- New columns appear switched off, ready to enable.
- Columns you deleted from the sheet disappear.
- A renamed column counts as new: it comes back switched off, so switch it on again.
Mojeeb confirms with This spreadsheet is already connected to this agent. You're updating its setup; nothing gets duplicated. Run this after any change to the header row, including reordering. Until you do, the agent keeps writing by the old column order.
How do I change the spreadsheet's settings?
Open the three-dot menu (⋮) on the spreadsheet card under Active tools and choose Settings. The Spreadsheet settings window shows the tab and the columns the tools write, lets you open the sheet in Google, switch each of the three tools on or off, and edit each tool's instruction under Advanced settings. Click Save. Columns are not changed here: that happens by running Connect on the same spreadsheet and clicking Update tools.
What does Reconnect do?
Reconnect restores Google access when it has been lost, for example after a password change or a revoked permission. The card's status row then shows a red Reconnect link; click it. Two steps follow: sign in with Google again, then confirm the same spreadsheet in Google Drive. Picking a different spreadsheet is refused. Reconnect keeps the tab, the columns, and the tools exactly as they were; it does not pick up column changes.
An amber Couldn't verify on the card is different: Mojeeb could not check the connection at that moment, usually a temporary Google error. There is nothing to reconnect; open the three-dot menu (⋮) and choose Check status a little later.
How do I disconnect a spreadsheet?
Open the three-dot menu (⋮) on the spreadsheet card and choose Disconnect. The agent's sheet tools are removed. If no other agent uses the same spreadsheet, Mojeeb's connection to it is removed as well. The spreadsheet and all its data stay in your Google account.
Common questions
Which plan includes Google Sheets?
Every plan, including the free one. There is no limit on rows. Each agent connects the spreadsheets it needs, and several agents can share one spreadsheet; each adds its own rows.
Does the agent fill every column?
Only the enabled ones. For variable columns the agent asks the customer for the value if the instruction tells it to, and leaves the cell empty if it never learns it. Automatic columns are filled by Mojeeb. Columns you switched off are removed from the setup, which is why only the last columns of the sheet should be switched off.
Can I use Arabic column headers?
Yes. Headers in Arabic or English both become field names the agent understands. Keep them short and clear, for example الاسم, الهاتف, المنتج, because the header is the only description the agent has of what belongs in the column.
Can two agents write to the same sheet?
Yes. Connect the same spreadsheet on each agent. Each agent gets its own column setup and instructions, and rows from all agents land in the same tab. You must be an admin of every agent already using the spreadsheet. Add a static column that names the agent if you need to tell their rows apart.
What if I delete a row in the sheet?
Nothing breaks. The agent only touches rows it created in the current conversation, so a deleted row simply cannot be updated or read anymore, and the agent is told it was not found.
How fast do rows appear?
Within a few seconds of the customer's message. The agent writes the row and then answers the customer in the same turn. There is no batching or delay on Mojeeb's side; if a row is missing, check the tool's instruction, because the agent only writes when the conditions in it are met.
Related
- Agent Tools — all tools at a glance
- Capture Lead — the built-in tool for saving customers as leads
- Custom API — connect your own system instead of a sheet