Integration
Four main integration patterns in Salesforce Connect
1. Point and click integration into OData endpoints 2. Write simple Apex adapters to connect to any other HTTP API 3. Connect multiple Salesforce orgs across your business (does not require middleware) 4. Integrate through middleware
Service Bus
An Enterprise Service Bus (ESB) is fundamentally an architecture. It is a set of rules and principles for integrating numerous applications together over a bus-like infrastructure. The core concept of the ESB architecture is that you integrate different applications by putting a communication bus between them and then enable each application to talk to the bus. This decouples systems from each other, allowing them to communicate without dependency on or knowledge of other systems on the bus. The concept of ESB was born out of the need to move away from point-to-point integration, which becomes brittle and hard to manage over time. Platform Events & Mulesoft
Asynchronous
Asynchronous: the thread will not wait until it completes its tasks before proceeding to next. Instead it proceeds to next leaving it run in separate thread. In a Asynchronous call, the code runs in multiple threads which helps to do many tasks as background jobs. Batch, @future Annotation
Salesforce Organization Sync
At Salesforce, we recognize that you need to access your data at a moment's notice—even during our downtimes and maintenance. With Organization Sync, you can set up a secondary, synced Salesforce organization where users can work on your most business-critical processes and data whenever your primary organization is experiencing downtime or maintenance. Organization Sync is ideal for companies whose users need access to Salesforce at all times. For example, representatives in a 24/7 call center can continue to serve customers during maintenance windows with minimal disruption.
Identity Connect
Automates Active Directory integration. Is a simple on-premise engine that automatically creates, updates, and deactivates Salesforce users. Provides seamless single sign-on. Syncs user attributes, profiles, permission sets, groups, and roles.
Orchestration
Composing several existing fine-grained components into a single higher order composite service. This can be done to achieve appropriate "granularity" of services and promote reuse and manageability of the underlying components.
What are the different ways to pump data into my org?
ETL, Data Loader, APIs
What are the major types of integration? Why would I choose one layer over another?
Identity, Data, Process, Presentation With Salesforce, you don't have to choose one layer over another. Salesforce covers all four layers of integration for seamless customer experience.
Heroku Connect
If you need to easily sync data from your Salesforce orgs with your customer apps and databases on Heroku, there's Heroku Connect for doing just that. With Heroku Connect, you're able to synchronize Salesforce Core Data with Custom Heroku applications through a bi-directional data replication between Salesforce and the Heroku postgres database. In this case, data is copied from Salesforce to the Heroku postgres, whch can be accessed by Heroku apps directly. The object between Salesforce and Heroku postgres can be mapped through using simple point and click interface and can sync based on an adjustable polling frequency.
Parallel processing
Parallel processing signifies simultaneous processing on several objects or subsystems at the same time, although processing may finish on different objects at the different time.
Serial processing
Serial processing means strictly sequential, without overlap of the successive processing times on objects or distinct subsystems. Each object takes the same average amount of time to process and the next object begins processing only when the previous one is completed.
What is ETL? What does it have to do with Salesforce?
That process is time consuming and requires you to copy data into your org that you might never use or quickly becomes stale. Salesforce Bulk API (vs. the standard REST API) most of the time to move millions of objects and fields from Salesforce to a data warehouse
Synchronous
The thread will wait until it completes its tasks before proceeding to next. In a Synchronous call, the code runs in single thread. Trigger, Controller Extension, Custom Controller
External Services extra points
Use External Services to connect to a service of your choice, invoke methods based on the external source via a flow, and import data from the service into Salesforce—all with the help of an easy-to-use wizard.
Heroku Connect extra points
Using bi-directional synchronization between Salesforce and Heroku Postgres, Heroku Connect unifies the data in your Postgres database with the contacts, accounts and other custom objects in the Salesforce database. Easily configured with a point and click UI, it's simple to get the service up and running in minutes - no coding or complex configuration is required.
Enterprise Architecture
includes the plans for how an organization will build, deploy, use, and share its data, processes, and IT assets
SOA
service-oriented architecture; a software architecture that bundles together stand-alone services Mulesoft, Implementing SOA with an API-led connectivity approach drives business agility, better customer experiences and, ultimately, competitive advantage.
API
An API is a software intermediary that allows two applications to talk to each other. In other words, an API is the messenger that delivers your request to the provider that you're requesting it from and then delivers the response back to you. Application Programming Interface With an API they don't have to reinvent the wheel every time they write a new program.
Service Catalog
An IT service catalog is a list of technology resources and offerings available from the IT service provider within an organization. This catalog is intended to help the IT service provider efficiently and effectively manage and meet end-user expectations. The IT service catalog is a list of technology services available to users. The IT service portfolio is a complete list of all IT services and products, including those in development and those that have been retired, in addition to those currently in use. Typically, a catalog will have two views: a customer-facing view from which business users can browse and select services and a technical view that documents exactly what is required to deliver each service in the catalog.
How many API calls do we get? How do you measure that?
Based on the edition that you have An API call is when an API is requested to fetch data from another application Every time you make a call to a server in name of an application using a SDKs or a API, it counts as an API request or API call. Logins, saves, queries are examples of operations counted as API requests among other types of operations. You downloaded an application to your smartphone, you opened it and the application asked your Email and Password. At the moment you press Register and send your data to the API it is counted as one API request.
Batch
Batch is an efficient way of processing high volumes of data is where a group of transactions is collected over a period of time. Data is collected, entered, processed and then the batch results are produced. Batch processing requires separate programs for input, process and output. An example is payroll and billing systems. As you all might know about the salesforce governor limits on its data. When you want to fetch thousands of records or fire DML on thousands of rows on objects it is very complex in salesforce and it does not allow you to operate on more than certain number of records which satisfies the Governor limits.
Canvas vs. iFrame
Connected apps are a way to allow third-party apps inside your system without giving them the full access rights of the end user using the app. Currently, if you build a Visualforce page and do this, you end up sending your user session ID to the third-party app. Session ID has full access as the user, which may or may not be what you want. A lot our larger enterprise customers don't want to give third-party applications the "keys to the kingdom" so to speak. One of the big problems with iFrames and mashup UIs is what's called the "same origin policy." This is a Web standard that says if you have content from one domain being displayed in a frame from another domain, the app can't take over and make calls directly to the parent frame. This is to protect the end user because if this was allowed, an app in an iFrame could take over a user session and gain access to information that it shouldn't be able to access. In a nutshell, this policy prevents an iFrame from communicating with its parent container. iFrame is mostly one way integration (SF to UI integration), has security and sizing problems
Salesforce Connect extra points
Data is accessed in real time by reference, not stored or copied in Salesforce. Therefore, data is always up to date and will be trusted by business users. Salesforce Connect allows customers to connect to any external data source that is API-accessible. The ability to execute full CRUD (Create, Read, Update, Delete) operations on an external database turns Salesforce into a front-end-as-a-service platform that can run on external databases Custom Adapters: Now developers can now write simple pieces of Apex code to connect to any API, not just OData APIs Cross-Org Adapters: Now admins can integrate multiple Salesforce orgs across an organization together without writing any code. If your customer wants to connect to multiple applications or to applications that do not natively expose OData, then they will need middleware in addition to Salesforce Connect.
High volume platform events
High Volume Platform Events are similar to Standard Platform Events, but built on a new and enhanced infrastructure to support dramatically higher volumes for more intensive eventing requirements. Same number of events: 100K per day The infrastructure backing High Volume and Standard volume events is different; high volume uses a massively scalable, distributed system to persist and serve the events. That said, the APIs to publish and subscribe are exactly the same. The creation of the event definitions is exactly the same, only one attribute on the definition changes (from Standard to High Volume).
Salesforce Connect
If all you need is to be able to reference data from external sources within the context of your Salesforce org, there's Salesforce Connect for doing just that. Salesforce Connect is a great way of accessing real-time data coming from external systems from a Salesforce org. With this approach, it provides a native point to point connectivity for Salesforce. You can access data from another org, or external systems using an OData endpoint, or through a custom Apex adpater. The main thing about Salesforce Connect is that you're not physically moving any of the data into your Salesforce Org, you're only simply referencing data from an external system in real time using External Objects. You're able to leverage data without storing it in Salesforce. I know you're familiar with the standard objects that come out of the box at Salesforce, as well as the custom objects that you build, now with Salesforce Connect it introduces a third type of object in an External Object. External objects are a lot like Standard and Custom objects, only that the data is not stored inside of Salesforce. The data stays inside your external system but will just be exposed to be displayed into Salesforce through an external object.
Salesforce APIs
If you need granular access to Salesforce data, events, and processes for complete customization and connectivity, we provide open APIs for doing just that. Salesforce produces an API for every record and field and object that you encounter, allow you to be able to access and configure the data however you see fit. We have a myriad of different APIs and provide APIs for everything from metadata, to the UI, to the developer tooling we provide. Having these flexible options, you can do things like work with the user interface, workflows, and the metadata to fit what you need. Everything is designed to be customized to your business needs.
External Services
If you need to create an end to end business process in Salesforce using workflows from other systems, there's external services to do just that. So if you create a business process in Salesforce like a credit card application that needs to check someone's credit score, external services will allow you to declaratively integrate Salesforce with an external business process. Ay process that sits behind an open API can be brought into Salesforce, and then dragged and dropped into Flow Builder. Without writing custom Apex code, you can complete a business process by calling to other systems to complete the credit check, confirm inventory, update an order and more. This transforms the range of your flows without involving custom integration and process code. External Services makes it easy and fast to take any openAPI process and open it up to Salesforce process automation tools.
Platform Events
If you need to have your systems exchange information in real time when certain events happen, like when a deal closes or an order is placed, there is Platform Events to do just that. Salesforce provides a first-class eventing system that enables a business to publish and subscribe to events they define, without having to build and maintain their own messaging bus. Platform Events allow Salesforce customers to deploy an event-driven architecture seamlessly connect to Salesforce data and processes. You can publish and subscribe from Salesforce with point and click tools like process builder, also with Apex, or also just using the streaming API to orchestrate end to end processes that reach across many systems. With this design pattern, integrations are decoupled, so if you change systems like going from *(system to system)* you don't need to worry about an integration falling apart.
Customer 360
If you need to orchestrate cross channel experiences from your multitude of Salesforce clouds, there's Salesforce 360 for doing just that. Salesforce 360 integrations Salesforce applications and it unifies sales, service, and marketing customer data with a common data model across core and non-core Salesforce to deliver a truly unified CRM platform. Customers often use different email addresses and phone numbers, and customers' experiences are often done in silos. Businesses don't have a unified view of a customer and there is nothing that connects the different systems to be able to deliver that connect experience. Salesforce 360 helps our customers deliver a unified customer experience by working our products work together more seamlessly. Creating an unified ID for each customer is the foundation of connected experiences.
Canvas
Instead of creating a small embedded window outside Salesforce, it creates a window inside Salesforce. External systems can then embed their interface side-by-side with Salesforce. Canvas enables you to easily integrate a third-party application in Salesforce. Canvas is a set of tools and JavaScript APIs that you can use to expose an application as a canvas app. This means you can take your new or existing applications and make them available to your users as part of their Salesforce experience.
Lightning Out
Lightning Out is the solution in how you can see Salesforce inside your external systems. This feature gives IT teams a small bit code that they can copy and paste into an external system. This code create a small secure window into Salesforce that is embedded directly in the interface of another system. This makes Salesforce available in-context in an external system.
OData
OData is the Open Data Protocol that is a modern, REST-based protocol for integrating data. Vendors such as SAP and Microsoft have already implemented OData support, so products such as NetWeaver and SharePoint are directly accessible. Integration products from Salesforce partners extend the reach of Salesforce Connect to a much wider range of back-office systems.
Platform Events vs. Change Data Capture
Platform Events are ideal for process automation and triggering downstream business actions in response to well-defined activities in Salesforce. Change Data Capture is designed for easily capturing and replicating data changes in Salesforce to other systems that need to be up-to-date with your CRM.
What's the difference between REST and SOAP?
REST is an architectural style while SOAP is a protocol and so it's an official standard unlike REST. REST deploys multiple standards so it takes fewer resources and bandwidth. SOAP uses XML for creation of Payload and results in large sized files. SOAP to take the place of older technologies that don't work well on the Internet. Advantage with REST lies with performance with better cache support, lightweight requests and responses, easier response parsing with JSON. REST allows for nimbler clients and servers, reduces network traffic. REST is preferred for mobile and web apps since JSON being lighter the app runs smoother and faster
Do you offer APIs out of the box? Can I build my own APIs? Why would I build my own APIs?
REST, SOAP, Bulk, Streaming, Metadata, Tooling, Streaming, UI, Analytics, Chatter, etc. Need a more complex integration
Change Data Capture
Rather than force customers to develop brittle, point-to-point integrations, Change Data Capture enables any Salesforce customer to easily capture data changes in Salesforce and replicate them in other systems. Change Data Capture makes it easy to keep external systems in sync with your Salesforce data by capturing every change in Salesforce (such as a new account or a closed deal) and relaying those changes to other systems. Because Change Data Capture is built on the Salesforce event bus, customers can easily add new subscribers to Salesforce data changes without the drawbacks of traditional point-to-point techniques for integration, such as high maintenance costs, complex dependencies, and custom code.
Real Time
Real-time involves a continual input, process and output of data. Data must be processed in a small time period (or near real time). Radar systems, customer services and bank ATMs are examples. Real time data processing and analytics allows an organization the ability to take immediate action for those times when acting within seconds or minutes is significant. The goal is to obtain the insight required to act prudently at the right time - which increasingly means immediately. If you have a business logic to send an email 180 days before the Contract expiration, we want to notify the User that the Contract is going to expire. If we have only 180 days is the criteria then we can achieve this using Time based Workflow.
What is Salesforce Express Connect? Is this some form of integration?
Salesforce Express Connect is a multi-partner program enabling our customers to access their Salesforce Orgs via a private, reliable, secure connection rather than using the public internet. Through our partnerships with multiple global Communication Service Providers (CSP), we have established a broad global network covering most of our customer base. Our customers will experience: Predictable Performance Command and Control of their network Faster Time to Market Direct Connectivity Known Routing and Known Cost Greater Utilization of SFDC Solutions
Salesforce Identity
Salesforce Identity which has many benefits for streamlining user access. If you're using Active Directory to manage employee logins, Salesforce can reuse those logins by providing a small bit of on premise Software called Identity Connect that automatically synchronizes and provisions Salesforce accounts. Enabling the IT department to deploy Salesforce while still leveraging existing Active Directory. There's the single-sign on ability which gives you one click access to the whole library of apps you might be using. Once you log into Salesforce, you don't have to see another login screen.
Salesforce to Salesforce
Salesforce to Salesforce makes it easy for businesses using Salesforce to share records and get updated data on shared records. For example, you can share lead and opportunity data with partners. Salesforce to Salesforce lets your business partners easily integrate your data with their Salesforce records. You can see all of your sharing activity, manage your entire pipeline, share data across multi-tiered partnerships, and integrate your business processes with updates received from your partners using workflow and assignment rules.
Files Connect
Salesforce users can access, share, and search external data from systems like Quip, Google Drive, SharePoint, or Box. Files Connect allows users to search and work with SharePoint files within the Salesforce UI while preserving all content permissions. Salesforce users can simultaneously browse both Salesforce and SharePoint for files and records through the CRM's search. This functionality of Files Connect speeds up sales reps' work and helps them to make the most out of SharePoint files while communicating with customers, whether this relates to using marketing materials or forwarding proposal documents. Once a Salesforce user finds the needed SharePoint document, they can connect it to any Salesforce record or object, say, account or opportunity, and share it via Chatter. Also, Files Connect allows editing SharePoint docs directly in Salesforce, this way solving the problem of document duplication and file versioning. Salesforce Files Connect is for unstructured data such as files, SharePoint, Google Doc and Documentum, while Salesforce Connect is for structured and relational data such as those from databases.
Mulesoft
The MuleSoft Anypoint Platform is a complete, end-to-end solution for every modern connectivity need. From data orchestration, to API lifecycle management, to seamless process automation, MuleSoft empowers businesses to achieve complete digital transformation. Mulesoft empowers businesses to unlock and orchestrate all of their enterprise data, regardless where it lives. It enables every company to unlock data across their enterprise by connecting any application, data, or device--on-premises or cloud, inside or outside of Salesforce--on a unified platform. The MuleSoft Anypoint Platform enables companies to take a strategic approach to integration and accelerate every integration project. With an API-first approach, the Anypoint Platform allows you to break free from inflexible custom code by creating discoverable, consumable, and reusable integration assets, creating agility and speed that empowers your organization to innovate faster.