diff --git a/backend/onyx/connectors/salesforce/connector.py b/backend/onyx/connectors/salesforce/connector.py index 316b3f53e..0c7437971 100644 --- a/backend/onyx/connectors/salesforce/connector.py +++ b/backend/onyx/connectors/salesforce/connector.py @@ -48,10 +48,12 @@ class SalesforceConnector(LoadConnector, PollConnector, SlimConnector): self, credentials: dict[str, Any], ) -> dict[str, Any] | None: + domain = "test" if credentials.get("is_sandbox") else None self._sf_client = Salesforce( username=credentials["sf_username"], password=credentials["sf_password"], security_token=credentials["sf_security_token"], + domain=domain, ) return None diff --git a/web/src/components/credentials/actions/CreateCredential.tsx b/web/src/components/credentials/actions/CreateCredential.tsx index d0bf3cece..60cf2c096 100644 --- a/web/src/components/credentials/actions/CreateCredential.tsx +++ b/web/src/components/credentials/actions/CreateCredential.tsx @@ -3,7 +3,10 @@ import { Button } from "@/components/ui/button"; import { ValidSources } from "@/lib/types"; import { FaAccusoft } from "react-icons/fa"; import { submitCredential } from "@/components/admin/connectors/CredentialForm"; -import { TextFormField } from "@/components/admin/connectors/Field"; +import { + BooleanFormField, + TextFormField, +} from "@/components/admin/connectors/Field"; import { Form, Formik, FormikHelpers } from "formik"; import { PopupSpec } from "@/components/admin/connectors/Popup"; import { getSourceDocLink } from "@/lib/sources"; @@ -206,20 +209,31 @@ export default function CreateCredential({ placeholder="(Optional) credential name.." label="Name:" /> - {Object.entries(credentialTemplate).map(([key, val]) => ( - - ))} + {Object.entries(credentialTemplate).map(([key, val]) => { + if (typeof val === "boolean") { + return ( + + ); + } + return ( + + ); + })} {!swapConnector && (
diff --git a/web/src/lib/connectors/credentials.ts b/web/src/lib/connectors/credentials.ts index 924efcbed..ac35beb29 100644 --- a/web/src/lib/connectors/credentials.ts +++ b/web/src/lib/connectors/credentials.ts @@ -171,6 +171,7 @@ export interface SalesforceCredentialJson { sf_username: string; sf_password: string; sf_security_token: string; + is_sandbox: boolean; } export interface SharepointCredentialJson { @@ -270,6 +271,7 @@ export const credentialTemplates: Record = { sf_username: "", sf_password: "", sf_security_token: "", + is_sandbox: false, } as SalesforceCredentialJson, sharepoint: { sp_client_id: "", @@ -452,6 +454,7 @@ export const credentialDisplayNames: Record = { sf_username: "Salesforce Username", sf_password: "Salesforce Password", sf_security_token: "Salesforce Security Token", + is_sandbox: "Is Sandbox Environment", // Sharepoint sp_client_id: "SharePoint Client ID",