[dynamic_help_sidebar root="leads"]

UDS Plan Details

1. Feature Overview

UDS (Universal Data Sync) includes usage limits and restrictions based on your account’s plan.

This article will help you understand the plan details associated with the Universal Data Sync (UDS) App.

Note: To increase the limits on your current plan, contact your account manager or reach out to support@leadsquared.com. Additional charges may apply.

 

2. UDS Plan Details

To find your UDS plan details, navigate to UDS>Plan Details. All limits applicable to your account will be displayed in this section.

UDS Plan Details

The following table will give a description of each attribute –

Attribute Description
Maximum Apps Specifies the maximum number of apps that can be created.
Maximum Flows Specifies the maximum number of flows that can be created across all apps.
Return Response Card Specifies whether response customization is allowed. If enabled and the Return Response action is configured, the actions before the return card will be executed immediately, and a response will be returned. The remaining actions will be executed in a queued manner.
Max. Actions before return card Specifies the number of actions that can be configured in a flow before the return response card.
Return Request/Day Specifies the maximum number of daily request executions allowed where the return response card is configured  (to prevent overload).
Return Request/5 sec Specifies the maximum number of request executions allowed in a 5-second window, where the return response card is configured (to prevent overload).
Note: If your account reaches either the max app limit or the max flow limit, you won’t be able to create a new app.

 

FAQs

1. What is a flow?
Please refer to this article: Universal Data Sync (UDS) – Create a Data Flow.

2. Does the maximum flow limit apply across apps?
Yes, the maximum flow limit is shared across all apps.

3. What happens if I reach the maximum number of apps allowed in my plan?
You won’t be able to create additional apps unless you delete an existing one or upgrade your plan.

4. Can I purchase additional plans?
Yes, you can. Please contact your account manager to explore available options. Note that additional charges may apply.

5. Can I delete an app to free up a slot under the maximum apps limit?
Yes, deleting an app will free up a slot for a new one.

6. How many actions can I add before the return response card in a flow?
The number of actions allowed is defined by your plan’s current limits. These limits can be increased by contacting your account manager. Additional charges may apply.

7. What happens if I exceed the allowed number of actions before the return card?
You won’t be able to add more actions beyond the defined limit.

8. Are the return response limits shared across all app flows?
Yes, return response limits are shared across all flows in all apps.

9. What happens if I exceed the daily or 5-second return request limits?
An error will be returned to the API caller. If the limit is breached, the caller will receive a 429 response code, and the request will not be processed.

10. Will flows still run if the return response card limit is hit?
If the return response limit (e.g., number of API calls per day or per 5 seconds) is exceeded, flows will not process the request. A 429 error will be returned to the API caller, and the request will be rejected.

11. What happens if the return response card is disabled?
If disabled, a generic response will be returned instead. In this case, return response limits are not applicable. Actions will be processed in a queued manner.

12. Does hitting the flow or action limits affect already running flows?
No, limits are evaluated when the request is first received. If the request is accepted successfully, it will be processed regardless of subsequent usage limits.

Fallback Approval Manager Connector

1. Feature Overview

In banks and insurance agencies, approvers handle customer applications (like loans or credit cards) and claims (like health insurance). When an approver goes on planned leave, they nominate a back-up (fallback) approver to step in. The approver (going on leave) usually sends a formal email to their manager, including their leave dates, reason, and the name of the fallback approver.

This connector reads that email, creates a leave record for the user, and updates the fallback approver field (a user field in LeadSquared). Some of the benefits of this connector are –

  • Automated leave tracking – Reduces manual effort by auto-updating leave records from emails, saving time for HR managers or team leads.
  • Audit and visibility – Maintains a record of leaves and fallback assignments, which helps with auditing and ensures managers have visibility into who’s handling approvals at any point.
  • Better SLA compliance – Ensures that applications, claims, or requests continue to move through workflows without bottlenecks, helping teams meet SLA timelines even during staff absences.
  • Empowered by AI – Intelligently extract key leave details from emails using AI, including absent approver, leave duration, fallback approver, and leave reason.

LeadSquared Fallback Approval Manager

 

2. Prerequisites

  • This is a paid connector. To enable it, contact your account manager, or write to support@leadsquared.com.
  • For this connector to work as intended, install and configure the Email Sync Connector.
    • When configuring the connector, on the Advanced Settings screen, you must Disable Sync for Internal Emails. Once this setting is disabled, internal emails automatically get synced through the connector.
    • On the same screen, you must also enable the checkbox next to Capture email communication between internal users.

