Workflow Action: Find Opportunity in Sparkforge

By Sparkforge Support Team ·Last reviewed May 3, 2026

Use the Find Opportunity workflow action to locate an existing opportunity tied to the workflow contact. Filter by any opportunity field, return the earliest or latest match, and branch differently when no opportunity is found.

The Find Opportunity workflow action looks up an existing opportunity tied to the contact who triggered the workflow. Once it finds one, every later opportunity-based action in the workflow operates on that record. If no match is found, the workflow takes a separate branch — useful for falling back to a Create Opportunity step.

How matching works

Filters use AND logic, meaning every condition has to be true for an opportunity to match. You can filter on any standard or custom opportunity field: name, status, owner, stage, custom fields, or tags. There's no cap on how many filters you can stack.

If multiple opportunities match, the action returns one record — either the Earliest (first created) or the Latest (most recently created), based on what you configure.

Action settings

FieldDescriptionRequired
Action NameCustom label for this step.Yes
Opportunity to be FoundEarliest or Latest matching opportunity.Yes
FiltersConditions used to narrow the match. AND logic, no limit.Yes
Multiple MatchesReturns one record based on Earliest/Latest setting.—
BranchingFound path or Not Found path.—

Workflows without a contact

If a workflow runs without a contact — for example, an inbound webhook that doesn't include contact data — the action can't match by contact. Map filter fields directly to webhook parameters to give the action something to search on. Without that mapping, the action will fail to locate any opportunity.

Example: form submission with deduping

Trigger: Contact submits a form on your website.

Action: Find Opportunity

  • Action Name: Locate Existing Opportunity
  • Opportunity to be Found: Latest
  • Filters: Opportunity Name contains the contact's email address AND Status is Open

Branching:

  • Opportunity Found: Continue with an Update Opportunity action to change status, add notes, or move stages.
  • Opportunity Not Found: Continue with a Create Opportunity action to add a fresh record.

This pattern keeps you from creating duplicate opportunities for the same lead while still capturing genuinely new ones.

Frequently Asked Questions

What does the Find Opportunity action return when multiple opportunities match?
One record — either the earliest (first created) or the latest (most recently created), based on the Opportunity to be Found setting. Use Latest when you want the most current state.
How does the Not Found branch work?
If no opportunity matches the filters, the workflow takes a separate Opportunity Not Found path. The most common pattern is following it with a Create Opportunity action so the workflow always ends with an opportunity in place.
Can I use Find Opportunity in a workflow without a contact?
Yes, but you have to map the filter fields directly to webhook parameters. Without a contact, the action can't search by contact ID, so the filters become the only matching mechanism.
What filter logic does the action use?
All filters use AND logic — every condition has to be true for an opportunity to match. There's no cap on how many filters you can stack, and you can filter on any standard or custom opportunity field.
When should I use Earliest versus Latest?
Use Latest when you want the most current opportunity state for the contact (typical for ongoing deals). Use Earliest when you need the original opportunity — for example, to reference the source of a long-running customer relationship.

Was this article helpful?