Salesforce Service Cloud is a customer service platform providing case management, knowledge base, omnichannel support, and service automation to deliver exceptional customer experiences
Salesforce Service Cloud is a customer service platform providing case management, knowledge base, omnichannel support, and service automation to deliver exceptional customer experiences On Nagent, Salesforce Service Cloud is exposed as a fully-configurable crm integration that any agent can call — 25 actions, and OAuth authentication. No code is required to wire Salesforce Service Cloud into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Salesforce Service Cloud to automate the kinds of tasks crm teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Salesforce Service Cloud into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Salesforce Service Cloud, with input parameters and output schema. Drop these into any step of an agent built in Helix.
SALESFORCE_SERVICE_CLOUD_AGENT_SENSITIVE_DATA_RULE_TRIGGEREDNotifies Salesforce Live Agent that sensitive data rules were triggered in agent messages. **Purpose**: When an agent's outgoing message contains sensitive data (SSN, credit card, email, etc.), call this action to apply configured masking or handling rules to protect customer privacy. **Prerequisites**: - Active Live Agent chat session with valid chat_id - Sensitive data rules configured in Salesforce Setup - Live Agent feature must be enabled in your Salesforce org **Note**: Salesforce Live Agent Chat is deprecated and retiring February 14, 2026. Migrate to Messaging for In-App and Web for continued support. **Typical Flow**: 1. Agent sends message containing sensitive data 2. System detects sensitive content matches a rule 3. Call this action with the chat_id and triggered rules 4. Salesforce applies masking/filtering per rule configuration
Input parameters
One or more sensitive data rules to apply (e.g., to mask SSN, credit cards, or PII in agent messages)
Active Live Agent chat session ID obtained when the chat session was established
Live Agent API version (e.g., '61.0' or '65.0'). If not provided, automatically extracted from connection base_url
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_CHASITOR_SNEAK_PEEKSend real-time typing indicator (sneak peek) to Live Agent during active chat session. Allows agents to see what visitors are typing before the message is sent. Requires an active Live Agent chat session with valid session_key and affinity token. The sequence number must increment with each request.
Input parameters
The current in-progress message text that the visitor is typing. Send empty string when typing is cleared
Affinity token received from chat session initialization, used to route requests to the correct Live Agent server (X-LIVEAGENT-AFFINITY)
Character position/cursor location in the message being typed. Typically starts at 0 for new message
Incrementing sequence number for this request (X-LIVEAGENT-SEQUENCE). Must increment with each API call in the session, starting from 1
Salesforce API version header (X-LIVEAGENT-API-VERSION)
Unique session key for the active chat session (X-LIVEAGENT-SESSION-KEY)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_COMPOSITE_BATCHTool to execute multiple independent REST subrequests in one batch call. Use when bundling up to 25 independent operations to minimize round trips. Subrequests cannot reference each other.
Input parameters
If true, stops processing on first subrequest error; subsequent subrequests return HTTP 412. Default false.
Array of up to 25 independent subrequests to execute in one call.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_COMPOSITE_REQUESTExecute up to 25 dependent Salesforce REST subrequests in a single API call. Subrequests execute sequentially and can reference results from earlier requests using '@{referenceId.field}' syntax. Use this when operations depend on each other (e.g., create Account then create related Contact). For independent operations, use Composite Batch instead.
Input parameters
If true, treat all subrequests as a single transaction; on first error roll back all prior successes
Ordered list of up to 25 subrequests to execute in sequence. Later requests can reference earlier results using '@{referenceId.field}' syntax.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_COMPOSITE_SOBJECT_TREECreate one or more nested sObject record trees in a single API call. Supports parent-child relationships up to 5 levels deep, with a maximum of 200 total records across all trees. Use this for bulk insertion of related records (e.g., Account with Contacts, or Orders with Line Items). Relationships must be Master-Detail or Lookup. Only supports INSERT operations, not upserts.
Input parameters
List of sObject tree records to create. Each record must have 'attributes' (with 'type' and 'referenceId') and field values. Child records are specified using relationship name as key (e.g., 'Contacts'). Maximum 200 total records across all trees, up to 5 levels deep.
Root sObject API name (e.g., 'Account', 'Contact', 'Case'). All root records in the request must be of this type.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_CREATE_CASE_RECORDTool to create or upsert a Salesforce Case record. Use when you need to add a new Case or update via external ID.
Input parameters
Desired response format; defaults to application/json
Map of Case field API names to values (e.g., Subject, Status, Origin)
Set to '1' to pretty-print the response
API name of external ID field for upsert; provide with external_id_value
Value of external ID for upsert; provide with external_id_field
Set to True to apply active assignment rules on Case creation or upsert
Client and defaultNamespace options in format 'client=<name>\[, defaultNamespace=<ns>\]'
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_DELETE_CASE_RECORDTool to delete a Salesforce Case record. Use when you need to remove a case by its record ID.
Input parameters
Salesforce Case record ID to delete (15-18 character string)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_DESCRIBE_S_OBJECTTool to retrieve metadata of any sObject. Use when you need to inspect field definitions, relationships, and supported features for objects like Account, Contact, Case, etc.
Input parameters
API name of the sObject to describe, e.g., 'Account', 'Contact', 'Case'.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_END_CHAT_SESSIONEnds a Salesforce Live Agent chat session using the DELETE SessionId endpoint. Prerequisites: - Active Live Agent chat session (obtained via SessionId GET + ChasitorInit POST) - Valid session_key from the session creation - Valid affinity token for routing to the correct server Behavior: - Returns success for 2xx responses (session ended) - Returns success for 404 (session not found/already ended - idempotent) - Returns failure for 401/403 (authentication/authorization errors) - Returns failure for 405 (method not allowed - endpoint may not be configured) Note: Live Agent (legacy chat) is deprecated and scheduled for retirement on Feb 14, 2026. Salesforce recommends migrating to Messaging for In-App and Web.
Input parameters
Affinity token for session routing to the correct Live Agent server (X-LIVEAGENT-AFFINITY from SessionId GET response)
Salesforce Live Agent API version (e.g., '61.0'). Should match the version used to create the session.
The Live Agent session key obtained when creating the chat session (X-LIVEAGENT-SESSION-KEY from SessionId GET response)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_GENERATE_REQUEST_IDGenerate a UUIDv4 string to use as an Idempotency-Key header in Salesforce User Interface API requests. This prevents duplicate record creation when POST, PATCH, or DELETE requests are retried due to network failures or timeouts. The same key returns cached responses for 30 days, avoiding duplicate operations and saving server resources. Use this tool whenever you need to ensure idempotent behavior for Salesforce UI API operations.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_GENERATE_SIGNED_JWT_ASSERTIONTool to generate a signed JWT assertion for Salesforce JWT bearer OAuth flow. Use when you need to perform server-to-server authentication using a connected app’s certificate. Use before exchanging the assertion for an access token.
Input parameters
Audience claim for the JWT, e.g., login URL or instance domain. Defaults to the instance domain derived from base_url metadata.
Salesforce username (subject) for whom to generate the JWT assertion.
Client (Consumer) ID of the Salesforce Connected App. If provided, overrides value from connection metadata.
JWT lifetime in seconds from now.
RSA private key in PEM format used to sign the JWT. If generate_private_key is true, this value is ignored.
If true, generate a temporary RSA private key for signing (useful for testing when a PEM isn't available).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_GET_CASE_RECORDRetrieve a Salesforce Case record by its ID. Returns Case details including status, priority, subject, description, owner, and timestamps. Useful for: - Looking up Case details by ID - Checking Case status and priority - Getting customer issue information - Retrieving Case metadata and relationships Requires a valid 15 or 18-character Salesforce Case ID. Optionally specify which fields to retrieve using the fields parameter; otherwise all accessible fields are returned.
Input parameters
Comma-separated list of Case field API names to retrieve. If omitted, returns all accessible fields.
ID of the Case record to retrieve (15- or 18-character Salesforce ID)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_GET_CHAT_MESSAGESTool to long-poll for chat messages/events. Use after CreateChatSession to retrieve incoming chat events. Returns empty messages list when no new messages (HTTP 204). Call with ack from prior response to maintain sequence.
Input parameters
Sequencing token for polling; use -1 for the first request
Affinity token identifying the session on Chat servers
Salesforce API version for the request, e.g., '61.0'
Unique Chat session key
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_GET_LIVE_AGENT_API_VERSIONTool to retrieve current Live Agent API version. Use when initializing chat sessions to ensure subsequent calls target the correct REST API version.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_LIST_EINSTEIN_BOTSLists all Einstein Bot definitions in the Salesforce organization. This action queries the BotDefinition object using the Salesforce Tooling API to retrieve metadata about all Einstein Bots, including their IDs, labels, developer names, and language settings. Use this action when you need to: - Get a list of available Einstein Bots in the org - Find valid bot IDs for use with other Einstein Bots API operations - Retrieve bot metadata such as names and language settings Returns an empty list if no bots exist or if Tooling API access is unavailable.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_QUERY_ALL_SOQLTool to execute a SOQL query including deleted and archived records. Use when you need to fetch all rows including soft-deleted data in Salesforce.
Input parameters
SOQL query string to execute, must end with 'ALL ROWS' to include deleted and archived records.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_QUERY_SOQLTool to execute a SOQL query. Use when you need to retrieve records from Salesforce via SOQL.
Input parameters
SOQL query string to execute.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_RECONNECT_CHAT_SESSIONTool to reconnect a Live Agent chat session after the affinity token changes. Use this when you receive a 503 (Service Unavailable) response during chat operations, indicating the affinity token has changed and the session needs to be reestablished on a new server. After reconnecting, you must call ResyncChasitorState to restore the visitor's chat context. Note: Requires valid session_key and affinity tokens from an active Live Agent chat session.
Input parameters
Affinity token from the chat session that identifies the server instance. Obtained from the initial chat session creation or SessionId response. Sent in X-LIVEAGENT-AFFINITY header.
Live Agent API version (e.g., '61.0'). If not provided, automatically derived from base_url.
Unique session key identifying the chat session. Obtained from the initial chat session creation. Sent in X-LIVEAGENT-SESSION-KEY header.
Client's incrementing sequence number for request ordering. Use 1 for first reconnect attempt, then increment for subsequent operations. Sent in X-LIVEAGENT-SEQUENCE header.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_RESYNC_CHASITOR_STATEResynchronizes the chat visitor's state after a session reconnection. This action is part of the Salesforce Live Agent chat session recovery workflow: 1. First, call ReconnectChatSession with the session_key and affinity_token 2. Then, call this action to restore the visitor's chat state 3. Finally, resume normal chat operations (sending messages, getting messages, etc.) Prerequisites: - An active or recently disconnected Live Agent chat session - Valid session_key and affinity_token from the original session - Live Agent must be properly configured in the Salesforce org Note: The legacy Live Agent product is being phased out in favor of Messaging for In-App and Web. This action sends a POST request to /chat/rest/Chasitor/ChasitorResyncState with required Live Agent headers but no request body.
Input parameters
Live Agent API version (e.g., '61.0'). If not provided, automatically extracted from the base_url.
Session key obtained from an active Live Agent chat session. This value is returned when initiating a chat session and must be preserved for reconnection scenarios.
Affinity token obtained from an active Live Agent chat session. This token routes the request to the correct server where the session state is maintained.
Salesforce organization ID of the chat visitor (not required by API; ignored for backwards compatibility).
Client's incrementing sequence number for request ordering. Must increase with each request in the session. Start with 1 for the first request.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_RETRIEVE_CONNECTED_APP_PRIVATE_KEYTool to retrieve RSA private key PEM for a Salesforce Connected App. Use when signing JWT assertions for OAuth flows. Provide the app's Connected App ID and optional secret name or file path. Use before generating signed JWTs.
Input parameters
Name of the environment variable or file path containing the PEM-encoded private key. Defaults to '<connected_app_id>_private_key' if omitted.
Salesforce Connected App ID (Consumer Key) identifying the private key.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_RETRIEVE_SALESFORCE_USERNAMETool to retrieve the Salesforce username. Use when you need the current authenticated user's username. Use after completing OAuth2 authentication.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_SEND_CUSTOM_EVENTSend a custom event from a chat visitor to a Live Agent during an active chat session. Use this tool to trigger custom event handlers on the agent's side, enabling custom interactions beyond standard chat messages. Custom events can be used for actions like form submissions, button clicks, page navigation, or any application-specific events that need to be communicated to the agent. Prerequisites: - An active Live Agent chat session must be established - Live Agent REST API must be configured and enabled in your Salesforce org - Valid session_key and affinity_token from session initialization Note: This endpoint requires Live Agent to be properly configured. The API typically returns 204 No Content on success.
Input parameters
Custom event payload data as a string. Can be JSON-encoded for complex data structures.
Custom event type identifier used to match event listeners on the agent's side. Should be a descriptive name.
Sequence number for this Live Agent request. Must be incremented with each API call in the session.
Live Agent API version (e.g., '61.0'). If not specified, automatically extracted from base_url.
Session key from an active Live Agent chat session (obtained during session initialization).
Affinity token from an active Live Agent chat session (obtained during session initialization).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_SET_BREADCRUMBTool to set a breadcrumb URL for the visitor's current page. Use after a visitor navigates to a new page during an active chat session.
Input parameters
Salesforce organization ID (15 or 18 character ID)
The current location or URL of the visitor.
Live Agent session ID (sid) from an active chat session
LiveAgent Chat API version header, e.g., '61.0'
Live Agent deployment ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_UPLOAD_FILE_TO_S3Tool to upload a file to managed S3 storage. Use when you need to persist files externally.
Input parameters
File to upload.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SALESFORCE_SERVICE_CLOUD_VISITOR_SENSITIVE_DATA_RULETool to trigger sensitive data rules for the chat visitor. Use after detecting sensitive content to apply visitor masking or handling rules.
Input parameters
List of sensitive data rules to apply (at least one rule)
Affinity token header (X-LIVEAGENT-AFFINITY)
Sequence number header (X-LIVEAGENT-SEQUENCE), increments with each call
Live Agent API version header (X-LIVEAGENT-API-VERSION)
Session key header (X-LIVEAGENT-SESSION-KEY)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 31 agents privately built on Nagent that already use Salesforce Service Cloud.
Build on Nagent
Connect Salesforce Service Cloud to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Salesforce Service Cloud, and click "Connect Now." You'll authenticate with OAuth — Nagent handles credential storage and refresh automatically. Once connected, Salesforce Service Cloud is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Salesforce Service Cloud is connected, you configure its 25 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Salesforce Service Cloud steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Salesforce Service Cloud event fires, the agent kicks off automatically.
Every Salesforce Service Cloud action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Salesforce Service Cloud ships with 25 pre-built crm actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Salesforce Service Cloud together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Salesforce Service Cloud-based workflows tailored to your business.