LeadSquared Email Sync

  • Create a custom user field titled Fallback Approver with the schema name Fallback_Approver, and the DataType set to “Text”.

LeadSquared Approval Fallback Connector

 

3. How it Works

This connector captures leave details of users and creates corresponding records on the Leave Tracker screen.

  1. After enabling the Fallback Approval Manager Connector, install and configure the user roles that need edit access.
  2. Once the connector is installed, Authentication Variables and connector flows are automatically generated to capture the fallback user’s details.
    1. On the Authentication Variables screen, no further action is required from you.
    2. On the All Flows screen, two actions are generated: Add Leave Record and Update Fallback User and Parse Data from Email. Each action includes a set of flows. Review and confirm each flow that’s listed under these actions.
  3. Once you review and save the flows, enable sync for both actions. When enabled, a webhook URL is generated for the Parse Data from Email action. Share this URL with us at appsmarketplace@leadsquared.com.
  4. After we complete the backend setup, the connector will start capturing your users’ leave details.

 

4. Install the Connector

  1. Navigate to Apps>Apps Marketplace.
  2. Search for Fallback Approval Manager, and click Install.
    • Alternatively, you can find the connector on the left panel, under Lead Capture.
  3. Once installed, hover your cursor over , and click Configure.

LeadSquared Approval Fallback Connector

 

5. Configure Fallback Approval Manager

After installing the connector, configure access for non-Admin users in your account. Only users with granted access can view and access the connector under the Apps menu.

  1. Select if you want to grant Connector Access that’s Based on Role or Advanced (User Level).
    • Based on Role – From the Specify Roles dropdown, select the LeadSquared user roles that can access the connector.
    • Advanced (User Level) – From the Advanced (User Level) dropdown, select a user boolean field. Based on the value in the selected boolean field, the user can access the connector. For example, for the user Sam, if the “Is Employee” boolean user field contains the value “Yes”, then this user can access the connector.
  2. Then, click the Create Automation Card.
  3. Once you’re done, click Save Details. To continue the configuration, refer to the sections below.
Note: By default, all Admin users will have access to the connector.

LeadSquared Approval Fallback Connector

 

6. Enable Connector Sync

6.1 Authentication Variables

After the connector is installed and configured –

  1. Navigate to Apps>Fallback Approval Manager.
  2. No action is needed on the Authentication Variables tab. All configurations are pre-set.
  3. Click the All Flows tab.

LeadSquared Fallback Approval Manager

6.2 All Flows

  1. Alongside Add Leave Record and Update Fallback user, click SIERA, and then click Edit Configurations.
  2. On the All Actions screen, under each action, click Edit Configurations, and on the Param Mapping screen, click Close or Save and Close.
  3. After you do this for all the actions listed, click Save & Next.
  4. On the Add Leave Record and Update Fallback user page, no further action is required. Click Close.
  5. Back on the All Flows page, alongside Add Leave Record and Update Fallback user, enable the slider Zoom to enable sync.
  6. Repeat the same steps for the Parse data from Email action as well, and enable sync.
Note: You must review and save each flow listed under Add Leave Record and Update Fallback User and Parse Data from Email actions. This step is mandatory.

LeadSquared Fallback Approval Manager

6.3 Share the Webhook URL

Once the sync is enabled for both the actions, a webhook URL is generated alongside Parse data from Email. Copy this URL and share it with us at appsmarketplace@leadsquared.com.

LeadSquared Fallback Approval Manager

 

7. View Leave Records and Approver Details

Once the connector is configured, you’ll be able to view the updated leave records on the Leave Tracker screen.

LeadSquared Fallback Approval Manager

To view a user’s fallback approver’s details, navigate to the Users page, and edit the details of the user who is on leave.

LeadSquared Fallback Approval Manager

 

Any Questions?

Did you find this article helpful? Please let us know any feedback you may have in the comments section below. We’d love to hear from you and help you out!

UDS Create Actions – Return Response Action

1. Feature Overview

The Return Response action allows UDS workflows to send a custom response back to the API caller. When added, all actions before it run synchronously, while actions after it are queued and processed asynchronously. This is useful when an immediate, dynamic reply is needed.

Note: For an overview on UDS actions, refer to Universal Data Sync (UDS) – Create Actions Overview.

 

2. Prerequisites

  • You must be an Administrator user, or access must be shared to you by an Admin user
  • The Universal Data Sync Connector is a paid feature. To enable it on your account, contact your account manager, or write to support@leadsquared.com.
  • Before creating actions, you must select a trigger for your data flow. For more information, see Select a Trigger.
  • There are restrictions at the account level for adding a return response card. Please refer to your Plan Details as the following conditions apply –
    • The Return Response card can only be added if it is enabled for the account.
    • The number of actions allowed before the Return Response is also defined at the account level. Only the permitted number of actions can be added before it.
    • Since actions before the return card are executed immediately, a rate limit is enforced to safeguard system performance.

 

