Skip to main content
Conga Support

Using a Custom Object as an Initiator's Monitored Object

Definition Initiators allow you to take process execution to the next level. When setting up an Initiator, tell Conga Orchestrate what Object, which Operations on that Object you desire to monitor, as well as the conditions that should be met in order for a process record to be created. Initiators create the process object record and runs the process you've defined. Read more About Definition Initiators.

To allow Initiators to monitor your custom object, follow one of the two methods below to deploy the necessary trigger.

Use Conga Orchestrate Configuration Assistant:

  If your custom object is complex and utilizes universally required fields or has more than one master-detail relationship, then the Configuration Assistant will not work properly. Please use the instructions in the Manually Deploy Necessary Trigger section below.

  1. Create a Lookup relationship field from the Process Object (i.e. Business Process, Case, etc.) to your custom object.
  2. Ensure your custom object has a Lookup field to the Contact object, and note the API name of the field. If not, create the Lookup field and make note of its API name.
  3. Optional: Create a formula field with the label OwnerId so that the API name is ownerid__c. This field is optional and only needs to be created if your custom object is the detail record in a master-detail relationship. The formula field should retrieve the OwnerId from the master object. The structure of the field will depend on how the relationship is named. For example, if your object is related to the account object through a master detail the formula is: Business_Account__r.OwnerId.
  4. Navigate to the Conga Orchestrate Setup tab.
  5. Under the Advanced Setup section of Conga Orchestrate Setup page click Initiators.
  6. Scroll down to the Configure a Custom Object as an Initiator's Monitored Object section of the page.
  7. Confirm the fields in steps 1-3 above have been created.
  8. Select your custom object from the Custom Object dropdown.
  9. Choose the Contact Lookup Field that the initiator should relate to the process object when a process initiates.
  10. Click the Save button.
  11. You will be redirected to the Deployment Status page in Setup to confirm the deployment was successful.

These setup steps will automatically create the trigger needed for Initiators to function properly as well as update the necessary Conga Orchestrate Setup settings.

Manually Deploy Necessary Trigger:
  1. Create a Lookup Relationship field from the Process Object (i.e. Business Process, Case, etc.) to your custom object.
  2. Ensure that your custom object has a Lookup field to the Contact object. If so, note the API name of the field. If not, create it and make note of the API name.
  3. Optional: Create a formula field with the label OwnerId so that the API name is ownerid__c. This field is optional and only needs to be created if your custom object is the detail record in a master-detail relationship. The formula field should retrieve the OwnerId from the master object. The structure of the field will be dependent on how the relationship is named. For example, if your object is related to the account object through a master detail the formula is: Business_Account__r.OwnerId.
  4. Edit the Conga Orchestrate Setup setting labeled "Initiator Custom Object - Contact Field" with the API name of your custom object followed by a colon (:) and the API name of the field in step 3 (ex. Custom_Object__c:Contact_Field__c). If there are multiple objects, separate each object:fieldname pair with semicolons.
  5. Edit the Conga Orchestrate Setup setting labeled "Initiator Custom Objects" with the API name of your custom object. If there are multiple objects, separate each with semicolons.
    clipboard_e63844c2f703a3200dc369d2e86c38a40.png
  6. In a sandbox environment, create a trigger and test class and then migrate them to your production org.

    trigger CustomObjectTrigger on CustomObjectAPIName(after insert, after update) {
        string operation = Trigger.isUpdate ? 'Update' : 'Insert';
        FSTR.ProcessComposerInitiatorUtils.EvaluateInitiators(Trigger.oldMap, Trigger.newMap, operation);
    }

    1. Create a trigger for the custom object. Change the highlighted items in yellow to the custom object name:
    2. Create a Test Class to test the trigger. It can be similar to the linked example, but you need to create a record that matches the custom object.

Once you have configured your custom object utilizing one of the methods listed above, you can navigate to the Definition Initiators tab and create a new initiator. Your custom object displays as an option in the Monitored Object list.