Create contact
create_contactAdd one LinkedIn profile as a new contact in LinkedNav (the "Contacts" page, /app/contacts). A contact and a lead are the same record (called a "prospect" once added to a campaign). Identical to create_lead. Skips silently if the profile already exists (dedup by LinkedIn URL).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | The lead's own comment on the post → {{comment}}. Leave empty for reactors (set engagerType:"reactor"). | |
| No | Email address if known | ||
| intent | No | Freeform note on why this contact was added / the intent signal. NOT the numeric "Intent Score" (that is auto-computed by LinkedNav). | |
| listId | No | Contact list ID to add this contact to (uses default list if omitted). Obtain list IDs via get_lists. | |
| company | No | Current company name | |
| headline | No | LinkedIn headline | |
| icpScore | No | ICP fit score 1-10 from a signal agent, if known. NOT the auto-computed Intent Score. | |
| industry | No | Industry | |
| jobTitle | No | Job title / position | |
| lastName | Yes | Last name | |
| location | No | Location (city, country, etc.) | |
| firstName | Yes | First name | |
| followUp1 | No | Per-lead 1st follow-up that OVERRIDES the campaign follow-up-1 template for this lead only. | |
| followUp2 | No | Per-lead 2nd follow-up that OVERRIDES the campaign follow-up-2 template for this lead only. | |
| followUp3 | No | Per-lead 3rd follow-up that OVERRIDES the campaign follow-up-3 template for this lead only. | |
| icpReason | No | Short reason for the ICP score (a few words). | |
| profileUrl | Yes | Full LinkedIn profile URL (e.g. https://linkedin.com/in/jane-doe) | |
| providerId | No | LinkedIn member/provider id (ACo…/ACw…) if known — e.g. the "providerId" returned by search_people. Stored as the canonical send handle so the contact stays sendable even if its URL is imperfect; only a well-formed member id is kept. A Sales Navigator id (ACw…) is kept only as a backup — invites resolve the profile URL first. | |
| engagerType | No | How they engaged with the post: "commenter" (wrote a comment) or "reactor" (only liked/reacted). Powers {{action}} and lets one template fit both — {{comment}} is auto-blanked for reactors. | |
| sourcePostUrl | No | LinkedIn post URL that triggered this contact | |
| connectMessage | No | Per-lead connection-request note that OVERRIDES the campaign connect template for this lead only. Blank/omitted = use the campaign message. | |
| sourcePostDate | No | ISO date the post was published → {{postDate}} (rendered as M/D). | |
| welcomeMessage | No | Per-lead welcome message (sent right after they accept) that OVERRIDES the campaign welcome template for this lead only. | |
| sourcePostAuthor | No | Display name of the author of the post they engaged with → {{postAuthor}} (e.g. the influencer or competitor). | |
| sourcePostExcerpt | No | Short snippet of the post they engaged with → {{postText}}. |