3. Default Behavior Without Return Response Action

If a Return Response card isn’t configured, the following default behavior applies:

  1. The request is sent to UDS.
  2. UDS queues the request for processing.
  3. Based on system bandwidth, queued requests are processed asynchronously.

In such cases, UDS returns a standard response. Here’s an example:

{
"status": "SUCCESS",
"success": true,
"errors": {},
"data": "Request accepted for further processing",
"requestId": "9444df97-0c27-821f-5cc8-ee04ac8c91b7"
}

 

4. Adding Return Response Actions

All incoming data received on the webhook—including query, body, and headers—as well as the response data from all preceding actions (if response mapping is configured for those actions), can be accessed via the input object in the return response card.

input.<your_action_name> your action response variable data.

Note: 

  • You cannot access the auth variable in return response action.
  • Data returned via return response action cannot be accessed in further actions.

4.1 Return Response Action Use case

If an action in UDS creates a lead in LeadSquared, and you want to return the Lead ID from the response of the Lead Create action back to the webhook caller, you can do so using the Return Response card.

Make sure the response mapping is completed for the Lead Create action, so that its output is accessible in the return step via the input object.

How to Configure a Return Response Card

1. Add the Return Response Card

Click + Return on the Actions panel (or use the + icon) to add a Return Response card.

2. Add JavaScript Code

Write the JavaScript code that defines the response you want to send back. By default, a sample snippet is populated when you add the Return card — this returns all the data accessible to the Return Response card.

You can modify this snippet or write your own logic to customize the response.

3. Test with Sample Data

Test your code using sample input data. The input data shown is based on the sample data added during your flow configuration. You can modify the values in this data to test your logic, but:

Note: You cannot change the structure of the input data, as it will change the context of execution.

4. Ensure Test Passes

You cannot save the Return Response card unless the test executes successfully.

5. Save & Close

Once the test passes, click Save & Close to complete the configuration.

With this method, an immediate dynamic response is returned to the user.

adding return response action to UDS

Note: Action(s) added after the return card will be queued and processed asynchronously.

action added after return response

 

5. Using a Response from a Previous Action

You can configure the Return Response Action to use and return data from a previous action in the workflow. This is helpful when your UDS workflow includes intermediate steps such as API calls, data transformations, or lookups, and you want to return only specific data points back to the API caller.

For example, in a workflow with two actions:

  1. Fetch Data from a Source – Pulls data based on some predefined logic.
  2. Return Response – Sends specific fetched data back to the API caller.

To use the response from a previous action:

  • Go to the Return Response card in your workflow.
    • In the Response Configuration section, you can reference the output of a previous action using the syntax: input.<previous_action_name>
    • You can also extract specific fields using dot notation: input.<previous_action_name>.<specific_field_json_path_from_response>
    • Optionally, you can structure the response: {"response": input.<previou_action_name>.<specific_field_json_path_from_response>}

using response from action in return response card

 

6. Viewing Logs for Return Response Actions

Logs for Return Response Actions can be viewed in the Workflow Logs section of UDS. These logs help you understand how the data flows through the workflow and what is returned to the API caller.

Each execution log shows:

  • The input passed to the workflow.
  • The response returned by the Return Response action.

Example:

If you passed a name like Pandit Hari Prasad to a workflow with a Split Full Name action followed by a Return Response action:

The Return Response will show the parsed output:

{
"firstName": "Pandit",
"middleName": "Hari",
"lastName": "Prasad"
}

To validate or debug the response:

  1. Navigate to the Logs for the specific workflow. You can view logs either from the All Flows page by selecting the flow options and clicking the Logs option, or by opening a specific flow and accessing the Logs tab from within the flow details.
  2. Locate the log entry based on the timestamp or request input.
  3. Click the icon under WEBHOOK RESPONSE to view the data returned by the Return Response action.

navigate to logs for return response

 

Any Questions?

Did you find this article helpful? Please let us know any feedback you may have in the comments section below. We’d love to hear from you and help you out!

UDS Create Actions – Lead Workflow Action

1. Feature Overview

The Lead Workflow action template in Universal Data Sync (UDS) allows you to manage leads using advanced search. It searches for the lead based on the defined primary and secondary search criteria. It then performs the selected Action. This template helps you handle the dedup cases.

