Integration Options Flashcards

1
Q

Describe external objects integration

A

Data is fetched from an external system using Salesforce Connect Adapters. Adapter types supported are: Cross-org, OData 2.0, OData 4.0, Custom adapter created via Apex

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Describe canvas integration

A

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 our users as part of their Salesforce experience

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Describe Push notifications

A

Mobile push notifications allow Lightning Platform mobile application developers to easily push notifications to their users’ mobile devices when business events occur in the customers’ organizations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe REST API

A

REST API provides a powerful, convenient, and simple REST-based web services interface for interacting with Salesforce. Its advantages include ease of integration and development, and it’s an excellent choice of technology for use with mobile applications and web projects. It provides the same methods as SOAP API. It integrates via simple HTTP calls and accepts both XML and JSON

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Describe SOAP API

A

Use SOAP API to create, retrieve, update or delete records, such as accounts, leads, and custom objects. With more than 20 different calls, SOAP API also allows you to maintain passwords, perform searches, and much more. Use SOAP API in any language that supports Web serices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Describe Chatter REST API

A

Use Chatter REST API to display Chatter feeds, users, groups and followers, especially in mobile applications. Chatter REST API also provides programmatic access to files, recommendations, topics, notifications, Data.com purchasing, and more

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Describe Bulk API

A

Used to extract and load large volumes of data into and from Salesforce

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Describe Metadata API

A

Used to retrieve, deploy, create, update or delete customization information, such as custom object definitions and page layouts, for your organization. This API is intended for managing customization and for building tools that can manage the metadata model, not the data itself

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Describe Streaming API

A

Use Streaming API to receive notifications for changes to Salesforce data that match a SOQL query you define, in a secure and scalable way. Supported via PushTopics

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Describe Web Service API

A

Allows developers to create Web Services on Salesforce that can be called by external third parties

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Describe Tooling API

A

Use Tooling API to build custom development tools for apps for Lightning Platform applications. Tooling API’s SOQL capabilities for many metadata types allow you to retrieve smaller pieces of metadata. Smaller retrieves improve performance, which makes Tooling API a better fit for developing interactive applications. Tooling API provides SOAP and REST interfaces

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Describe Apex callouts

A

Call external SOAP, Rest or other web services from Apex

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe Outbound Messages

A

Standard Salesforce outbound integration. Send a SOAP message with data. The message can include Session Id and supports 24 hour retry mechanism

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe Email Integration

A

Integrate by sending and receiving emails. Must implement InboundEmailHandler

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe Middleware integration

A

Integration via ESB or ETL

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

When you have real-time client applications that update a few records at a time, which API would be the best to use?

A

SOAP API

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Which API would be a good option when you are loading small data loads?

A

SOAP API

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

If data resides outside of Salesforce, which type of lookups are supported?

A

External Lookups

Indirect Lookups

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

When using a Lookup relationship field, what is the allowed child objects?

A

Standard
Custom
External

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

When using a Lookup relationship field, what is the allowed parent objects, and what field would be used for matching records?

A

Standard
Custom

Field used for matching: 18 character SFDC record ID

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

When using an External Lookup relationship field, what is the allowed child objects?

A

Standard
Custom
External

22
Q

When using an External Lookup relationship field, what is the allowed parent objects, and what field would be used for matching records?

A

External

The External ID Standard field is used for matching

23
Q

When using an Indirect Lookup relationship field, what is the allowed child objects?

A

External

24
Q

When using an Indirect Lookup relationship field, what is the allowed parent objects, and what field would be used for matching records?

A

Standard
Custom

You select a custom field with the External ID and unique attributes as the parent field for matching records

25
Q

When loading data with parent references into Salesforce, what is more efficient? Using an external ID or a Salesforce Id?

A

Using an external ID has additional overhead in that it performs a kind of “lookup” to find the record, whereas this additional overhead does not occur (or is bypassed) when using the native Salesforce Id

26
Q

Universal Containers (UC) has a set of integrations that execute sequentially. Salesforce is the final downstream system for the integrations. Management is complaining that data is taking too long to appear in Salesforce.

Which two approaches should the data architect use to diagnose the issue?

Choose two answers

A. Document the data flow within each system and through each integration

B. Add CPU and memory to the integration platform hardware

C. Confirm that network bandwidth and latency are within expected parameters

D. Increase the number of parallel integration processes that are running

A

A. Document the data flow within each system and through each integration

C. Confirm that network bandwidth and latency are within expected parameters

27
Q

How does Lookup relationship fields work for External Objects

A

A lookup relationship field links a child standard, custom or external object to a parent standard or custom object. A user who’s editing a child record can click he field’s lookup icon to select a specific parent record, and a user who’s viewing a parent record can view a related list of child records.

When you are creating a lookup relationship field on an external object, enter the External Column Name that contains the 18 character Salesforce Ids for identifying the parent records

28
Q

How does the External Lookup Relationship Field work on External Objects

A

An external Lookup relationship links a child standard, custom or external object to a parent external object

The values of the standard Extenal ID field on the parent external object are matched against the values of the external lookup relationship field. For a child external object, the values of the external lookup relationship field come from the specified External Column Name

29
Q

How does Indirect Lookup relationship fields work on External Objects

A

An indirect lookup relationship links a child external object to a parent standard or custom object. When you create an indirect lookup relationship field on an external object, you specify the parent object field and the child object field to match against each other.

Specifically, you select a custom unique, external ID field on the parent object to match against the child’s indrect lookup relationship field

30
Q

Streaming API’s push paradigm lets you:

A. Create more records in a single API call

