Bot Actions are the operations Einstein Bots perform during conversations — sending a message, asking a question, calling Apex, invoking a Flow, querying Salesforce records, escalating to a human agent. Each Dialog step in Bot Builder picks a Bot Action; chained Actions compose the full bot conversation.
- Open the bot in Bot Builder
Setup → Einstein Bots → click into a bot → Open Bot Builder.
- Open the Dialog where the action goes
Each Dialog has a series of steps; each step is a Bot Action.
- Click + to add a new step
Pick the Action Type — Message / Question / Variable / Action / Rule / Subflow / End.
- For Apex Bot Action: pick Action → Apex
Reference an Apex class implementing InvocableAction. Inputs from variables; output written back.
- For Flow Bot Action: pick Action → Flow
Reference an Autolaunched Flow. Inputs from bot variables; output sets bot variables.
- For SOQL: pick Get Records
Query Salesforce data without Apex. Returns a list — bind to a variable.
- For escalation: pick Transfer to Agent
Hands off to a live agent via Omni-Channel routing.
- Save and test in the Test Pane
Trigger the dialog with a sample input → confirm the action fires correctly.
Message / Question / Variable / Apex / Flow / Get Records / Transfer / End.
Bot variables passed into and out of actions.
Custom logic, full Salesforce API access.
Declarative logic, easier to maintain.
Routes via Omni-Channel.
- Apex Bot Actions must implement specific interfaces. The Apex class needs @InvocableMethod with proper input / output types — common cause of action failures is interface mismatch.
- Bot Actions run in the bot user's context, not the customer's. Sharing rules and field permissions are evaluated against the bot user — make sure that user has the right access.
- Transfer to Agent requires Omni-Channel + Service Channel + active agents available. Without one of those, the transfer fails and the bot has to retry or apologize.