It supports two-level search logic using a primary and a secondary key, and based on the result, it performs the required lead operation—search, update, create, or capture—without requiring manual behavior selection.

Internally, this template can invoke 2 to 3 LeadSquared V2 API calls per execution. It is designed to simplify lead handling logic that would otherwise require multiple chained actions.

Note:

  • Where this action should be used?
    1. Your lead volume is less as it consumes min 2 and max 3 v2 API calls internally.
    2. You want to handle dedupe cases basis any two unique lead fields within a single action.
  • For an overview on UDS actions, refer to Universal Data Sync (UDS) – Create Actions Overview.

 

2. Use Case

Use this template when:

  • You want to avoid duplicate lead creation by checking two unique fields (e.g., Email + Phone)
  • You want a single action to handle both existing and new leads

2.1 Logic Summary

Here’s how the Lead Workflow logic works:

  1. Search by Primary Key
  2. If not found → Search by Secondary Key
  3. If lead is found → Update the lead
  4. If lead is not found → Create a new lead

This flow ensures deduplication using two identifiers, and removes the need for manual branching.

 

3. Configure Lead Workflow Action

1. Select Template

Click +Action and select the Lead Workflow template from the available list.

uds create actions lead capture navigation

2. Select Behavior

Choose a Behavior, which defines what action will be performed after the search:

Behavior Description
Lead Search Retrieve lead details using primary and secondary keys. No changes are made.
Lead Capture If lead is found, update it. If not, create a new lead.
Lead Create Create a new lead if none exists. No update is performed.
Lead Update Update an existing lead if found; no lead is created.
uds actions lead workflow select behaviour

3. Configure Field Mapping

3.1 Set Search Keys

  • Primary Search Key – Used as the first identifier to search for an existing lead (e.g., Email)
  • Secondary Search Key – Used as a fallback if the primary key does not return a match (e.g., Phone)

If no lead is found with either key, a new lead is created. If a lead is found, the system updates it.

3.2 Map Lead Fields

Map all the fields you want to update or create in the lead record.

You can do that by selecting the desired Lead fields from the dropdown. Click on + icon, select Entity as Lead, and select the desired field from the dropdown.

This can include:

  • Standard fields (e.g., First Name, Email, Phone)
  • Custom fields
  • Static values or formula-based transformations

uds actions lead capture field mapping

4. Configure Response Mapping (Optional)

Capture and reuse response values such as: LeadId, Status, or Message

These can be passed to downstream actions or used in conditions or audits.

uds actions lead capture success error mapping

 

FAQs

1. What credentials are used?
All API calls are authenticated using the system user credential.

2. Do API limits apply?
Yes. Each execution may result in 2 to 3 internal API calls, counted against your:

  • Daily V2 API quota
  • 5-second burst rate limit

3. What if both keys fail to find a lead?
A new lead is created using the mapped fields.

4. Can I leave the secondary key blank?
Yes. The secondary key is optional. If only the primary is defined, only one search is attempted before a lead is created.

5. What if a lead is found?
The system updates the lead using the field mappings provided.

6. Are errors returned as-is?
Yes. All standard LeadSquared V2 API errors are returned directly. Refer to the V2 API Reference for definitions.

7. Is this template suitable for bulk sync?
This template is best suited for low to moderate volume data syncs, since each execution consumes multiple API calls.

UDS Create Actions – Lead Create Action

1. Feature Overview

The Lead Create action template in Universal Data Sync (UDS) App enables you to create new leads in LeadSquared.

This template leverages the LeadSquared V2 Create a Lead API and eliminates the need for manual API configuration.

Note: For an overview on UDS actions, refer to Universal Data Sync (UDS) – Create Actions Overview.

 

2. Use Case

You want to create a lead in LeadSquared for every incoming request.

 

3. Configure Create a Lead Action

Follow the steps below to configure Create a Lead action –

1. Select Template

Click +Action and choose the Lead Create template.

navigate to create a lead action on uds

2. Select Behavior

In this step, the values will be pre-configured as follows:

  • Source – LeadSquared
  • Entity – Lead
  • Action – Lead Create

lead create select behavior

3. Configure Field Mapping

Map your source fields (from your data source or app) to the appropriate LeadSquared lead fields.

You can do that by selecting the desired Lead fields from the dropdown. Click on + icon, select Entity as Lead, and select the desired field from the dropdown.

For example:

  • First Name → lead.FirstName
  • Email → lead.EmailAddress
  • Phone → lead.Phone
  • Custom fields (Such as address proof) → Corresponding custom lead fields

map variables for create a lead action

