Skip to main content
POST
Create Signal

Create Signal

Create a new signal monitor. The required fields depend on the signal_type.

Schedule and name (all signal types)

These optional fields work with every signal_type.
string
A display name for the signal, such as "Champions" or "Competitor founders". It appears in /signal/list and in webhook payloads as job_name. Names don’t need to be unique and never identify a signal; signal_id does. Defaults to the type’s name, such as "Job Change Monitor". Change it later with the rename action.
string
default:"every_day"
How often the signal runs: "every_hour", "every_2hr", "every_12hr", "every_day", or "every_week".
string
default:"09:00"
Time of day to run, "HH:MM" in UTC. For every_hour and every_2hr, only the minutes are used. For every_12hr, the signal runs at this time and 12 hours later, so "09:00" means 09:00 and 21:00 UTC. To spread load, a run can start after this time: up to about 20 minutes for hourly signals, 30 minutes for 12-hourly ones, an hour for daily ones, and 2 hours for weekly ones.
string
default:"monday"
Day of the week to run, for every_week only. For example "monday".

job_change / new_post / person_activity

Track a list of LinkedIn profiles. person_activity has its own guide with its webhook payload. The first run for each profile records a baseline and reports nothing. After that, each run reports what changed since the last one.

Required

string
required
"job_change", "new_post", or "person_activity"
array
required
A non-empty list of LinkedIn profile URLs to track.

Optional

string
Add profile_urls to this existing signal instead of creating one. The signal keeps its name, schedule, and other settings.
boolean
default:"false"
true always creates a new signal, even if you already have one of this type. Can’t be combined with signal_id.
array
person_activity only. What to report: "reactions", "comments", or both (the default).
array
Extra email addresses to notify when a signal fires. Your registered account email is always included automatically.
string
A URL to receive a POST request when a signal fires. See Webhooks for the payload format.
string
HMAC secret for signing webhook payloads. Adds an X-Datamagnet-Signature header to each delivery.
Plus name, frequency, scheduled_time, and scheduled_day from Schedule and name.

Several signals of one type

You can run several signals of the same type, for example a job_change signal for champions and another for churned customers. Each has its own profiles, baseline, and alerts, and a profile tracked by two signals alerts in both. Which signal a create call affects: When profiles are added to an existing signal, only the schedule fields you send are applied; its name and other settings stay as they are. Credits: 1 credit per profile in profile_urls.

Response

object
Adding profiles to a paused signal is refused. Resume it first via /signal/update with action: resume.

keyword_engagement

Monitor LinkedIn for posts matching your keywords and surface the people who liked or commented on them, filtered and scored against your Ideal Customer Profile (ICP). You can create multiple keyword_engagement signals, each targeting a different keyword set or ICP. Each signal is identified by a signal_id returned in the response. For the full ICP field reference and lead scoring details, see the Keyword Engagement guide.

Required

string
required
"keyword_engagement"
array
required
Seed keywords to monitor. Minimum 1. The system automatically expands these with semantically related variants on the first run.

Optional

object
Ideal Customer Profile filter. If omitted, every engaging lead is returned unfiltered. See the ICP Filter Reference for all available fields.
array
Extra email addresses to receive the lead digest.
string
URL to receive qualified leads via POST after each run.
string
HMAC secret for signing webhook payloads.

Response

object

industry_engagement

Monitor LinkedIn for posts originating from companies in your target industries and surface the people who engage with them, filtered and scored against your Ideal Customer Profile. You can create multiple industry_engagement signals — each identified by a signal_id returned in the response. See the Industry Engagement guide for the full ICP reference and lead scoring details.

Required

string
required
"industry_engagement"
array
required
A list of LinkedIn industry names to monitor. Each name is resolved to its LinkedIn numeric ID automatically.
Unrecognised names are returned in unresolved_industries and skipped.

Optional

object
Ideal Customer Profile filter. See the ICP Filter Reference for all available fields.
string
Only surface leads who engaged with posts published within this window. Valid values: "past-24h" · "past-week" · "past-month"
array
Extra email addresses to receive the lead digest.
string
URL to receive qualified leads via POST after each run.
string
HMAC secret for signing webhook payloads.

Response

object

company_engagement

Monitor LinkedIn for posts from specific companies and surface the people who engage with them, filtered and scored against your Ideal Customer Profile. You can create multiple company_engagement signals — each identified by a signal_id returned in the response. See the Company Engagement guide for the full ICP reference and lead scoring details.

Required

string
required
"company_engagement"
array
required
A list of LinkedIn company profile URLs to monitor. The company ID is resolved automatically from each URL.
Unresolvable URLs are returned in unresolved_company_urls and skipped.

Optional

object
Ideal Customer Profile filter. See the ICP Filter Reference for all available fields.
string
Only surface leads who engaged with posts published within this window. Valid values: "past-24h" · "past-week" · "past-month"
array
Extra email addresses to receive the lead digest.
string
URL to receive qualified leads via POST after each run.
string
HMAC secret for signing webhook payloads.

Response

object

person_engagement

Monitor LinkedIn for posts and/or mentions from specific people and surface the users who engage with that content, filtered and scored against your Ideal Customer Profile. You can create multiple person_engagement signals — each identified by a signal_id returned in the response. See the Person Engagement guide for the full ICP reference, tracking modes, and lead scoring details.

Required

string
required
"person_engagement"
array
required
A list of LinkedIn profile URLs for the people to monitor. The member_id is resolved automatically from each profile.
Unresolvable URLs are returned in unresolved_profile_urls and skipped.

Optional

string
What content to monitor. "posts" — posts by the person · "mentions" — posts mentioning them · "both" (default) — both.
object
Ideal Customer Profile filter. See the ICP Filter Reference for all available fields.
string
Only surface leads who engaged with content published within this window. Valid values: "past-24h" · "past-week" · "past-month"
array
Extra email addresses to receive the lead digest.
string
URL to receive qualified leads via POST after each run.
string
HMAC secret for signing webhook payloads.

Response

object