Lightico for Salesforce supports the following invocable actions:
Note:
All actions are Global class.
Create a new session
Action Name: CreateSingleSession
Creates a new Lightico collaboration session.
Input parameters
Input class name: CreateSingleSessionWrapper
Parameter | Type | Description |
---|---|---|
| string | ID # of Salesforce contact record from which the session is originating |
| string | Identifies the Salesforce agent associated with this session |
| string | Name of the field that links the session object with another object |
| string | Lightico username of the agent associated with this session |
| integer | Identifies the team from which the session is running. This number appears in the Administration UI - log in to Lightico and go to Settings > Teams. |
| string | Name of customer that is used in the session |
| ||
| string | Customer's phone number for sending the SMS session invitation |
| string | Customer's email address for sending the session invitation |
| Boolean |
|
| Boolean |
|
| Boolean |
|
| Boolean |
|
| string | Name of the Lightico document storage integration hub - the final document will be saved here |
Legacy parameters
The following parameter is still supported:
esignTemplateId
: string; Identifies a PDF Template document to add to the session. This ID # is found at the top left when the document template is opened in the PDF editor.
Note: We recommend creating the session with theCreateSingleSession
endpoint, then adding a PDF Template with theAddEsignToSession
action.
Response
Response class name: CreateSingleSessionResponse
Parameter | Type | Description |
---|---|---|
| string | Identifies a Lightico session |
| string | Identifies a specific customer - generated by Lightico |
| string | Opens the agent collaboration UI |
| string | Opens the customer collaboration UI |
Example request
lightico.Lightico_GlobalMethods ins = new lightico.Lightico_GlobalMethods(); //new instance
lightico.Lightico_GlobalMethods.CreateSingleSessionResponse res = new lightico.Lightico_GlobalMethods.CreateSingleSessionResponse(); // new response class instance
lightico.Lightico_GlobalMethods.CreateSessionWrapper info = new lightico.Lightico_GlobalMethods.CreateSessionWrapper(); // action wrapper
info.lookUpField = 'lightico__contact__c';
info.recordId = '0030b00002PFJdoAAH';
info.customerEmail = 'jstarlin@email.com';
info.teamId = 1842;
info.customerName = 'Jim Starlin';
info.attachmentEnabled = true;
info.autoOpen = true;
info.sendNow = true;
info.emailSubject = 'You're invited to a Salesforce Collaboration Session';
res = ins.CreateSingleSession(info);
system.debug('Response ' + res);
Add a Workflow to a session
Action Name: AddWorkflow
Adds a Workflow to a collaboration session.
This action supports preconfigured Workflows with any of the following elements:
Paymen
Note
This action supports preconfigured Workflows with any of the following elements:
PDF Template
Dynamic Document
Tick-Box Document
Payment
Input parameters
Input class name: AddWorkflowWrapper
Parameter | Type | Description |
---|---|---|
| string | Name of the Workflow.
|
| string | Identifies the preconfigured workflow. The ID can be copied from the Workflows page in Lightico Admin center. |
| Container for the lists of documents that are in this Workflow and their properties. Use a separate list for each type of document (PDF Template, Dynamic Document, Tick-box Document). See the following parameters. | |
| PDF Templates in this Workflow and properties to define in each one. | |
| string | Name of the PDF Template. This name overrides the name in the Workflow template and appears for the customer in the collaboration session. |
| string | Identifies this PDF Template. This ID # is found in the settings tab of the PDF Template builder. |
| string | Dynamic Documents in this Workflow and properties to define in each one. |
| string | Name of the Dynamic Document. This name overrides the name in the Workflow template and appears for the customer in the collaboration session. |
| string | Identifies this Dynamic Document. This ID # is found in the HTML page of the Admin Center. |
| string | If there is a URL placeholder defined in this Dynamic Document, provide a URL address. For more information about embedded URLs in HTML documents, see Add dynamic elements to a Dynamic Document. |
| string | Tick-box Documents in this Workflow and properties to define in each one. |
| string | Name of the Tick-box Document. This name overrides the name in the Workflow template and appears for the customer in the collaboration session. |
| string | Identifies this Tick-box Document. This ID # is found in the HTML page of the Admin Center. |
| string | If there is a URL placeholder defined in this Tick-box Document, provide a URL address. For more information about embedded URLs in HTML documents, see Add dynamic elements to a Dynamic Document. |
| Container for the list of participants in this Workflow. | |
| string | Label of this participant as it appears in the Workflow template. For an explanation of labels, see Create multi-signer Workflows. |
| string | Name of the actual participant to whom you are assigning to this label for this collaboration session. |
| ||
| string | The participant’s email address. |
| string | The participant’s phone number. |
Response
Parameter | Type | Description |
---|---|---|
| string | ID of the Lightico workflow template being used. |
| string | Name of the Workflow |
| string | A list of people included in the session |
| string | see request above |
| string | see request above |
| string | see request above |
| string | Code provided by this participant to enter the session |
| string | Documents included in this Workflow See descriptions of the parameters in the response above |
| string | The unique ID for the newly created Workflow, used to reference or track it later |
Example request
// create add Workflow object
lightico.AddWorkflowWrapper request = new lightico.AddWorkflowWrapper();
request.name = 'Test Workflow';
request.workflowTemplateId = '7a7e5754-xxxx-43f0-990d-910b47959a7b';
request.documents = new lightico.Documents();
// add PDF Template
request.documents.esignDocuments = new List<lightico.EsignDocument>();
lightico.EsignDocument es = new lightico.EsignDocument();
es.name = 'Sales Contract';
es.templateId = '82a661c6-caeb-xxxx-8d1d-fd6a0eaed4c7';
request.documents.esignDocuments.Add(es);
// add participants
request.participants = new List<lightico.Participant>();
lightico.Participant p = new lightico.Participant();
p.label = 'Co-signer';
p.name = 'Walt Kelly';
p.email = 'waltk@email.com';
request.participants.Add(p);
// add Dynamic Document
request.documents.dynamicDocuments = new List<lightico.DynamicDocument>();
lightico.DynamicDocument dd = new lightico.DynamicDocument();
dd.name = 'Sales Contract 2';
dd.templateId = '4256028b-xxxx-4a34-b202-1aa35d4716b2'; //dynamic document id
dd.url = 'https://[static_url]';
request.documents.dynamicDocuments.Add(dd);
// add Tick-box Document
request.documents.tickboxDocuments = new List<lightico.TickboxDocument>();
lightico.TickboxDocument tb = new lightico.TickboxDocument();
tb.name = 'Sales Disclaimer';
tb.templateId = 'f10af005-xxxx-4582-949f-8bb8ad5ad5be'; //tickbox document id
tb.url = 'https://[static_url]';
tb.confirmationMessageText = 'confirm text';
tb.forceScrollDown = true;
request.documents.tickboxDocuments.Add(tb);
lightico.WorkflowInvoker lw = new lightico.WorkflowInvoker();
String workflowId = lw.AddWorkflowToSession(request,res.sessionId);
Add a PDF Template to a session
Action name: AddEsignToSession
Add a PDF Template to an existing session.
Input parameters
Input class name: AddEsignToSessionWrapper
Parameter | Type | Description |
---|---|---|
| string | Identifies an existing session |
| string | Identifies the document template. This ID # is found at the top left when the document template is opened in the PDF editor. |
Response
Response class name: AddEsignToSessionResponse
Parameter | Type | Description |
---|---|---|
| string | Identifies a specific eSign document within a session |
| integer | Response code, e.g. 200, 400 |
| string | Response message, e.g. OK, Error |
Add an ad hoc esign to a session
Action name: AddEsign
Add an ad hoc eSign to an existing session.
The parameters in this action use tags to position signature, initials and signature date fields in the final PDF.
Input parameters
Input class name: AddEsignWrapper
Parameter | Type | Description |
---|---|---|
| string | Identifies a Salesforce document that you are adding to the session |
| string | Identifies an existing session |
| string | Identifies the signature field position |
| string | Identifies the initials field position |
| string | Identifies the signature date field position |
| string | Name that you give to the eSign for this session. This is the name that will appear in the customer UI instead of the file name of the eSign. |
| string | Defines the role of the customer: |
Response
Response class name: AddEsignResponse
Parameter | Type | Description |
---|---|---|
| string | Identifies a specific eSign document within a session |
Add a text message to a session
Action name: AddTextMessage
Send a text message to the customer UI in a session.
The text appears in the chat field of the collaboration UI.
Input parameters
Input class name: AddTextMessageWrapper
Parameter | Type | Description |
---|---|---|
| string | Identifies the session to which you are adding this action |
| string | Text of the message you are sending. Example: |
Response
Response class name: AddTextMessageResponse
Type: Boolean
Description: true
= message sent, false
= message was not sent
Generate a document from a Lightico template
Action Name: GenerateDocumentByTemplate
Generates a PDF document based on a Lightico template and attributes mapped to Salesforce.
Input parameters
Input class name: DocumentGenerationData
Parameter | Type | Description |
---|---|---|
recordId | string | ID # of Salesforce record from which to draw the attributes. In addition, the generated PDF is saved in the Notes and Attachments section of the record. |
templateId | string | Identifies the document template. This ID # is found at the top left when the document template is opened in the PDF editor. |
hubName | string, optonal | Custom hub name for filtering events |
Response
Type: Boolean
Description: true
= success, false
= failure
Code example
Lightico_GlobalMethods lg = new Lightico_GlobalMethods();
Lightico_GlobalMethods.DocumentGenerationData data = new Lightico_GlobalMethods.DocumentGenerationData();
data.recordId = '0030b00002RounDAAR';
data.templateId = 'c8552241-f718-4ad7-8c58-e0b8323c35c3';
boolean res = lg.GenerateDocuemntByTemplate(data);
system.debug(res);
Legacy actions
Create a new session with an ad hoc eSign
Action name: CreateSessionWithEsign
Creates a new session that can include an ad hoc eSign document.
The parameters in this action use tags to postition signature, initials and signature date fields in the final PDF.
Input parameters
Input class name: CreateSessionWithEsignWrapper
Parameter | Type | Description |
---|---|---|
| string | Lightico username of the agent associated with this session |
| string | Name of the field that links the session object with another object |
| string | Identifies the signature field position |
| string | Identifies the initials field position |
| string | Identifies the signature date field position |
| string | Name that you give to the eSign for this session. This is the name that will appear in the customer UI instead of the file name of the eSign. |
| string | Defines the role of the customer: |
| string | Identifies the record from which the session will originate. |
| Boolean |
|
| string | Name of customer that is used in the session |
| string | Create an ID for this session instead of the default sessionId created by Lightico |
| Boolean | Save assets from this session in a generic object called "Attachments" instead of saving the assets in the Lightico files object |
Note: | You must include | |
| string | Customer's phone number for sending the SMS session invitation |
| string | Customer's email address for sending the session invitation |
| Boolean |
|
| string | Identifies a Salesforce document that you are adding to the session |
| string, optonal | Name of the Lightico document storage integration hub - the final document will be saved here |
Response
Response class name: CreateSessionWithEsignResponse
Parameter | Type | Description |
---|---|---|
| string | Identifies a Lightico session |
| string | Opens the customer collaboration UI |
| string | Identifies a specific eSign document within a session |
| integer | Time in took for this action to be implemented in miliseconds |