Note: You can optionally set static values or use formulas for field transformations.

configure static values and transformation in lead create action

 4. Configure Response Mapping (Optional)

Use this step if you want to:

  • Capture the newly created LeadId and pass it to downstream actions.
  • Handle API success/failure logic conditionally.

Define the fields you want to extract (e.g., `LeadId`, `Status`, `Message`) and mark what should be considered a successful or failed execution.

success and response mapping for lead create action

 

FAQs

1. What credentials are used for making API calls via this system?
API calls made through Lead Action template will use system user credential for authentication.

2. Do these API calls count toward any rate limits?

Yes. API calls made via this template are counted against your v2 API usage limits. Specifically:

  • Daily Limit: All calls contribute to your daily quota.
  • Per 5-Second Limit: Calls also count toward the burst limit of requests allowed every 5 seconds.

3. What happens if I exceed the API rate limits?
If you exceed either the daily or per-5-second limits, further API requests will be rejected until your usage falls within the allowed limits.

4. What are the error scenarios defined
Since we directly call Platform v2 APIs inside the Lead Action template, all standard v2 API error responses will be returned as it is. Refer to the API Reference for error codes.

UDS Create Actions – Lead Update Action

1. Feature Overview

The Lead Update action template in UDS allows you to update existing leads in LeadSquared using the Lead ID or Prospect ID.

This template leverages the LeadSquared V2 Update a Lead API.

Note: For an overview on UDS actions, refer to Universal Data Sync (UDS) – Create Actions Overview.

 

2. Use Case

Use this template when you need to update fields of an existing lead using a known Lead ID.

 

3. Configure Lead Update Action

Follow the steps below to configure Update a Lead action –

1. Select Template

Click +Action and choose the Lead Update template.

navigate to update a lead uds

2. Select Behavior

In this step, the values will be pre-configured as follows:

  • Source – LeadSquared
  • Entity – Lead
  • Action – Lead Update

lead update select behaviour

3. Configure Field Mapping

Map fields from your source to LeadSquared fields.

You can do that by selecting the desired Lead fields from the dropdown. Click on + icon, select Entity as Lead, and select the desired field from the dropdown.

You must provide:

  • LeadId or ProspectId as a mandatory identifier
  • Fields to be updated (e.g., lead.EmailAddress, lead.Phone)

uds action update lead field mapping

Note: You can optionally set static values or use formulas for field transformations.

configure static values and transformation in lead create action

4. Configure Response Mapping (Optional)

Capture and use response values such as Status, Message, etc. 
You can also set logic to handle success/failure scenarios based on API responses.

uds actions lead update success error mapping

FAQs

1. What credentials are used?
System user credentials are used to make API calls.

2. Are API limits applicable?
Yes. API usage counts toward your daily and burst rate limits for LeadSquared V2 APIs.

3. What happens if limits are exceeded?
Further requests will be rejected until usage normalizes.

4. What errors should I expect?
Standard LeadSquared V2 API errors will be returned. Refer to the API Reference for error codes.

UDS Create Actions – Lead Capture Action

1. Feature Overview

The Lead Capture action template in Universal Data Sync (UDS) allows you to either create a new lead or update an existing one based on a defined search key.

This template uses the LeadSquared V2 Lead.Capture API, eliminating the need for manual API setup.

Note: For an overview on UDS actions, refer to Universal Data Sync (UDS) – Create Actions Overview.

 

2. Use Case

Use this template when you want to:

  • Update an existing lead in LeadSquared if it matches a specific field value (such as Email or Phone),
  • Or create a new lead if no existing lead is found with that value.

This helps ensure that duplicate leads are not created when the same contact enters the system more than once.

 

3. Configure Lead Capture Action

1. Select Template

Click +Action and choose the Lead Capture template.

uds create actions lead capture navigation

2. Select Behavior

When a lead is found using the search key, use the Capture Behavior setting to define how the existing lead should be updated:

  • Do Not Update – The lead will not be modified even if it is found.
  • Update Only Empty Fields – Only fields that are currently blank in the lead record will be updated.
  • Do Not Update Unique Fields – All fields except those marked as unique will be updated.
  • None – No special update rule; the lead will be updated as per the mapped fields.

This setting provides control over how existing data is handled during capture, helping to avoid unwanted overwrites.

uds actions lead chapture behavior

3. Configure Field Mapping

Map source fields to LeadSquared lead fields.

You can do that by selecting the desired Lead fields from the dropdown. Click on + icon, select Entity as Lead, and select the desired field from the dropdown.

For example:

  • Email → lead.EmailAddress
  • Phone → lead.Phone
  • Custom fields → relevant lead fields

