Job Alerts
Watch job postings and submit applications under a person’s own name (feature-gated).
Tools (7)
Section titled “Tools (7)”get_job_applications
Section titled “get_job_applications”Full name: campaignstack_get_job_applications
Read job watcher results through one selector. selector.kind=‘matches’ lists postings a watcher found, including found rows nobody acted on yet. selector.kind=‘applications’ lists acted-on applications across the workspace. selector.kind=‘application’ reads one full review payload with letter, screening answers, pending questions, account, resume, and confirmation. Use status filters for found/needs_answer/pending_review/submitted/etc. Results are one page. When pagination reports more, say so rather than presenting the page as the whole set, and page through before counting anything.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
selector | operation | Yes | — | Choose matches for found postings, applications for acted-on applications, or application for one full review payload. |
selector variants (selector.kind)
Section titled “selector variants (selector.kind)”matches
Section titled “matches”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
watcherId | string | No | — | (min length: 1) |
status | found | reading | drafting | pending_review | approved | submitting | submitted | needs_answer | external_manual | rejected | skipped | failed | No | — | |
limit | integer | No | 25 | (min: 1, max: 50) |
cursor | string | null | No | — |
applications
Section titled “applications”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
status | unknown | No | — | |
limit | integer | No | 25 | (min: 1, max: 100) |
application
Section titled “application”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
applicationId | string | Yes | — | (min length: 1) |
get_job_watchers
Section titled “get_job_watchers”Full name: campaignstack_get_job_watchers
Read live job watchers for a workspace: connected LinkedIn account, saved searches, apply mode, application profile completeness, resume, and last search time. Pass ids to select specific watchers from the bounded live set; use this before editing, pausing, resuming, or archiving a watcher. This read does not include matched jobs; use campaignstack_get_job_applications for matches and applications.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
ids | string[] | No | — | Specific watcher ids. Omit to list live watchers. |
status | active | paused | No | — | Optional live-watcher status filter. |
suggest_job_application_profile
Section titled “suggest_job_application_profile”Full name: campaignstack_suggest_job_application_profile
Propose answers for a job watcher’s application profile from the person’s own LinkedIn profile and resume: searches from their current titles, the country they live in, the languages their profile and resume are written in or name, the local currency, and years per listed skill (added up from the dated positions judged to use that skill; a skill with no years was not matched to any position). Nothing is saved. Call this before filling a profile, read the proposal back to the person, and save only what they confirm with campaignstack_edit_job_watcher (op update). Living in a country is not a work permit, so ask. Salary, notice period and relocation are never proposed: ask for them.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
watcherId | string | Yes | — | (min length: 1) |
edit_job_watcher
Section titled “edit_job_watcher”Full name: campaignstack_edit_job_watcher
Create, update, pause, or resume job watchers in one bounded request. Create binds a watcher to one connected LinkedIn account; update replaces searches only when queries is supplied and merges applicationProfile so old answers remain; pause stops new searches/applications; resume starts again if the account is usable. If outboundMode is automatic or applyEnabled is true, confirm that the user wants applications to proceed under the account’s limits before calling.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
operations | operation[] | Yes | — | One or more operations, see below. |
Operations (operations[].op)
Section titled “Operations (operations[].op)”create
Section titled “create”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
linkedinAccountId | string | Yes | — | The connected account applications go out under (campaignstack_get_accounts). (min length: 1) |
queries | object[] | No | — | |
applyEnabled | boolean | No | — | False/default only finds matches; true can start applications. |
outboundMode | manual_review | automatic | No | — | manual_review parks applications for approval; automatic may submit within safety gates. |
applicationProfile | object | No | — | Facts the person supplied. Empty fields mean ask them; never guess screening answers. |
applicationProfile.workAuthorization | string[] | No | — | Countries the person may work in. |
applicationProfile.salaryRange | object | No | — | |
applicationProfile.noticePeriodDays | integer | No | — | (min: 0, max: 365) |
applicationProfile.yearsPerSkill | object[] | No | — | |
applicationProfile.willingToRelocate | boolean | No | — | |
applicationProfile.languages | string[] | No | — | |
applicationProfile.freeTextFacts | string | No | — | Short facts in the person’s own words, such as their start date. (max length: 500) |
clientOperationId | string | No | — | (min length: 1) |
update
Section titled “update”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
watcherId | string | Yes | — | (min length: 1) |
queries | array | No | — | Replaces every saved search when supplied. |
applyEnabled | boolean | No | — | |
outboundMode | manual_review | automatic | No | — | |
applicationProfile | unknown | No | — | Merged into the stored profile; omitted fields keep their old value. |
clientOperationId | string | No | — | (min length: 1) |
pause / resume
Section titled “pause / resume”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
watcherId | string | Yes | — | (min length: 1) |
clientOperationId | string | No | — | (min length: 1) |
answer_job_question
Section titled “answer_job_question”Full name: campaignstack_answer_job_question
Send the person’s answers for an application stopped at needs_answer. Answers are saved to the watcher’s application profile for future matching questions, then CampaignStack continues the application under review, credit, and account daily-limit gates. Use only answers the person gave you; read every answer back first. confirmed:true is required.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
applicationId | string | Yes | — | (min length: 1) |
answers | object[] | Yes | — | |
confirmed | boolean | Yes | — | Required after reading the answers back and getting explicit approval to send them. |
apply_to_job
Section titled “apply_to_job”Full name: campaignstack_apply_to_job
Start an application for exactly one matched posting. CampaignStack reads the posting, drafts a cover letter in the person’s voice, then parks it for review or submits later under the watcher’s automatic-mode and account-safety gates. Pass applicationId, or postingId only when exactly one live watcher matched that posting. confirmed:true is required after naming the posting and company and getting explicit approval.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
applicationId | string | No | — | The match/application id from campaignstack_get_job_applications. (min length: 1) |
postingId | string | No | — | Or a posting id when only one live watcher matched it. (min length: 1) |
confirmed | boolean | Yes | — | Required after naming the posting and company and getting explicit approval to apply. |
archive_job_watcher
Section titled “archive_job_watcher”Full name: campaignstack_archive_job_watcher
Archive one job watcher permanently. It leaves live watcher lists and never searches or applies again, while previous applications remain readable. Use pause in campaignstack_edit_job_watcher for temporary stops. confirmed:true is required after naming the watcher/account back to the user.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Workspace ID. Omit it when this connection reaches one workspace: a workspace key (cs_) is bound to its own, and a user key (csu_) or connected app whose person belongs to exactly one workspace defaults to that one. Required only when the person belongs to several; the error then lists them, and campaignstack_whoami reports them too. (min length: 1) |
watcherId | string | Yes | — | (min length: 1) |
confirmed | boolean | Yes | — | Required because archiving is one-way; say the watcher/account back to the user before setting true. |