CRM · Integration
SalesforceAGNT

AI agents for Salesforce

The enterprise system of record for revenue. AGNT connects to Salesforce so agents can read what happens there, reason about it, and act — with a receipt for every run.

Install Lead Researcher → Get AGNT free

Lead Researcher is a ready-made agent that works in Salesforce — free, and it runs on your machine.

Salesforce and AGNT, in brief

What it doesLets an AGNT agent read from and act in Salesforce.
Connects withOAuth 2.0 Bearer — held in the local vault
AGNT nodecustom-api, or the zapier-action bridge
Runs whenA lead or opportunity changes
Typical build timeTen minutes
Where data goesNowhere by default — AGNT runs on your machine and credentials never leave it.

What you can automate

Reacts when…

  • a lead or opportunity changes
  • a task is due
  • a report cycle begins

Agents can…

  • update records and fields
  • create tasks and notes
  • extract report data

Teams use it for

  • hygiene enforced across the pipeline
  • opportunity summaries before every call
  • forecast data pulled into real reports

Copy this Salesforce workflow

Most Salesforce builds begin the same way. A run starts when a lead or opportunity changes. The agent reads what arrived, judges it against criteria you wrote in plain language, and acts only where that judgment says it should — typically to update records and fields. That is what makes hygiene enforced across the pipeline something you can hand over rather than merely schedule.

Three nodes carry that: something happens in Salesforce, an agent reads it and forms a view, and it acts only where that view says it should. The definition below is the whole thing — paste it into a new workflow and it loads exactly as drawn.

Salesforce workflow: run on a schedule → work out what should change → call the salesforce api TRIGGER trigger-timer Run on a schedule Every fifteen minutes. ACTION agnt-agent Work out what should change Decides what to change, and why. ACTION custom-api Call the Salesforce API POST · oauth 2.0 bearer
The whole flow runs locally against your own Salesforce account. Deciding to take no action counts as an outcome and is recorded like any other.
Salesforce — read, decide, actpaste into a new workflow
{
  "id": "df52e241-c85a-4c91-a807-b3349ba5af26",
  "name": "Salesforce — read, decide, act",
  "nodes": [
    {
      "id": "bc3a541c-bc0c-4c62-a000-a4aa82361ed4",
      "text": "Run on a schedule",
      "x": 512,
      "y": 144,
      "isEditing": false,
      "type": "trigger-timer",
      "icon": "clock",
      "category": "trigger",
      "isSelected": false,
      "parameters": {
        "interval": "15",
        "unit": "minutes"
      },
      "description": "Checks Salesforce every fifteen minutes.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "24494f24-85e4-4913-ada6-008d44e98e9e",
      "text": "Work out what should change",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "agnt",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "instructions": "Decide what needs to happen in Salesforce. Explain your reasoning."
      },
      "description": "Decides what needs to happen in Salesforce, and why.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "eb244c00-280c-4115-ae41-af0fcd078252",
      "text": "Call the Salesforce API",
      "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",
        "authType": "Bearer",
        "headers": "{\"Content-Type\": \"application/json\"}"
      },
      "description": "POST against the Salesforce API, authenticated with oauth 2.0 bearer.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    }
  ],
  "edges": [
    {
      "id": "0d481a8e-7a2a-4a00-ad3e-2a3ea894cafc",
      "start": {
        "id": "bc3a541c-bc0c-4c62-a000-a4aa82361ed4",
        "type": "output"
      },
      "end": {
        "id": "24494f24-85e4-4913-ada6-008d44e98e9e",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "9319c1ee-007f-4430-a9ed-37181a295e00",
      "start": {
        "id": "24494f24-85e4-4913-ada6-008d44e98e9e",
        "type": "output"
      },
      "end": {
        "id": "eb244c00-280c-4115-ae41-af0fcd078252",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

Install Lead Researcher — it runs on Salesforce

Lead Researcher is a working agent that uses Salesforce. Installing it drops the whole workflow onto your canvas — connected, editable, and yours to change.

Runs on your own machine · See what it does

The system of record needs a librarian

Salesforce holds the revenue truth and depends on people maintaining it. Hygiene enforcement, note-writing and field updates are exactly the repetitive reading-and-writing work agents absorb well, and the payoff is a forecast built on data somebody can trust.

Preparation before every conversation

An opportunity summary assembled before a call — history, open items, what changed since last time — is a small piece of work that rarely gets done under time pressure and reliably improves the conversation when it does.

How to reach Salesforce from a workflow

There is no first-party Salesforce node yet, and a page implying otherwise would cost you an afternoon. What works today is the generic custom-api node pointed at Salesforce’s own API, authenticating with oauth 2.0 bearer.

What you needValue
Endpointhttps://{instance}.my.salesforce.com/services/data/v59.0/sobjects/Contact
MethodPOST
AuthenticationOAuth 2.0 Bearer
HeaderAuthorization: Bearer {oauthAccessToken}
ReferenceSalesforce API documentation

Worth knowing: The instance host is returned by the OAuth exchange and differs per org — never hard-code login.salesforce.com for data calls.

Where Salesforce integrations usually go wrong

The instance host is returned by the OAuth exchange and differs per org — never hard-code login.salesforce.com for data calls.

That single detail accounts for most of the time people lose on a first Salesforce build. With it out of the way the endpoint above is all you need, and the workflow below wires it up.

Connect Salesforce in two minutes

  1. Download AGNT Community Core — free, local-first, no account needed to run.
  2. Connect with one OAuth sign-in from AGNT’s vault — tokens are stored encrypted on your machine and never leave it.
  3. Drop the Salesforce node into a workflow or hand it to an agent — the first run produces a receipt you can read line by line.

Salesforce + AGNT — common questions

Can agents update Salesforce records?

Yes — fields, tasks and notes, within the permissions of the connected account.

Can it extract report data?

Yes, which is how forecast numbers reach a narrated weekly report.

Is this safe for a regulated pipeline?

Every write is receipted and consequential actions can sit behind approval gates.

More crm integrations

Give AI a job. Get the proof.