Specify a search key field (e.g., Email or Phone) that will be used to find existing leads.

uds actions lead capture field mapping

Note: You can optionally set static values or use formulas for field transformations.

configure static values and transformation in lead create action

4. Configure Response Mapping (Optional)

Capture output fields such as LeadId, Status, or Message. You can also define conditions for success/failure based on API response.

uds actions lead capture success error mapping

 

FAQs

1. What credentials are used?
System user credentials are used to make API calls.

2. Are API limits applicable?
Yes. These calls are counted toward your LeadSquared V2 API limits (daily and 5-second burst).

3. What happens if limits are exceeded?
API requests will be rejected until your usage is back within limits.

4. What errors should I expect?
Standard V2 API errors will be returned. See the LeadSquared V2 API Reference for details.

Universal Data Sync (UDS) – Logs

1. Feature Overview

The Logs feature in Universal Data Sync (UDS) allows you to monitor and troubleshoot the execution of your data sync flows. It provides complete visibility into the input requests, action-wise execution paths, transformation outcomes, and response payloads.

Each log entry reflects a unique request processed by a UDS flow and helps you:

  • Understand how each step in the flow was executed.
  • Identify failed or skipped actions.
  • Debug input-output mappings and transformations.
  • Track API return responses.

Key highlights:

  • Logs are stored for 90 days.
  • You can filter logs by flow name and its date range.
  • All request and action statuses are recorded.

uds logs overview

 

2. Prerequisites

  • You must be an Administrator user, or access must be shared to you by an Admin user
  • The Universal Data Sync Connector is a paid feature. To enable it on your account, contact your account manager, or write to support@leadsquared.com.

 

3. Use Case

Let’s say you’ve configured a flow that fetches data from a database and returns it via an API. You want to:

  • Confirm if the data was fetched correctly.
  • Check if transformations were applied properly.
  • Ensure the correct data was sent in the response.

Using the logs, you can trace each action that was executed, verify the output at each stage, and understand exactly what was returned to the caller.

 

4. Accessing Logs

You can access logs from:

  • The All Flows screen (click the three-dot menu next to a flow>Logs).
  • The individual Flow Details page (click the Logs tab).

navigating to uds action logs

Logs are grouped by flow and are filterable by date and time.

Note: You can also navigate across other flows within the same app by selecting the flow name from the top-left dropdown.

filtering uds logs

 

5. Understanding Log Details

At the top of the logs page, you’ll see a summary section that displays:

  • Total number of events – Total requests received or sent on UDS.
  • Queued Requests – Total requests that are in progress or are scheduled for delayed time due to set rate limit.
  • Successful Requests – Total requests that were successfully processed or intentionally skipped according to set conditions.
  • Error Requests – Total requests that encountered general errors, partial errors, complete failures, or were invalid due to incorrect or incomplete data.

This summary auto-updates when you adjust the date range.

Each individual log entry includes:

  • Request ID/Sync Job ID
  • Status for each request
  • Execution Timeline
  • Status for each action
  • Return Response (if applicable)*

*Return Response Actions are not visible as separate log steps, but their responses are logged in the output.

Note: By default, UDS logs can only be searched using a Request ID, making it difficult to trace business-critical records and slowing down investigations. Logger Parameters address this by allowing up to three custom key-value pairs (like Loan ID, Applicant ID, or Phone Number) to be logged alongside the Request ID. For more information, refer to Logger Parameters in UDS.

understanding uds logs details

 

6. Execution Statuses

6.1 Request-level Status Definitions

Each UDS log entry includes a request-level status that summarizes the outcome of all actions executed in a flow. Here’s what each status means:

Status Type Definition
Queued The request was accepted and is waiting in the queue to be processed.
Success The request was accepted, and all actions were processed with statuses marked as either Success or Skipped, with at least one action marked as Success.
Skipped The request was accepted, and all actions were processed with a status of Skipped.
Invalid The request was accepted, but at least one action was marked as Invalid due to missing or malformed input variables.
Failed The request was not accepted, and the webhook response was returned as an Error (e.g., due to rate limits, invalid authentication, etc.).
Partial Error The request was accepted, with at least one action marked as Success or Skipped, and at least one action marked as Error.
Error The request was accepted, and all actions were processed with a status of Error.
Rejected The request was rejected due to exceeding the maximum number of requests defined in the trigger’s advanced configuration.

These statuses help you quickly identify whether a request completed successfully or encountered issues during processing.

6.2 Action-level Statuses

