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

# Lemlist: Patch Watchlist

> Update Signal Agent. Lemlist Patch Watchlist reference includes SDK V2 and CLI requests, input constraints, response fields, and Deepline cost.

Update Signal Agent.

<Info>
  Tool ID: `lemlist_patch_watchlist`
</Info>

## Run this action

Use the TypeScript SDK for a single call. Put `ctx.tools.execute(...)` inside a Play when the call should be durable, scheduled, or run across a CSV.

```ts theme={null}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'lemlist_patch_watchlist',
  {
    "watchListId": "watch_list_123"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={null}
deepline tools execute lemlist_patch_watchlist --input '{
  "watchListId": "watch_list_123"
}' --json
```

## Example response

The SDK exposes this shape at `result.toolResponse.raw`. Values below are representative.

```json theme={null}
{
  "data": {
    "data": {
      "_id": "_123",
      "name": "Example",
      "type": "companyIsHiring"
    }
  }
}
```

Use `deepline tools get lemlist_patch_watchlist --json` for the latest machine-readable contract.

## Input reference

Update Signal Agent

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.watchListId` | `string` | Yes | — | Signal Agent id to update |
| `payload.name` | `string` | No | — | New display name |
| `payload.filters` | `array` | No | — | Replacement filters (validated against the agent's signal type) |
| `payload.emoji` | `string` | No | — | New emoji |
| `payload.signalProcessingType` | `"manual" \| "create_opportunity" \| "push_to_campaign"` | No | — | New signal processing type Allowed: `manual`, `create_opportunity`, `push_to_campaign`. |
| `payload.personaId` | `string` | No | — | Persona (pdp\_xxx) used to source contacts from the People Database. Only for a company Signal Agent with signalProcessingType = push\_to\_campaign whose signal type does not already ship its own contact. Optional; rejected on any other configuration. |
| `payload.activate` | `boolean` | No | — | Toggle the agent status. false deactivates (pauses) it immediately. true reactivates a paused agent (triggers billing and external watcher setup). A draft cannot be toggled this way. Omit to leave the status unchanged. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Update Signal Agent",
    "properties": {
      "watchListId": {
        "type": "string",
        "description": "Signal Agent id to update"
      },
      "name": {
        "type": "string",
        "description": "New display name"
      },
      "filters": {
        "type": "array",
        "description": "Replacement filters (validated against the agent's signal type)",
        "items": {
          "type": "object",
          "description": "A filter narrowing which entities or events a Signal Agent tracks. `in` includes matching values, `out` excludes them.",
          "properties": {
            "filterId": {
              "type": "string",
              "description": "Filter identifier",
              "enum": [
                "title",
                "description",
                "location",
                "visitLocation",
                "website",
                "pagesTracked",
                "minVisitDuration",
                "minPageViewed",
                "internalTraffic",
                "linkedinUrls",
                "companyLinkedinUrls",
                "companyNames",
                "companyLocation",
                "companyIndustries",
                "companySizes",
                "maxIdentificationsPerDay",
                "excludedVisitorIps",
                "reactionTypes",
                "linkedinTopics",
                "bomboraTopics",
                "watcherWatchKey",
                "questions",
                "fundraisingMinAmount",
                "fundraisingMaxAmount",
                "fundraisingInvestmentTypes",
                "fundraisingInvestors",
                "technologies",
                "detectionMode",
                "maDealTypes",
                "maMinAmount",
                "persona",
                "customPersonaTitles",
                "externalSignalFieldMapping",
                "externalSignalCustomFieldMapping",
                "seniority",
                "crmListIds",
                "minJobCount",
                "timeframe",
                "githubRepoUrls"
              ]
            },
            "in": {
              "type": "array",
              "description": "Values to include",
              "items": {
                "type": "string"
              }
            },
            "out": {
              "type": "array",
              "description": "Values to exclude",
              "items": {
                "type": "string"
              }
            }
          },
          "required": [
            "filterId"
          ],
          "additionalProperties": false
        }
      },
      "emoji": {
        "type": "string",
        "description": "New emoji"
      },
      "signalProcessingType": {
        "type": "string",
        "description": "New signal processing type",
        "enum": [
          "manual",
          "create_opportunity",
          "push_to_campaign"
        ]
      },
      "personaId": {
        "type": "string",
        "description": "Persona (pdp_xxx) used to source contacts from the People Database. Only for a company Signal Agent with signalProcessingType = push_to_campaign whose signal type does not already ship its own contact. Optional; rejected on any other configuration."
      },
      "activate": {
        "type": "boolean",
        "description": "Toggle the agent status. false deactivates (pauses) it immediately. true reactivates a paused agent (triggers billing and external watcher setup). A draft cannot be toggled this way. Omit to leave the status unchanged."
      }
    },
    "required": [
      "watchListId"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.data` | `object` | No | — | A Signal Agent (watch list) configuration. |
