Salesforce Integration Interview Questions and Answers to help you prepare for your next Salesforce Interview.
Q1. What is Integration Pattern?
Integration Pattern is a standardized method for Integrating systems. It identifies how systems (including their components and services) interact as part of an Integration Solution Design. Integration Pattern describes a proven way to evaluate and solve an Integration problems without reinventing the wheel.
Q2. What are the common Integration Initiatives for Salesforce Platform?
- Application Integration – Integrate features and functionality across systems
- Data Integration – Data integrations and synchronization between two or more systems
- Process Integration – Extend Business Process and Service Across Systems
Q3. What are the common Salesforce Platform Integration Design Patterns?
- Remote Process Invocation – Request and Reply: Salesforce invokes a process on a remote system and the system then waits for a reply
- Remote Process Invocation – Fire and Forget: Salesforce invokes a process in a remote system but doesn’t wait for completion of the process
- Batch Data Synchronization – When data is updated in an external system or on the Salesforce Lightning Platform, the updates are reflected in either system. Updates are applied in a batch manner
- Remote Call-In – A remote system creates, retrieves, updates, or deletes data stored in Lightning Platform
- Data Virtualization – Salesforce accesses external data in real time
- High-Frequency Data Replication – A source system asynchronously replicates data to a target system in near–real time at high scale
- Publish/Subscribe – Salesforce publishes an event (such as a record created, changed, deleted, and so on) with no knowledge of who may be on the receiving end. Any number of subscribers listen for these events and process them accordingly
Q4. What is a Connected App?
A connected app is a framework that enables an external application to integrate with Salesforce using APIs and standard protocols, such as Security Assertion Markup Language (SAML), OAuth, and OpenID Connect. Connected apps use these protocols to authorize, authenticate, and provide single sign-on (SSO) for external apps.
Q5. What the the common OAuth 2.0 Authorization Flows for Connected Apps?
- Web App Integration (OAuth 2.0 Web Server Flow)
- Mobile App Integration (OAuth 2.0 User-Agent Flow)
- Server-to-Server Integration (OAuth 2.0 JWT Bearer Flow)
- IoT Integration (OAuth 2.0 Device Flow)
- Refresh Token Flow
- Username-Password Flow
- SAML Bearer Assertion Flow
- SAML Assertion Flow
Q6. What is Change Data Capture?
Change Data Capture is a streaming product that enables you to integrate your Salesforce data with external systems. With Change Data Capture, you can receive changes of Salesforce records in real time and synchronize corresponding records in an external data store. Change Data Capture publishes events for changes in Salesforce records corresponding to create, update, delete, and undelete operations.
Q7. What is Analytics API?
The Analytics REST API is based on the Chatter REST API. It is used to programmatically access Analytics features such as datasets, dashboards and lenses.
Q8. What is Metadata API?
Metadata API is used to retrieve, deploy, create, update or delete customization information, such as custom object definitions and page layouts in Salesforce Org. Applications built using Metadata API can be used to move Metadata between orgs or local repository. You can access Metadata PI using Ant Migration Tool or Salesforce Extensions for Visual Studio Code.
Q9. What is Tooling API?
Tooling API is used to build custom development tools or apps for Salesforce Platform. It allows you to retrieve smaller pieces of Metadata making it a good fit for developing interactive applications.
Q10. What is User Interface API?
User Interface API can be used to build Salesforce UI for native mobile apps & custom web apps. User interfaces built using User Interface API let users work with records, list views, actions, favorites and more. Once a request is received behind the scenes Salesforce checks field-level security settings, sharing settings, and permissions .Makes SOQL queries to get record data. Gets object metadata, theme and layout information.
Q11. What is Salesforce Connect?
Salesforce Connect provides seamless integration of data across system boundaries by letting users view, search, and modify data that’s stored outside Salesforce org. For example, data that’s stored on premises in an enterprise resource planning (ERP) system. Instead of copying the data into Salesforce org, you can use external objects to access the data in real time via web service callouts.
Salesforce Connect maps Salesforce External Objects to data tables in external systems. Instead of copying the data into org, Salesforce Connect accesses the data on demand and in real time. The data is never stale, and we access only what you need. It is recommend to use Salesforce Connect when:
- You have a large amount of data that you don’t want to copy into your Salesforce org
- You need small amounts of data at any one time
- You want real-time access to the latest data
Salesforce Connect uses a protocol-specific adapter to connect to an external system and access its data. When you define an external data source in your organization, you specify the adapter in the Type field. There are three types Adapters available for Salesforce Connect:
- Cross Org – Uses the Lightning Platform REST API to access data that’s stored in other Salesforce orgs
- OData 2.0/OData 4.0 – Uses Open Data Protocol to access data that’s stored outside Salesforce. The external data must be exposed via OData producers
- Custom Adapter Created via Apex – You use the Apex Connector Framework to develop your own custom adapter when the other available adapters aren’t suitable for your needs
Q12. What are External Objects?
External objects are similar to custom objects, except that they map to data that’s stored outside Salesforce org. Each external object relies on an external data source definition to connect with the external system’s data. Each external object definition maps to a data table on the external system. Each of the external object’s fields maps to a table column on the external system.
Following relationships are available for external objects:
- Lookup Relationship – A lookup relationship field links a child standard, custom, or external object to a parent standard or custom object
- External Lookup Relationship – An external lookup relationship links a child standard, custom, or external object to a parent external object
- Indirect Lookup Relationship – An indirect lookup relationship links a child external object to a parent standard or custom object
Q13. When will you prefer Import Wizard over Data Loader?
- You are loading less than 50,000 records.
- The object you need to import is supported by import wizards. To see what import wizards are available and thus what objects they support, from Setup, enter Data Management in the Quick Find box, then select Data Management.
- You want to prevent duplicates by uploading records according to account name and site, contact email address, or lead email address.
Q14. When will you prefer Data Loader over Import Wizard?
- You need to load 50,000 to 5,000,000 records. Data Loader is supported for loads of up to 5 million records. If you need to load more than 5 million records it is recommended to user third party ETL tools.
- You need to load into an object that is not yet supported by the import wizards.
- You want to schedule regular data loads, such as nightly imports.
- You want to export your data for backup purposes.
Q15. What is different when using Data Loader with ‘Use Bulk API’ option enabled?
Enabling the Bulk API in Data Loader allows you to load or delete a large number of records faster than using the default SOAP-based API. Some of the key differences when ‘Use Bulk API’ option in Data Loader is selected are:
- It allows you to execute a hard delete if you have the permission and license
- Insert null values is not available
- Allow field truncation is not available
- You can also select the ‘Enable serial mode for Bulk API‘ option. Processing in parallel can cause database contention. When contention is severe, the load can fail. Serial mode processes batches one at a time, however it can increase the processing time for a load.
Q16. What are Named Credentials?
A named credential specifies the URL of a callout endpoint and its required authentication parameters in one definition. To simplify the setup of authenticated callouts, specify a named credential as the callout endpoint. If you instead specify a URL as the callout endpoint, you must register that URL in your org’s remote site settings and handle the authentication yourself. For example, for an Apex callout, your code handles authentication, which can be less secure and especially complicated for OAuth implementations.
Named credentials are supported in these types of callout definitions:
- Apex callouts
- External data sources of these types:
- Salesforce Connect: OData 2.0
- Salesforce Connect: OData 4.0
- Salesforce Connect: Custom (developed with the Apex Connector Framework)
- External Services
Q17. What are REST API Composite Resources?
REST API Composite Resources be used to improve application’s performance by minimizing the number of round-trips between the client and server.
Composite Resources List:
- Composite – Executes a series of REST API requests in a single call. You can use the output of one request as the input to a subsequent request. The response bodies and HTTP statuses of the requests are returned in a single response body. The entire series of requests counts as a single call toward your API limits.
- Composite Graphs – Composite graphs provide an enhanced way to perform composite requests, which execute a series of REST API requests in a single call.
- Batch – Executes up to 25 subrequests in a single request. The response bodies and HTTP statuses of the subrequests in the batch are returned in a single response body. Each subrequest counts against rate limits.
- sObject Tree – Creates one or more sObject trees with root records of the specified type. An sObject tree is a collection of nested, parent-child records with a single root record.
- sObject Collections – Executes actions on multiple records in one request. Use sObject Collections to reduce the number of round-trips between the client and server. The response bodies and HTTP statuses of the requests are returned in a single response body. The entire request counts as a single call toward your API limits. This resource is available in API version 42.0 and later.
Q18. What is Composite REST API?
Composite REST API call executes a series of REST API requests in a single call. You can use the output of one request as the input to a subsequent request. The response bodies and HTTP statuses of the requests are returned in a single response body. The entire series of requests counts as a single call toward your API limits.
You can have up to 25 subrequests in a single call. Up to 5 of these subrequests can be sObject Collections or query operations, including Query and QueryAll requests.
Q19. What is Composite sObject Tree API ?
A Composite sObject Tree API call creates one or more sObject trees with root records of the specified type. An sObject tree is a collection of nested, parent-child records with a single root record.
In the request data, you supply the record hierarchies, required and optional field values, each record’s type, and a reference ID for each record. Upon success, the response contains the IDs of the created records. If an error occurs while creating a record, the entire request fails. In this case, the response contains only the reference ID of the record that caused the error and the error information. The response bodies and HTTP statuses of the requests are returned in a single response body. The entire request counts as a single call toward your API limits.The request can contain the following:
- Up to a total of 200 records across all trees
- Up to five records of different types
- sObject trees up to five levels deep
Q20. What is a SSL Certificate?
SSL is an acronym for Secure Sockets Layer, an encryption technology. SSL creates an encrypted connection between your web server and your visitors’ web browser allowing for private information to be transmitted without the problems of eavesdropping, data tampering, or message forgery.
Millions of online businesses use SSL protocol and certificates to secure their websites and allow their customers to place trust in them. In order to use the SSL protocol, a web server requires the use of an SSL certificate. SSL certificates are provided by known Certificate Authorities (CAs). Your customers won’t trust your web site without an SSL certificate.
If you are transmitting sensitive information on a web site, such as credit card numbers or personal information, you need to secure it with SSL encryption.