Each action in a flow also logs an individual status:

  • Success – Action completed without errors.
  • Invalid – Input values or configurations were missing or incorrect.
  • Error – The action failed during execution.
  • Skipped – Action did not run due to conditional logic or data absence.
Note: If an action is rejected (e.g., by a third-party API), it’s treated as an Error within the UDS platform.

 

Any Questions?

Did you find this article helpful? Please let us know any feedback you may have in the comments section below. We’d love to hear from you and help you out!

Join Data Sources on SIERA Report Builder

1. Feature Overview

The SIERA Report Builder supports advanced data modeling capabilities through Joins and Sub-Query Joins. These features allow users to combine multiple data sources, apply cross-entity filters, and build complex expressions across nested queries.

  • Use Joins to merge fields across related entities such as Leads, Tasks, Activities, Opportunities, and more.
  • Use Sub-Query Joins to go a step further—filter, aggregate, and group data within independent sub-queries before linking the result to the main report.

This article covers both standard joins and the sub-query join capability, with practical examples and configuration steps.

 

2. Prerequisites

 

3. Join Functionality

SIERA Report Builder allows you to combine data from multiple entities using the Join feature. This is useful for generating consolidated reports across related data sources like Leads, Opportunities, Tasks, Activities, etc.

There are four types of joins available:

  • Left Outer Join: Returns all records from the left entity and matching records from the right.
  • Inner Join: Returns only records that match in both entities.
  • Right Outer Join: Returns all records from the right entity and matching records from the left.
  • Full Outer Join: Returns all records where there’s a match in either entity.

Use-Case

Here are some common use cases for SIERA’s Join feature –

Use Case Tables/Data Sources Join Join Condition Expected Output
Find all closed-won opportunities and their associated accounts.
  • Opportunities (Opportunity ID, Name, Account ID, Status, Amount)
  • Accounts (Account ID, Account Name, Industry)
Inner Join
Opportunities INNER JOIN Accounts ON Opportunities.AccountID = Accounts.AccountID
Lists only won opportunities along with the associated account details.
Show all tasks, even those not assigned to a user.
  • Tasks (Task ID, Title, Due Date, Assigned User ID)
  • Users (User ID, Name, Role)
Left Join
Tasks LEFT JOIN Users ON Tasks.AssignedUserID = Users.UserID
  • Includes all tasks.
  • Tasks without assigned users will have NULL values in the “AssignedUser” column.
Show all contacts, even if they haven’t attended a meeting.
  • Meetings (Meeting ID, Subject, Contact ID, Date)
  • Contacts (Contact ID, Name, Email, Company)
Right Join
Meetings RIGHT JOIN Contacts ON Meetings.RelatedProspectId = Contacts.RelatedProspectId
  • Every contact appears in the report.
  • Contacts who haven’t attended any meetings will have NULL values for meetings.
Get a full view of all invoices and payments, including unpaid invoices and orphaned payments.
  • Invoices (Invoice ID, Customer ID, Amount, Due Date)
  • Payments (Payment ID, Invoice ID, Amount Paid, Payment Date)
Full Outer Join
Invoices FULL OUTER JOIN Payments ON Invoices.RelatedProspectId = Payments.RelatedProspectId
  • Includes all invoices, whether paid or unpaid.
  • Includes all payments, even if they aren’t linked to an invoice.

4. Creating a Join

For example, When you use a Left Outer Join between Leads and Activities, it retrieves all Leads that match a filter (e.g., Created On) but only includes Activities linked to these specific leads:

  1. Click the edit icon icon against Data Source.
  2. Click the Add icon icon.
  3. Select the Join as: Leads Left Outer Join with All Activites.
  4. The On function would be: ProspectID = RelatedProspectID.
    • Here, we are matching the lead ID stored as ProspectID in the Lead Data Source with the lead ID stored as RelatedProspectID in the Activity Data Source. This ensures that activities are correctly associated with their respective leads. For more details on Report Builder Data Sourcesrefer to this article.
  5. Click Save.

Now, you can add the related activity fields to your report.

Note:

  • You can create up to three joins between different entities.
  • Once an entity is joined, you can also utilize its related fields to build custom values, enabling more refined data analysis and reporting.

Report builder data sources

 

5. Data Source Join Fields for Accurate Data Retrieval

This table illustrates the appropriate join fields for different data sources to ensure accurate data retrieval.

