Skip to Content
🚀 Novigem 1.0 is live. Read Changelog

Rules Field Reference

This page documents all fields available when creating or editing a Rule in Novigem.

Rule Detail View

Basic Information

FieldDescription
NameThe display name of the rule. Use a clear, action-oriented name such as “New Lead Created” or “Quarterly Deal Closed”.
ChallengeThe challenge this rule contributes progress toward. Each rule is linked to a single challenge.
DescriptionExplains what behavior this rule rewards. Example: “Award points for creating a new lead.”

Trigger Configuration

FieldDescription
Salesforce ObjectThe object whose records trigger this rule. Options: Lead, Opportunity, Task, Event.
Trigger TypeWhen the rule fires: Create (new records) or Update (modified records).

For task completion, use Trigger Type “Update” with a condition checking that Status equals “Completed”.

Points Configuration

FieldDescription
Award Points ToWho receives the points. See Actor Modes below for details.
PointsThe number of points awarded when this rule matches.

Actor Modes

The Award Points To field determines which user receives the points when a rule fires. Choose the mode that best matches the behavior you want to reward.

ModeWho Gets PointsBest For
Record OwnerThe user in the record’s OwnerId fieldPipeline ownership, account management, lead follow-up
Last Modified ByThe user who made the edit that triggered the ruleData hygiene, field updates, collaborative record maintenance
Created ByThe user who originally created the recordProspecting, activity logging, lead generation

Tip: Most rules should use Record Owner. Use Last Modified By when you want to reward the person who performed the action rather than the person who owns the record. Use Created By for activity-based rules like logging calls or creating tasks.

Example scenarios:

  • A manager reassigns a lead, then the new owner updates the status: Record Owner rewards the new owner; Last Modified By also rewards the new owner (they made the edit).
  • An SDR creates a lead that is later converted by an AE: Created By rewards the SDR; Record Owner rewards whoever owns the lead at conversion time.
  • Multiple reps update opportunity fields for data cleanup: Last Modified By rewards each person for their individual edits.

Conditions

The Conditions section defines which records qualify for points. Conditions are stored as JSON and filter on fields of the selected Salesforce Object.

An empty conditions array means all records of the selected object and trigger type will match:

{ "conditions": [] }

The engine automatically prevents duplicate awards for the same action via dedupe keys. You don’t need to add conditions to prevent gaming.

Condition Structure

Each condition specifies a field, an operator, and a value:

{ "conditions": [ { "field": "StageName", "operator": "equals", "value": "Closed Won" } ] }

Multiple conditions are evaluated with AND logic by default. All must be true for the rule to match:

{ "conditions": [ { "field": "StageName", "operator": "equals", "value": "Closed Won" }, { "field": "Amount", "operator": "greaterThan", "value": "10000" } ] }

Condition Groups (OR Logic)

To use OR logic, wrap conditions in groups. Each group is evaluated with AND internally, and groups are combined with OR:

{ "logic": "OR", "groups": [ { "conditions": [ { "field": "StageName", "operator": "equals", "value": "Closed Won" } ] }, { "conditions": [ { "field": "StageName", "operator": "equals", "value": "Negotiation" }, { "field": "Amount", "operator": "greaterOrEqual", "value": "50000" } ] } ] }

This example matches opportunities that are either Closed Won or in Negotiation with an amount of $50,000+.

Relationship Fields

You can reference fields on related objects using dot notation:

{ "conditions": [ { "field": "Account.Industry", "operator": "equals", "value": "Technology" } ] }

Operators Reference

The rule engine supports 12 operators for building conditions. The Rule Builder UI shows operators relevant to the selected field type automatically.

Comparison Operators

OperatorAliasesDescriptionExample ValueWorks With
equalseq, =Field value exactly matches"Closed Won"All field types
notEqualsneq, !=Field value does not match"Closed Lost"All field types
greaterThangt, >Field value is greater than"10000"Number, Currency, Percent, Date
lessThanlt, <Field value is less than"5"Number, Currency, Percent, Date
greaterOrEqualgte, >=Field value is greater than or equal to"100"Number, Currency, Percent, Date
lessOrEquallte, <=Field value is less than or equal to"50"Number, Currency, Percent, Date

Text Operators

OperatorDescriptionExample ValueWorks With
containsField value contains the substring"renewal"Text, Text Area, Email, Phone, URL
startsWithField value starts with the string"ACME"Text, Text Area, Email, Phone, URL
endsWithField value ends with the string"Corp"Text, Text Area, Email, Phone, URL

Blank checks

OperatorDescriptionExample ValueWorks With
isBlankCheck whether a field is blank or not"true" to match blank, "false" to match non-blankAll field types

isBlank uses a boolean string value. Set it to "true" to match fields with no value, or "false" to match fields that have a value.

Change detection

OperatorDescriptionExample ValueWorks With
isChangedField value changed from its previous value"true" (default if omitted)Update trigger only

isChanged compares the field’s old and new values within an Update trigger. If the value is omitted, it defaults to true. Set it to "false" to match when the field did not change.

isChanged only works with Update trigger type. On Create triggers there is no old value, so this operator is meaningless there.

Example · Award points when the stage field changes (any change):

{ "conditions": [ { "field": "StageName", "operator": "isChanged", "value": "true" } ] }

Example · Award points when stage changes to Closed Won:

Combine isChanged with equals to detect a specific change:

{ "conditions": [ { "field": "StageName", "operator": "isChanged", "value": "true" }, { "field": "StageName", "operator": "equals", "value": "Closed Won" } ] }

Example · Award points when a previously blank field gets filled in:

{ "conditions": [ { "field": "NextStep", "operator": "isChanged", "value": "true" }, { "field": "NextStep", "operator": "isBlank", "value": "false" } ] }

Rule Status

Rules can be set to:

StatusDescription
ActiveThe rule is evaluating and awarding points.
DeactivateThe rule is ignored and never awards points.

Common Rule Patterns

Award points for creating leads

  • Salesforce Object: Lead
  • Trigger Type: Create
  • Award Points To: Record Owner

Award points for closing deals

  • Salesforce Object: Opportunity
  • Trigger Type: Update
  • Conditions: StageName isChanged = true AND StageName equals "Closed Won"

Award points for completing tasks

  • Salesforce Object: Task
  • Trigger Type: Update
  • Conditions: Status equals "Completed"

Award points for logging meetings

  • Salesforce Object: Event
  • Trigger Type: Create

Award points for high-value closed deals

  • Salesforce Object: Opportunity
  • Trigger Type: Update
  • Conditions: StageName isChanged = true AND StageName equals "Closed Won" AND Amount greaterOrEqual "50000"

Award points for updating next steps

  • Salesforce Object: Opportunity
  • Trigger Type: Update
  • Conditions: NextStep isChanged = true

Best Practices

  • Use descriptive names that explain the behavior being rewarded
  • Deactivate rules while configuring, then activate when ready
  • Choose the appropriate Actor Mode for your use case (usually Record Owner)
  • Test rules in a sandbox before activating in production
  • Combine isChanged with equals for stage-based rules to prevent points on repeated saves without actual changes
  • Combine conditions to be specific: broad rules create noise

Next Steps

Last updated on