Language IO Integrations for Salesforce | Installing the Managed Package, Creating an Integration User, and Authorizing Access
To translate Knowledge articles or provide human translations for outbound Case emails, Language IO needs programmatic access to your Salesforce org. External Client Apps (ECAs) are the modern, packageable Salesforce frameworks that allow third parties secure, limited access. Language IO conveniently distributes two pre-configured ECAs within our Language IO Integrations managed package:
- Language IO Knowledge Integration: Language IO's ECA for Language IO Article (Knowledge article translation).
- Language IO Case Integration: Language IO's ECA for Language IO Case (human translation of outbound Case emails).
Follow the steps below to install the managed package and, for the relevant ECA, create a dedicated integration user and authorize Language IO's secure, limited access to your Salesforce org.
- Installing Language IO Integrations for Salesforce
- Creating your Salesforce Integration User
- Authorizing Access
Installing Language IO Integrations for Salesforce
Complete the following instructions to install or upgrade Language IO Integrations for Salesforce.
Installation URL
- Language IO Integrations 1.1 2GP:
https://{my_salesforce_domain}/packagingSetupUI/ipLanding.app?apvId=04tak000000IP0rAAG
Installing the Package
- In a browser, enter the installation URL.
- If prompted, log in to your Salesforce org.
- Select "Install for All Users".
- Click "Install" (or "Upgrade").
- A message describes the progress. You will receive a confirmation message when the installation is complete.
Creating your Salesforce Integration User
Create a dedicated Salesforce integration user for the relevant ECA (Language IO Knowledge Integration or Language IO Case Integration):
- In Salesforce, go to Setup → Users.
- Click "New User".
- Set an email address you can access (to verify the user and set a password).
-
Assign a "User License" and "Profile".Best Practice: Assign the "Salesforce Integration" user license, if available. Then, assign the "Salesforce API Only System Integrations" profile and "Salesforce API Integration" Permission Set License Assignment. See Configuring Integration User Permissions for more information.
- Fill out the remaining required user details.
- Check "Generate new password and notify user immediately".
- Click "Save".
- Salesforce will send a verification email to the new user's email.
- Verify the account and set a password.
- Save this user's username and password to authorize secure access.
Configuring Integration User Permissions
General Permissions (Required for Both ECAs)
Your integration user must have Salesforce API access. Language IO recommends assigning your integration user:
- "Salesforce Integration" user license.
- "Minimum Access - API Only Integrations" profile (enable “API enabled” and “API only” permissions).
- "Salesforce API Integration" permission set license (extend API access to Knowledge and Case).
Otherwise, ensure the user has "API enabled" and "API only" permissions enabled.
Permissions for the Language IO Knowledge Integration ECA
Your Language IO Knowledge ECA integration user must have the following permissions:
- User → "Knowledge User".
- App Permissions:
- Knowledge Management
- Article Translations - Edit
- Article Translations - Publish
- Manage Articles
- View Archived Articles
- View Draft Articles
- Knowledge Management
- Object Settings:
- Knowledge
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Record Type Assignments: Assigned all Record Types to be translated.
- Field Permissions: Read/edit access for all fields to be translated.
- Knowledge
Permissions for the Language IO Case Integration ECA
Your Language IO Case ECA integration user must have the following permissions:
- System Permissions: Modify All Data.
- Apex Class Access: LanguageIO.LinguistNow_TranslationService.
- Object Settings:
- EmailMessage:
- Field Permissions: Read/edit access for LinguistNowSubjectTQE and LinguistNowTQE.
- LinguistNowCaseCommentDrafts
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- LinguistNowCaseCommentRich
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- LinguistNowCaseCommentsExtended
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- LinguistNowThreads
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- LinguistNowTQE
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- LinguistNowTranslations
- Object Permissions: Read, Edit, Delete, View All Records, Modify All Records.
- Field Permissions: Read/edit access for all fields.
- EmailMessage:
Preauthorizing your Integration User for ECA Access
Language IO recommends preauthorizing ECA access for your Language IO integration user only.
- If you haven't already, create a dedicated permission set for your integration user and assign your integration user.
- Go to Setup → External Client App Manager.
- Find the relevant ECA (Language IO Knowledge Integration or Language IO Case Integration).
- From the dropdown to the right, choose "Edit Policies" (or click "Edit" under the ECA's "Policies" tab).
- Under "OAuth Policies", change "Permitted Users" to "Admin approved users are pre-authorized".
- Under "App Policies", select your integration user's dedicated permission set.
- Click "Save".
Authorizing Access
Complete the steps below to authorize Language IO's access to your Salesforce org via the relevant ECA.
- If you have previously authorized Language IO's access to your Salesforce org via a Connected App or External Client App, you must submit a support request to reset those app credentials before completing these steps.
- You must be a Language IO Customer Self-Service Portal (CSSP) admin.
- You must have your Salesforce integration user credentials.
- For consumers restricted to our EU infrastructure, substitute our EU third-level domain (eu.golinguist.com) in the links provided.
- In your browser, open a new incognito browser session or clear your browser cache.
- Open the URL for the relevant ECA:
-
Language IO Knowledge Integration:
https://golinguist.com/linguistnow/consumer/help-oauth -
Language IO Case Integration:
https://golinguist.com/linguistnow/consumer/response-oauth
-
Language IO Knowledge Integration:
- Log in with your Customer Self-Service Portal (CSSP) admin user credentials.
- You will be redirected to your Salesforce org login page.
- Log in to your Salesforce org with your Integration User credentials.
- Click "Allow" to allow Language IO access to the required OAuth scopes.
- If authorization is successful, you will be redirected to a Language IO success page.
- If authorization is not successful:
- Open this URL to log out of your CSSP session: https://golinguist.com/linguistnow/launch/logout
- Restart authorizing access.