> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useparagon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaign Opportunity Added

> Trigger when an opportunity is added to a campaign

## Subscribe

Send this request body to [Subscribe to a Trigger](/actionkit/triggers/api-reference/subscribe-to-trigger) to start listening for this event on behalf of your user:

```http Subscribe Request theme={null}
POST https://actionkit.useparagon.com/projects/{project_id}/trigger-subscriptions

Authorization: Bearer {Paragon User Token}
Content-Type: application/json

{
  "integration": "salesforce",
  "type": "SALESFORCE_TRIGGER_CAMPAIGN_OPPORTUNITY_ADDED",
  "parameters": {
    "campaignId": "{{settings.campaign}}",
    "filterFormula": "filter by column"
  }
}
```

**Configuration options:**

<ParamField path="campaignId" type="TEXTAREA" required>
  The campaign to watch for new Campaign Members. Use Connect Portal Workflow Settings to allow users to select a campaign.

  * Example value: `{{settings.campaign}}`
</ParamField>

<ParamField path="filterFormula" type="CONDITIONAL">
  Only trigger on records that match these filters.

  * Example value: `filter by column`
  * Supported filter fields: `Id`, `Name`, `ContactId`, `StageName`, `Probability`, `Type`
  * Supported operators: `$none`, `$stringContains`, `$stringDoesNotContain`, `$stringExactlyMatches`, `$stringDoesNotExactlyMatch`, `$stringIsIn`, `$stringIsNotIn`, `$stringStartsWith`, `$stringDoesNotStartWith`, `$stringEndsWith`, `$stringDoesNotEndWith`, `$numberGreaterThan`, `$numberLessThan`, `$numberEquals`, `$numberDoesNotEqual`, `$dateTimeAfter`, `$dateTimeBefore`, `$dateTimeEquals`, `$booleanTrue`, `$booleanFalse`, `$exists`, `$doesNotExist`
</ParamField>