| `result.data.data._id` | `string` | No | — | Unique Signal Agent identifier |
| `result.data.data.name` | `string` | No | — | Display name |
| `result.data.data.type` | `"companyIsHiring" \| "companyRaisedFunds" \| "recruitmentCampaign" \| "jobChange" \| "newHire" \| "companyEmployeeVisitedMyWebsite" \| "customSignals" \| "competitorConnections" \| "competitorReactions" \| "technologyChange" \| "linkedinPeopleProfile" \| "linkedinCompanyProfile" \| "mergersAcquisitions" \| "promotion" \| "linkedinKeywords" \| "republishedJobOffers" \| "externalSignalContact" \| "externalSignalCompany" \| "buyingIntent" \| "newProductLaunch" \| "companyAward" \| "newPartnership" \| "newOffice" \| "closingOffice" \| "costCutting" \| "outagesAndSecurityBreaches" \| "lawsuitsAndLegalIssues" \| "githubStargazer"` | No | — | Signal type monitored by this Signal Agent Allowed: `companyIsHiring`, `companyRaisedFunds`, `recruitmentCampaign`, `jobChange`, `newHire`, `companyEmployeeVisitedMyWebsite`, `customSignals`, `competitorConnections`, `competitorReactions`, `technologyChange`, `linkedinPeopleProfile`, `linkedinCompanyProfile`, `mergersAcquisitions`, `promotion`, `linkedinKeywords`, `republishedJobOffers`, `externalSignalContact`, `externalSignalCompany`, `buyingIntent`, `newProductLaunch`, `companyAward`, See the live schema for the complete constraint. |
| `result.data.data.status` | `"active" \| "inactive" \| "draft" \| "insufficient_credits" \| "empty_crm_lists" \| "error" \| "delete"` | No | — | Lifecycle status Allowed: `active`, `inactive`, `draft`, `insufficient_credits`, `empty_crm_lists`, `error`, `delete`. |
| `result.data.data.entity` | `"contact" \| "company"` | No | — | Entity kind the agent tracks Allowed: `contact`, `company`. |
| `result.data.data.segmentType` | `"all" \| "list" \| "csv"` | No | — | How the monitored entities are sourced Allowed: `all`, `list`, `csv`. |
| `result.data.data.signalProcessingType` | `"manual" \| "create_opportunity" \| "push_to_campaign"` | No | — | How detected signals are processed Allowed: `manual`, `create_opportunity`, `push_to_campaign`. |
| `result.data.data.signalOpportunityTemplate` | `object` | No | — | Task/opportunity template applied to each signal when signalProcessingType is create\_opportunity. |
| `result.data.data.signalOpportunityTemplate.ownerType` | `"contact_owner" \| "specific_owner"` | No | — | Who the created opportunity is assigned to Allowed: `contact_owner`, `specific_owner`. |
| `result.data.data.signalOpportunityTemplate.ownerId` | `string` | No | — | Owner user id, when ownerType is specific\_owner |
| `result.data.data.signalOpportunityTemplate.type` | `"email" \| "phone" \| "linkedinSend" \| "whatsappMessage" \| "manual"` | No | — | Opportunity channel Allowed: `email`, `phone`, `linkedinSend`, `whatsappMessage`, `manual`. |
| `result.data.data.signalOpportunityTemplate.priority` | `0 \| 1 \| 2` | No | — | Opportunity priority Allowed: `0`, `1`, `2`. |
| `result.data.data.signalOpportunityTemplate.data` | `object` | No | — | — |
| `result.data.data.signalOpportunityTemplate.data.title` | `string` | No | — | Opportunity title |
| `result.data.data.signalOpportunityTemplate.data.subject` | `string` | No | — | Email subject (email channel) |
| `result.data.data.signalOpportunityTemplate.data.emailTemplateId` | `string` | No | — | Email template id |
| `result.data.data.signalOpportunityTemplate.data.message` | `string` | No | — | Message body |
| `result.data.data.filters` | `array` | No | — | Filters narrowing which entities/events are tracked |
| `result.data.data.filters[].filterId` | `"title" \| "description" \| "location" \| "visitLocation" \| "website" \| "pagesTracked" \| "minVisitDuration" \| "minPageViewed" \| "internalTraffic" \| "linkedinUrls" \| "companyLinkedinUrls" \| "companyNames" \| "companyLocation" \| "companyIndustries" \| "companySizes" \| "maxIdentificationsPerDay" \| "excludedVisitorIps" \| "reactionTypes" \| "linkedinTopics" \| "bomboraTopics" \| "watcherWatchKey" \| "questions" \| "fundraisingMinAmount" \| "fundraisingMaxAmount" \| "fundraisingInvestmentTypes" \| "fundraisingInvestors" \| "technologies" \| "detectionMode" \| "maDealTypes" \| "maMinAmount" \| "persona" \| "customPersonaTitles" \| "externalSignalFieldMapping" \| "externalSignalCustomFieldMapping" \| "seniority" \| "crmListIds" \| "minJobCount" \| "timeframe" \| "githubRepoUrls"` | Yes | — | Filter identifier Allowed: `title`, `description`, `location`, `visitLocation`, `website`, `pagesTracked`, `minVisitDuration`, `minPageViewed`, `internalTraffic`, `linkedinUrls`, `companyLinkedinUrls`, `companyNames`, `companyLocation`, `companyIndustries`, `companySizes`, `maxIdentificationsPerDay`, `excludedVisitorIps`, `reactionTypes`, `linkedinTopics`, `bomboraTopics`, `watcherWatchKey`, `questions`, `fundraisingMinAmount`, `fundraisingMaxAmount`, `fundraisingInvestmentTypes`, See the live schema for the complete constraint. |
| `result.data.data.filters[].in` | `array` | No | — | Values to include |
| `result.data.data.filters[].out` | `array` | No | — | Values to exclude |
| `result.data.data.emoji` | `string` | No | — | Emoji shown next to the agent name |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "data": {
            "type": "object",
            "description": "A Signal Agent (watch list) configuration.",
            "properties": {
              "_id": {
                "type": "string",
                "description": "Unique Signal Agent identifier"
              },
              "name": {
                "type": "string",
                "description": "Display name"
              },
              "type": {
                "type": "string",
                "description": "Signal type monitored by this Signal Agent",
                "enum": [
                  "companyIsHiring",
                  "companyRaisedFunds",
                  "recruitmentCampaign",
                  "jobChange",
                  "newHire",
                  "companyEmployeeVisitedMyWebsite",
                  "customSignals",
                  "competitorConnections",
                  "competitorReactions",
                  "technologyChange",
                  "linkedinPeopleProfile",
                  "linkedinCompanyProfile",
                  "mergersAcquisitions",
                  "promotion",
                  "linkedinKeywords",
                  "republishedJobOffers",
                  "externalSignalContact",
                  "externalSignalCompany",
                  "buyingIntent",
                  "newProductLaunch",
                  "companyAward",
                  "newPartnership",
                  "newOffice",
                  "closingOffice",
                  "costCutting",
                  "outagesAndSecurityBreaches",
                  "lawsuitsAndLegalIssues",
                  "githubStargazer"
                ]
              },
              "status": {
                "type": "string",
                "description": "Lifecycle status",
                "enum": [
                  "active",
                  "inactive",
                  "draft",
                  "insufficient_credits",
                  "empty_crm_lists",
                  "error",
                  "delete"
                ]
              },
              "entity": {
                "type": "string",
                "description": "Entity kind the agent tracks",
                "enum": [
                  "contact",
                  "company"
                ]
              },
              "segmentType": {
                "type": "string",
                "description": "How the monitored entities are sourced",
                "enum": [
                  "all",
                  "list",
                  "csv"
                ]
              },
              "signalProcessingType": {
                "type": "string",
                "description": "How detected signals are processed",
                "enum": [
                  "manual",
                  "create_opportunity",
                  "push_to_campaign"
                ]
              },
              "signalOpportunityTemplate": {
                "type": "object",
                "description": "Task/opportunity template applied to each signal when signalProcessingType is create_opportunity.",
                "properties": {
                  "ownerType": {
                    "type": "string",
                    "description": "Who the created opportunity is assigned to",
                    "enum": [
                      "contact_owner",
                      "specific_owner"
                    ]
                  },
                  "ownerId": {
                    "type": "string",
                    "description": "Owner user id, when ownerType is specific_owner"
                  },
                  "type": {
                    "type": "string",
                    "description": "Opportunity channel",
                    "enum": [
                      "email",
                      "phone",
                      "linkedinSend",
                      "whatsappMessage",
                      "manual"
                    ]
                  },
                  "priority": {
                    "type": "integer",
                    "description": "Opportunity priority",
                    "enum": [
                      0,
                      1,
                      2
                    ]
                  },
                  "data": {
                    "type": "object",
                    "properties": {
                      "title": {
                        "type": "string",
                        "description": "Opportunity title"
                      },
                      "subject": {
                        "type": "string",
                        "description": "Email subject (email channel)"
                      },
                      "emailTemplateId": {
                        "type": "string",
                        "description": "Email template id"
                      },
                      "message": {
                        "type": "string",
                        "description": "Message body"
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "additionalProperties": false
              },
              "filters": {
                "type": "array",
                "description": "Filters narrowing which entities/events are tracked",
                "items": {
                  "type": "object",
                  "description": "A filter narrowing which entities or events a Signal Agent tracks. `in` includes matching values, `out` excludes them.",
                  "properties": {
                    "filterId": {
                      "type": "string",
                      "description": "Filter identifier",
                      "enum": [
                        "title",
                        "description",
                        "location",
                        "visitLocation",
                        "website",
                        "pagesTracked",
                        "minVisitDuration",
                        "minPageViewed",
                        "internalTraffic",
                        "linkedinUrls",
                        "companyLinkedinUrls",
                        "companyNames",
                        "companyLocation",
                        "companyIndustries",
                        "companySizes",
                        "maxIdentificationsPerDay",
                        "excludedVisitorIps",
                        "reactionTypes",
                        "linkedinTopics",
                        "bomboraTopics",
                        "watcherWatchKey",
                        "questions",
                        "fundraisingMinAmount",
                        "fundraisingMaxAmount",
                        "fundraisingInvestmentTypes",
                        "fundraisingInvestors",
                        "technologies",
                        "detectionMode",
                        "maDealTypes",
                        "maMinAmount",
                        "persona",
                        "customPersonaTitles",
                        "externalSignalFieldMapping",
                        "externalSignalCustomFieldMapping",
                        "seniority",
                        "crmListIds",
                        "minJobCount",
                        "timeframe",
                        "githubRepoUrls"
                      ]
                    },
                    "in": {
                      "type": "array",
                      "description": "Values to include",
                      "items": {
                        "type": "string"
                      }
                    },
                    "out": {
                      "type": "array",
                      "description": "Values to exclude",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "filterId"
                  ],
                  "additionalProperties": false
                }
              },
              "emoji": {
                "type": "string",
                "description": "Emoji shown next to the agent name"
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Lemlist provider guide](/docs/providers/lemlist/guide)
* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.