Integration Flashcards

1
Q

What is required to use Generic Streaming?

A
  1. Streaming Channel.
  2. Client Subscription
  3. Streaming Channel Push REST API
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are 1st Generation streaming services?

A

PushTopic (data changes), General Streaming.
Both use Streaming API. First reflect data changes specified in query (PushTopic query). Second one pushes events not tied to record changes.

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

What are 2st Generation streaming services?

A

Change Data Capture (PushTopics without queries), Platform Events (new Generic Streaming)

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

Where External Services can be used?

A

In Flows

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

What is max schema size for External Service?

A

4.0MB

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

What can be used to cover External Services with tests?

A

HttpCalloutMock

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

How to setup ExternalService?

A

An external service requires a named credential, a url and authentification settings.
It also requires to specify the schema URL path (or endpoint) or the complete schema (OpenAPI 2.0 format) while registering an external service

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

What is preffered to make synchronous callouts to validate / check something before proceed record in Salesforce?

A

Make callouts from LWC or Visualforce

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

Difference between @HttpPut and @HttpPatch?

A

@HttpPut is used in methods performing upsert-like operations. @HttpPatch is used in methods performing update operations.

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

Difference between @HttpPut and @HttpPatch?

A

@HttpPut is used in methods performing upsert-like operations. @HttpPatch is used in methods performing update operations.

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

How to expose class as a SOAP service?

A
Mark class as `global`, add `static` and `webservice` declarations to it's methods.
Generate WSDL file for consuming.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How to expose class as a REST service?

A
Mark class as global with @RestResouce annotation with case-sensitive path in urlMapping.
All methods should be static, global.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What can be used to parse emails and use data to create records?

A

Messaging.InboundEmailHandler

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

How to create InboundEmailHandler?

A

Create class that implements Messaging.InboundEmailHandler with global-access modifier and has handleInboundEmail(inboundEmail, inboundEnvelope) global instance method that returns InboundEmailResult.

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

How to return successfull InboundEmailHandler result operation?

A

Using InboundEmailResult.success = true

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

What types of return values webservice methods don’t support

A
  1. Maps.
  2. Sets.
  3. Pattern objects.
  4. Matcher objects
  5. Exception objects.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What class is used to mock webservice callout in tests?

A

WebServiceMock class

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

What can be used in Visualforce to show reports created in Salesforce?

A

analytics:reportChart

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

What Visualforce component can be used to draw the chart from supplied data?

A

apex:chart

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

What features can be implemented using External IDs?

A

Deep linking (links to records in external systems) and mashups (using Canvas).

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

What is Canvas?

A

Canvas enables you to easily integrate a third-party application in Salesforce. It’s a set of tools and JS APIs user can use to expose an applications as a canvas app?
It can be used with External ID to create Mashups

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

What is Salesforce Connect?

A

Salesforce Connect is used to make external records visible in Salesforce. An external data source is defined for using Salesforce Connect.

22
Q

What is External Data Source?

A

Feature that allows to connect the content and data that is stored outside your Salesforce org?

23
Q

What is required to setup External Data Source?

A

Specify Label, DeveloperName. Select authentification type and provide credentials

24
Q

What authentification protocols are available for External Data Source?

A

Password Auth and OAuth 2.0

25
Q

What method can be used to synchronously update collection of metadata?

A

SaveResult[] updateMetadata(Metadata[] metadata)

26
Q

What can’t be null when creating HttpCallout?

A

Method and Endpoint

27
Q

What method is used in generated stub class to make callout to SOAP service?

A

WebServiceCallout.invoke()

28
Q

How to create parent and child records in one call cia SOAP API?

A

Create child, parent reference, parent object. Call the create() method

29
Q

What is required to setup PushTopics?

A

Name, query, API version

30
Q

Which operations PushTopic supports to notify about?

A

All (including delete, undelete)

31
Q

At which point of setup of the PushTopic, the channel is created?

A

After the PushTopic is inserted, the channel is created

32
Q

What format of PushTopic name?

A

/topic/PushTopicName

33
Q

How secure outbound connection to external application in AWS VPC can be setup?

A

Using Private Connect (AWS PrivateLink)

34
Q

What type of endpoint does Workflow Rule’s Outbound message action supports?

A

SOAP

35
Q

What possible methods types in HTTPRequest instance?

A

DELETE, GET, HEAD, PATCH, POST, PUT, TRACE

36
Q

Which annotation is used for Apex class to specify the contenxt if which they should be serialized/deserialized?

A

@JsonAccess

37
Q

Structure of package xml file?

A

Package > Types > Members (* or Developer Name) and Name (name of metadata type, f.e CustomObject or Profile)

38
Q

How compount fields should be specified in PushTopic query?

A

Name field optionally can have constituent fields (FirstName, LastName). They can’t be specified without compound field.
Address and Geolocation fields must be included as constituent fields with (optionally) compound field

39
Q

What makes PushTopic query unsupported?

A
  1. Semi-joins/anti-joins (SELECT after WHERE).
  2. Aggregate functions.
  3. LIMIT, ORDER BY, GROUP BY, OFFSET, TYPEOF
  4. Formula field in WHERE clauses
40
Q

For how long Salesforce store PushTopic-based event and allows to retrieve events?

A

24 hours

41
Q

How to deactivate PushTopic?

A

Create PushTopic specyfing Id of existing one and set IsActive = false and use update(pt)

42
Q

What is Change Data Capture?

A

Declarative enhancement of PushTopic that is available from Lightning UI

43
Q

How to subscribe to Change Data capture?

A

Using CometD (EMP Connector implements)

44
Q

How to capture Change Data Capture event in Apex Trigger

A

Create Trigger on ObjectName(__ for custom and without for standard obj)ChangeEvent.
Trigger available only after insert context

45
Q

What methods are used to test ChangeEvents?

A

Test.enableChangeDataCapture()

Test.getEventBust().deliver()

46
Q

URL format for Change Data Capture?

A

/data/ChangeEvent

/data/__ChangeEvent

47
Q

Does Change Data Capture respects field level security?

A

Yes.

48
Q

How to specify object name, fields and change type while subscribing to Change Data Capture?

A

payload. ChangeEventHeader.entityName
payload. ChangeEventHeader.changeType
payload. ChangeEventHeader.changedFields

49
Q

Which fields are suported for Platform Event?

A

Date, DateTime, Checkbox, Number, Text, TextArea (Long)

50
Q

Suffix for Platform Event obj?

A

__e

51
Q

How Platform Events can be published?

A

Using Flows, Processes, Apex, API

52
Q

How to subscribe to Platform Events?

A

Using CometD (EMP Connector), Flows, Processes, Apex Triggers, Lightning Component (empApi)