> ## Documentation Index
> Fetch the complete documentation index at: https://docs.threetone.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Salesforce

> Prepare CRM reads and reviewed updates with organization, object, and field boundaries.

Start a Salesforce integration design with a case or account lookup and a proposed update to a small set of approved fields. Use a sandbox or approved test records for later verification.

<Note>
  Salesforce is not a current native connector. Threetone does not provide its installation or consent flow. The steps below prepare an external service and tool contract.
</Note>

## Prepare the CRM workflow

You need an organization administrator, the intended application authorization model, and an explicit object-and-field allowlist.

<Steps>
  <Step title="Review OAuth and user access" id="salesforce-access">
    Salesforce's [OAuth scope reference](https://developer.salesforce.com/docs/platform/mobile-sdk/guide/oauth-scope-parameter-values.html) distinguishes `api` access from the broader `full` scope. Request the access needed for the operation and review the connected user's permissions. Avoid selecting broad scopes merely to bypass a permissions error.
  </Step>

  <Step title="Bind the organization and record" id="salesforce-record">
    Resolve the organization and record ID before reading. Return only allowed fields and relationships. Require review when an email address or name matches multiple records. Keep production and sandbox credentials and identifiers separate.
  </Step>

  <Step title="Review a field-level change" id="salesforce-update">
    Show the record, current values, and proposed replacements. Confirm ownership changes and customer-visible effects separately. Re-read stale state before writing. If the response is uncertain, inspect the record before retrying rather than assuming the update failed.
  </Step>
</Steps>

Use [tool authoring](/agents-platform/configure/tools/overview) to separate lookup from mutation. [Manual auth configuration](/agents-platform/configure/authentication/auth-connections) can store compatible credentials, but it does not supply an interactive Salesforce OAuth lifecycle or enable execution.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Does the api scope grant access to every Salesforce field?" id="faq-salesforce-field-access">Do not treat a scope as a substitute for organization, object, and field permissions. Review the actual account and operation before returning data.</Accordion>
  <Accordion title="Should a missing record be created automatically?" id="faq-salesforce-missing-record">No. A missing or inaccessible lookup result is not authorization to create a new record. Review duplicates and required fields in a separate creation workflow.</Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.