B. Use SOSL to listen for event notifications

C. Avoid making unnecessary API requests by listening for notifications rather than polling for data

D. Write code from the crow’s nest of a pirate ship

A

C. Avoid making unnecessary API requests by listening for notifications rather than polling for data

31
Q

Why isn’t the following SOQL query a valid PushTopic query?

SELECT Name, Phone from Contact where MailingCity = ‘Indianapolis’

A. WHERE clauses aren’t supported for PushTopics

B. The SELECT Statement doesn’t include an ID

C. Contact isn’t a supported object for PushTopic queries.

D. The query is valid

A

B. The SELECT Statement doesn’t include an ID

32
Q

Streaming API question: What channel name corresponds to a platform event that you defined with the label of Solar Panel Event?

A. /event/Solar_Panel_Event

B. /topic/Solar_Panel_Event

C. /event/Solar_Panel_Event__c

D. /event/Solar Panel Event

E. /event/Solar_Panel_Event__e

A

E. /event/Solar_Panel_Event__e

33
Q

How do you broadcast a message with generic streaming?

A. Create a generic streaming channel, and then POST a request to /StreamingChannel//push

B. Create a PushTopic, and then POST a request to /PushTopic//push

C. Post a request to /PushTopic/push

D. Post a request to /StreamingChannel/push

A

A. Create a generic streaming channel, and then POST a request to /StreamingChannel//push

34
Q

Which replay option specifies that the subscriber receives event notifications with replay IDs 6, 7, 8, and 9

A. 6
B. 5
C. -2
D. -1

A

B. 5

35
Q

What 5 integration options are available for Salesforce (If you want to house data outside of Salesforce)?

A
  1. .Heroku Connect
  2. Salesforce Connect
  3. Salesforce REST APIs
  4. Callouts
  5. Canvas
36
Q

What is Heroku Connect?

A

Heroku Connect provides both data replication and data proxies for Salesforce. Data replication synchronizes data between Salesforce and a Heroku Postgres database. Depending on how it’s configured, the synchronization is either one way or bidirectional.

37
Q

What is Salesforce Connect?

A

You can use Salesforce Connect (formerly called Lightning Connect) as a data proxy to pull OData or other data sources into Salesforce on demand. No data is copied to the Salesforce database. You can run endpoints that expose OData 2.0 on Heroku or as provided by external systems.

38
Q

What are Salesforce Rest APIs

A

The Salesforce REST APIs provide apps on Heroku access to Salesforce data through simple JSON-formatted HTTP requests. You can use this integration for data proxies and custom user interfaces. Applications built with open-source technologies that are running on Heroku can use OAuth to authorize users in a custom user interface and then interact with Salesforce data on their behalf. Integration use cases without a user interface can broker data between Salesforce and external systems.

39
Q

What are Callouts?

A

You can use callouts from Salesforce to call external processes on Heroku. You write the callouts in Apex or use workflow outbound messages to have events on Salesforce trigger the execution of a process on Heroku. That process often uses one of the previously mentioned integration methods to get the result of the process back into Salesforce.

40
Q

How does Canvas work within Salesforce?

A

Canvas provides a way to load an external user interface into Salesforce that can interact with Salesforce data through a JavaScript API. You can run the external UI on Heroku and build it with an open-source web technology. The data requests that Canvas apps make happen in the context of the Salesforce user.

41
Q

Which integration should you use if you want to replicate data between Salesforce and Heroku

A

Heroku Connect

42
Q

Which integration technique should you use if you want to expose a Heroku Postgres database to Salesforce

A

Heroku Connect External Object

43
Q

To proxy OData, SOAP, XML, or JSON data sources into Salesforce, which integration technique should you use?

A

Salesforce Connect

44
Q

If Heroku Connect doesn’t fit the bill, like when you have a custom UI on Heroku where users log in via Salesforce which integration technique should you use?

A

Use the Salesforce REST APIs.

45
Q

To offload or extend the processing of Salesforce data events which integration technique should you use?

A

Use callouts from Salesforce to Heroku.

46
Q

To embed a custom UI from Heroku (or other external web app) into Salesforce, which integration technique should you use?

A

use Canvas

47
Q

What is idempotence?

A

In the world of computing, an operation is idempotent when it produces the same result whether you execute it once or multiple times.

In a distributed application, you integrate various systems that communicate with one another over a network. To account for inevitable network failures, an important design question that every distributed application architect should consider for each distributed operation is as follows:

 “Will there be any unwanted side effects if a particular distributed operation executes multiple times?”
48
Q

How does idempotence impact getter methods

A

It’s a best practice for getter methods to be idempotent, that is, to not have side effects. For example, don’t increment a variable, write a log message, or add a new record to the database. Visualforce doesn’t define the order in which getter methods are called, or how many times they might be called in the course of processing a request. Design your getter methods to produce the same outcome, whether they are called once or multiple times for a single page request.

49
Q

What is one possible solution (easier one that complex coding) to ensure Webservice SOAP or REST API calls are idempotent? (For example if the webservice call inserts opportunity records within SFDC)

A

Using a couple of mouse clicks, you could add or use a field in the target object to manage remote system state. For example, in a Developer Edition org, the Opportunity object has a custom field, OrderNumber__c. You can customize this field so that it must be unique and required. Then, when any API call from any app tries to create a duplicate Opportunity using an API call, the app gets an error similar to the following that the app can trap and handle appropriately.

50
Q

What is a possible solution to make your Bulk API idempotent?

A

Rather than just endlessly retrying entire batch loads, you might code your loading process to locally collect and handle rows that returned errors.