Data Source 1 Data Source 2 Join Field for Data Source 1 Join Field for Data Source 2 Comments
Leads Activities/ Custom Activity
ProspectID
RelatedProspectId
Leads Opportunity/ Custom Opportunity
ProspectID
RelatedProspectId
Leads Task/ Custom Task
ProspectID
RelatedEntityId
Leads LandingPage
RelatedLandingPageId
WebContentId
Leads Accounts/ Custom Accounts
RelatedCompanyId
CompanyId
Leads AccountsActivity/ Custom AccountsActivity
RelatedCompanyId
RelatedCompanyId
All Activities/ Custom Activities Opportunity/ Custom Opportunity
OpportunityProspectActivityId
ProspectActivityId
All Activities/ Custom Activities LandingPage
RelatedLandingPageId
WebContentId
All Activities/ Custom Activities Task/ Custom Task
OpportunityProspectActivityId
OpportunityProspectActivityId
If Activity & Task are performed on the Opportunity.
OpportunityRelatedProspectId
OpportunityRelatedProspectId
If Activity & Task are performed on the Lead.
RelatedProspectId
RelatedEntityId
If Opportunity is not enabled.
Opportunity/ Custom Opportunity Task/ Custom Task
ProspectActivityId
OpportunityProspectActivityId
Opportunity/ Custom Opportunity LandingPage
RelatedLandingPageId
WebContentId
Accounts/ Custom Accounts AccountsActivity/ Custom AccountsActivity
CompanyId
RelatedCompanyId

 

6. Sub-Query Joins (Advanced Joins)

Sub-Query Joins allow you to nest an entire query within your main report, enabling you to group, filter, and aggregate data across multiple entities before joining it back to the primary data source. This unlocks advanced reporting use cases that aren’t possible with standard joins—such as applying multi-stage filters, custom expressions, or deep aggregations across related datasets.

 Key capabilities

  • Up to three joins per sub-query.
  • Use filters, aggregations, and custom expressions inside sub-queries.
  • Join a sub-query back to the main report.
  • Use sub-query expressions in the main report (e.g., date differences).
  • Supports pagination to limit data returned from sub-queries.
  • Custom columns are also available in sub-queries.

Use Cases

Here are some use-cases for the Sub-Query feature –

  • Visitor to Customer Analysis: Analyze how many website visitors convert into customers, segmented by source.
  • Time Taken to Win a Customer: Calculate the time difference between lead creation to conversion date.
  • Leads With and Without Activities: Count leads with at least one activity and leads with no activities.

 

7. Rules for Creating a Sub-Query

  • A sub-query can include grouping, which can be used to join with another sub-query or the root query. The grouped field becomes available for use in the next step (if applicable).
  • A sub-query may exclude grouping, allowing it to be used as a NOT IN query.
  • A sub-query can include joins, meaning it can join with one or more tables or other queries.
  • A sub-query can include filters, which may appear in additional filters or as report-level filters based on configuration.
  • A sub-query can include measures, which can be reused in other queries and will become fields in subsequent steps (if applicable).

 

8. Creating a Sub Query Join

Let’s walk through a real example: counting leads with at least one activity and leads with no activities.

Example Use Case: Leads With and Without Activities

Configuration Steps

  1. Edit the Data Source: From the main report builder, click the Edit icon next to your data source.
  2. Create a New Query: Click New Query to define a sub-query. This query will process the necessary joins and aggregations.
  3. Set Up Sub-Query Layers: Create the following sub-queries:
    • Query 2 (Leads Layer): Select the Leads data source.
    • Group by:
      • Owner
      • Prospect ID
    • Query 3 (Activities Layer): Select the All Activities data source.
    • Group by:
      • ActivityId
      • RelatedProspectId
      • ActivityEvent
  4. Query 1 (Join Layer): Join Query 2 (Leads) with Query 3 (Activities).
    • Join Type: Left Join
    • Join Condition: Prospect ID = RelatedProspectID
    • Group Query 1 by:
      • Owner
      • Prospect ID
    • Create Custom Expressions in the Query to count activities
      • Activity Count: CountDistinctIf(`Query 3.ActivityId`, `Query 3.ActivityId` != '')
  5. Click Save.

Creating subquery join

Use Query Output in the Main Builder

In the main custom expression builder, use the following expressions to segment leads:

  • Leads With Activities: CountDistinctIf(`Query 1.Prospect ID`, `Query 1.Activity Count` > 0)
  • Leads Without Activities: CountDistinctIf(`Query 1.Prospect ID`, `Query 1.Activity Count` < 1)

These expressions reference data already grouped and aggregated in the sub-query, making them far more powerful than what is possible using basic joins alone.

show activities for sub query join in expressions

 

Any Questions?

Did you find this article helpful? Please let us know any feedback you may have in the comments section below. We’d love to hear from you and help you out!