This page documents the canonical HTTP contract for this endpoint.
Developer keys need signals:read and signals:run and signals:write, or the complete legacy combination of companies:read and companies:write and leads:read and search:run. Signals scopes do not grant general CRM or Search access.
This reference describes the Signals discovery-monitor contract. Check the selected server’s capabilities and Signals catalog for supported sources, criteria, cadences and current billing. API availability does not enable monitoring or establish provider readiness, completed collection or delivered Signals.
For LinkedIn posts, send a complete criteria object with keywordPhrases and all industry/author filters you want to retain. The phrase list determines the compiled keywords. To retain an existing raw Boolean query, omit keywordPhrases and send its unchanged keywords value. There is no posted-date or lookback input for LinkedIn post discovery; changing frequency changes the check cadence.
Read the current monitor revision before updating. The source cannot be changed. Supplied criteria replace the entire criteria object and must validate against the source schema; omitted top-level fields remain unchanged. Explicit null top-level fields are rejected. Inside replacement Job changes criteria, maxCandidates:null and maxCreditsPerCheck:null remove the respective user cap; omitted nested fields take current source defaults. A remaining numeric credit ceiling can still constrain a null candidate cap. At least one role, department or seniority remains required. Jobs use providerSelection="automatic" by default; read the create reference and deployed criteria schema for native filter compatibility. A successful update increments revision and returns run=null.
An edit invalidates work from the older revision. Changing criteria resets collection coverage for future work without deleting saved Signals. Job changes criteria/cadence changes also clear the prior lastCollectionSummary. Set enabled=false to pause. This cancels queued/running work owned by the prior monitor revision, clears active-run and next-run scheduling, and preserves completed Signals. Collection checkpoints are retained when criteria are unchanged; a combined pause and criteria replacement clears the old checkpoint. A provider HTTP request already in flight cannot be recalled. Set enabled=true to resume. Enabling or changing active work schedules the next due check, can spend credits, and is not an immediate completed run. To request an explicit check, call Run monitor with the newly returned revision. A failed revision check does not silently overwrite another edit.
Command Center can prepare a native approval plan with update_signal_discovery_monitor to edit the name, complete criteria, cadence or enabled state. Pause and resume use this same update command and current revision; the approval must describe paid scheduling when enabling work. Check the selected runtime for this native binding. Preview, explicit Run and Save person remain API-only mutations, and CLI source 0.2.126 provides autotouch signals update-discovery-monitor, pause-discovery-monitor and resume-discovery-monitor. Pass the exact --monitor-id and current --expected-revision, or equivalent JSON fields. Pause/resume sends only expectedRevision and enabled, preserving omitted criteria. Conflicts are returned without automatic rereading or retry. Package publication and backend deployment are separate from source support.
Job monitor windows and employment types
For source=jobs, frequency=daily is the default and selects a past-day search; weekly selects the past seven days. The same window applies to preview, create, update and fresh scheduled checks. Omit the deprecated datePosted and linkedinDateRestrict inputs: they do not override monitor frequency.
Automatic routing can use Indeed, Google Jobs and LinkedIn when the other filters are compatible. Google Jobs uses its native posting-date filter. LinkedIn uses Scrappa’s Google-based search-date restriction, which is not an independently verified job-posting cutoff. Indeed checks returned posting dates before preview or delivery and excludes old, future, missing or unreadable dates; first-seen time never substitutes for posting time. Indeed requests date sorting unless another sort was saved, and still pages past old rows within bounded batches. Glassdoor has no supported lookback and is excluded from automatic date-window searches.
Omit jobType or use an empty string for Any job type. Current filters are part_time, contract, internship and remote. Legacy full_time/fulltime values are unrestricted. Paid continuation batches keep their saved search, date bounds and cursors; fresh checks use the current cadence. Selected-server deployment is separate from CLI 0.2.127 and these source-contract docs; inspect its catalog before relying on new behavior.
Path parameters
monitor_idrequiredstring
Exact discovery monitor ID returned by create/list, in the authenticated organization; 1–256 characters.
| Name | Type | Description |
|---|---|---|
| monitor_idrequired | string | Exact discovery monitor ID returned by create/list, in the authenticated organization; 1–256 characters. |
Body parameters
expectedRevisionrequiredinteger
Current saved revision, at least 1. Reload monitor status after a 409.
name· optionalstring
Replacement trimmed name, 1–120 characters.
criteria· optionalobject
Complete replacement source-specific criteria, not a nested partial merge. Include every filter to retain. For LinkedIn posts, keywordPhrases compiles to a quoted OR query; omit it to preserve a raw keywords query.
frequency· optionalstring
Jobs: daily (default) searches the past day; weekly searches the past seven days, using each source’s date semantics. Job changes: daily/weekly, default weekly. LinkedIn posts: hourly/daily/weekly polling, default daily, with no post lookback. FDA activity: weekly only (default), matching FDA's weekly publication. SEC filings: daily or weekly, default weekly; checks read the last 2 or 8 days.
enabled· optionalboolean
False pauses and cancels queued/running work owned by the prior revision while preserving saved Signals and unchanged-criteria checkpoints; true enables future scheduling and can spend credits.
maxResults· optionalinteger|null
Deprecated cap, ignored. Explicit null fields are rejected by the update command.
| Name | Type | Description |
|---|---|---|
| expectedRevisionrequired | integer | Current saved revision, at least 1. Reload monitor status after a 409. |
| name | string | Replacement trimmed name, 1–120 characters. |
| criteria | object | Complete replacement source-specific criteria, not a nested partial merge. Include every filter to retain. For LinkedIn posts, keywordPhrases compiles to a quoted OR query; omit it to preserve a raw keywords query. |
| frequency | string | Jobs: daily (default) searches the past day; weekly searches the past seven days, using each source’s date semantics. Job changes: daily/weekly, default weekly. LinkedIn posts: hourly/daily/weekly polling, default daily, with no post lookback. FDA activity: weekly only (default), matching FDA's weekly publication. SEC filings: daily or weekly, default weekly; checks read the last 2 or 8 days. |
| enabled | boolean | False pauses and cancels queued/running work owned by the prior revision while preserving saved Signals and unchanged-criteria checkpoints; true enables future scheduling and can spend credits. |
| maxResults | integer|null | Deprecated cap, ignored. Explicit null fields are rejected by the update command. |
Errors
| Status | Meaning |
|---|---|
| 401 | Missing or invalid authentication or organization/user context. |
| 403 | The developer key lacks one or more listed scopes. |
| 404 | Monitor missing or inaccessible to this organization. |
| 409 | Monitor revision changed; reload before saving. |
| 422 | Invalid criteria/cadence, explicit null, or unsupported/immutable field. |
