Automate Gmail + Salesforce
The inbox most operations still start in. The enterprise system of record for revenue. Put an agent between them and the hand-off stops being manual: it reads, decides, acts, and shows its work.
Inbox Triage is a ready-made agent built around Gmail; point its last step at Salesforce to finish this hand-off.
Automations teams run
Each of these runs with a reasoning step between the two tools, so what reaches Salesforce is a decision about the Gmail event rather than a transcription of it.
When a new email arrives in Gmail…
…an agent can update records and fields in Salesforce — after reading the context and deciding it should.
When a label is applied in Gmail…
…an agent can create tasks and notes in Salesforce — after reading the context and deciding it should.
When a thread goes unanswered in Gmail…
…an agent can extract report data in Salesforce — after reading the context and deciding it should.
When a lead or opportunity changes in Salesforce…
…an agent can send or draft a reply in Gmail — with the reasoning recorded in the run’s receipt.
When a task is due in Salesforce…
…an agent can apply labels and archive in Gmail — with the reasoning recorded in the run’s receipt.
When a report cycle begins in Salesforce…
…an agent can extract attachments and fields in Gmail — with the reasoning recorded in the run’s receipt.
Copy this Gmail → Salesforce workflow
Concretely: the gmail-api node on one side, a custom-api call to {instance}.my.salesforce.com on the other, and an agent in between that can decline. Deciding not to write into Salesforce is a recorded outcome, not a silent one.
{
"id": "21964113-d20f-4433-a855-6e529b2415da",
"name": "Gmail → Salesforce",
"nodes": [
{
"id": "a5e155f8-4168-4296-ad87-bdf205c84050",
"text": "Watch Gmail",
"x": 512,
"y": 144,
"isEditing": false,
"type": "gmail-api",
"icon": "connect",
"category": "trigger",
"isSelected": false,
"parameters": {},
"description": "A powerful tool to send, reply, read, organize, and manage attachments in Gmail.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "150354cb-4ebe-42bb-a676-21525be92f02",
"text": "Read it and decide",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"instructions": "Read the Gmail item. Decide whether it warrants action in Salesforce, and explain why."
},
"description": "Decides whether this Gmail item warrants anything in Salesforce.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "cc08523d-773f-4d4c-ae00-945f7319298c",
"text": "Call Salesforce",
"x": 512,
"y": 528,
"isEditing": false,
"type": "custom-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"url": "https://{instance}.my.salesforce.com/services/data/v59.0/sobjects/Contact",
"method": "POST"
},
"description": "Writes into Salesforce over its API.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "0db579a7-8a4e-41cb-ae4a-0c18d9f1b292",
"start": {
"id": "a5e155f8-4168-4296-ad87-bdf205c84050",
"type": "output"
},
"end": {
"id": "150354cb-4ebe-42bb-a676-21525be92f02",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "9e5a2965-2e84-4da2-a4d0-41a70e444708",
"start": {
"id": "150354cb-4ebe-42bb-a676-21525be92f02",
"type": "output"
},
"end": {
"id": "cc08523d-773f-4d4c-ae00-945f7319298c",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Install Inbox Triage
Inbox Triage is a working agent built around Gmail. Install it, point its last step at Salesforce, and you have this hand-off without building it from an empty canvas.
Runs on your own machine · See what it does
Wiring Gmail to Salesforce
- Get AGNT Community Core. Free, local, no sign-up needed to run a workflow.
- Add both connections to the vault — Gmail takes one OAuth sign-in, Salesforce takes one OAuth sign-in.
- Build the three nodes above, or start from a marketplace workflow and edit it. The agent in the middle is the part worth spending time on.
- Run it once with an approval gate in place. The receipt tells you what it read, what it concluded, and what it changed in Salesforce.
Gmail and Salesforce — common questions
Can I connect Gmail to Salesforce without writing code?
No code is required. Add both connections in the vault (Gmail uses one OAuth sign-in, Salesforce uses one OAuth sign-in), then either install a marketplace workflow for this pair or drag the two nodes onto the canvas and put an agent between them.
How is this different from a field-mapping Gmail to Salesforce automation?
A field mapping copies values and breaks on the first record nobody anticipated. The middle step here reads the Gmail item in full and decides — whether it matters, how to summarise it, and what belongs in Salesforce. Deciding to do nothing is a valid outcome, which no mapping can express.
Does my Gmail and Salesforce data leave my machine?
Your credentials stay in a vault on your own disk rather than in someone else’s cloud. The only calls made are the ones the workflow needs: Gmail, Salesforce, and your chosen model provider — which can be a local one.
What does a Gmail and Salesforce run leave behind?
Every run is recorded end to end — the Gmail items examined, the decision and its reasoning, the resulting Salesforce write. That record is what makes it reasonable to let this run unattended, and what lets you widen its remit on evidence.