See llms.txt for all machine-readable content.
Unlock the full potential of Seamless and n8n’s automation platform by connecting Seamless’s capabilities with over 2,000 apps, data sources, services, and n8n’s built-in AI features.
Need something that’s not covered yet?
Use n8n’s pre-authenticated HTTP Request node to create new connections, giving you the flexibility to build powerful automations on any stack.


is built and maintained by our partners at Seamless and verified by n8n. That means it’s solid, safe, and ready to help you tap into some great capabilities.

Automate B2B lead generation and sales workflows in n8n with Seamless.ai. Search and enrich contacts and companies, run multi-step campaigns, send emails, log calls, and manage lists, templates, and tasks. Includes a polling trigger and works as an AI agent tool.
| Get Many | Retrieve engagement activity events (opens, replies, bounces, calls). Paginated by limit/offset; the server reports total and hasMore. |
|---|
| Cancel | Cancel a running Autopilot. Irreversible; the current batch may finish before the run stops. Already-researched records are kept and unused credits are restored within a few minutes. |
|---|---|
| Get Results URL | Get presigned download URLs for the result CSV files of an Autopilot run. URLs expire in 300 seconds; call again for fresh links. File content is never streamed. |
| Get Status | Get status and progress for an Autopilot (automated search) run. Poll until isTerminal is true, then use Get Results URL to download the files. |
| Start | Start a contact or company Autopilot: a long-running automated search that researches every matching record in the background. Consumes credits upfront for every requested result; unused credits are restored when the run finishes or is cancelled. Takes the same filters as Contact/Company Search (or a Saved Search ID); the total from that search is the ceiling for Results to Research (caps 10,000 contacts / 5,000 companies). One Autopilot per type runs at a time. Returns taskId and automatedSearchId immediately; poll with Get Status and download with Get Results URL. |
| Get Dispositions | Retrieve available call disposition options |
|---|---|
| Get Sentiments | Retrieve available call sentiment options |
| Log | Log a completed call for a contact |
| Add Contacts | Add contacts to a campaign by ID (max 500). Rejected if the campaign is archived or deleted. Returns the updated campaign and contactsAdded — the number actually enrolled, which can be lower than requested when contacts are not in the org or fall below the campaign AI score threshold. |
|---|---|
| Archive | Archive a draft, active, or paused campaign, stopping it and hiding it from the active campaign list. Restore it to draft with Unarchive. Returns the campaign ID and new status. |
| Clone | Create a copy of an existing campaign |
| Complete | Mark an active campaign as completed, ending it for all contacts. A completed campaign cannot be started, resumed, or archived again. Returns the campaign ID and new status. |
| Create | Create a new campaign, optionally with inline steps and contacts. Each inline step's content is exactly one of Template ID, Template Data (static template with merge tags), or AI Prompt (plain instructions with no merge tags; the AI writes personalized content per contact when the step runs). |
| Delete | Permanently delete a campaign |
| Get | Retrieve a campaign by ID |
| Get Contacts | Retrieve contacts in a campaign with engagement status and current step. Paginated by limit/offset; the server reports total and hasMore. |
| Get Many | Retrieve a list of campaigns |
| Get Metrics | Retrieve performance metrics for a campaign |
| Pause | Pause an active campaign. No further steps run or emails send until it is resumed with Resume. Returns the campaign ID and new status. |
| Remove Contacts | Remove contacts from a campaign by ID (max 500). Returns the updated campaign and contactsRemoved — the number actually removed, which is 0 when none of the IDs are currently enrolled. Does not delete the contacts themselves. |
| Resume | Resume a paused campaign so it continues working its contacts and sending its email steps. Only a paused campaign can be resumed. The campaign must have a schedule, at least one linked email account if it has email steps, at least one contact, at least one step, and an email template on every unfinished automatic email step. The account owner must also have accepted the Engage Terms of Service in the Seamless.AI app (otherwise 403 tosNotAccepted). Returns the campaign ID and new status. |
| Start | Start a draft campaign so it begins working its contacts and sending its email steps. Only a draft campaign can be started. The campaign must have a schedule, at least one linked email account if it has email steps, at least one contact, at least one step, and an email template on every unfinished automatic email step. The account owner must also have accepted the Engage Terms of Service in the Seamless.AI app (otherwise 403 tosNotAccepted). Returns the campaign ID and new status. |
| Unarchive | Restore an archived campaign to draft. It does not resume sending; run Start afterward to run it again. Returns the campaign ID and new status. |
| Update | Update a campaign's name, visibility, linked email accounts, per-account daily send limits, per-day task limits, or the daily task limit switch (Is Daily Task Limit Enabled). Send limits, task limits and the switch can be changed in any campaign state and take effect at once (an active campaign moves contacts between active and pending to fit). Email accounts can be added in any state, but removing one from an active campaign fails (422 campaignActive): pause the campaign first, then resume it. Returns the updated campaign with its dailySendLimits, dailyTaskLimits and isDailyTaskLimitEnabled. |
| Create | Add a new step to an existing campaign. For email steps, provide exactly one of Template ID, Template Data (static content with merge tags), or AI Prompt (plain instructions with no merge tags; the AI writes personalized content per contact when the step runs); automatic email steps are rejected without one. |
|---|---|
| Delete | Remove a draft step from a campaign. Remaining steps are renumbered; returns the deleted step and the remaining steps. |
| Get Many | Retrieve all steps in a campaign |
| Pause | Pause an in-progress step of a campaign. Its tasks stop running until the step is resumed with Resume. The campaign must not be completed, archived, or deleted. Returns the step ID and new status. |
| Resume | Resume a paused campaign step so its tasks run again, including any email sends. The campaign must not be completed, archived, or deleted. Returns the step ID and new status. |
| Skip | Skip an in-progress or paused campaign step, so its remaining tasks are skipped for every contact. The campaign must not be completed, archived, or deleted. Returns the step ID and new status. |
| Update | Update a campaign step's name, delay, content, or position. Content can be switched to a saved template (Template ID), static inline content (Template Data), or an AI prompt (AI Prompt; plain instructions with no merge tags) — provide exactly one. |
| Get Many | Retrieve a list of researched companies as normalized records (companyId, name, domain, industries, staffCount, revenueRange, location, …), the same shape as Poll Research results |
|---|---|
| Poll Research | Check the status of a pending research request (missing, researching, done, or error). Done results carry the enriched company. |
| Research | Enrich companies with verified data (consumes credits) |
| Search | Find companies matching filter criteria. Costs 1 credit per 50 results returned (rounded up); a page is trimmed to the rows your remaining credits cover, and Return All stops paging once credits run out. Results use the filter vocabulary (companyName, companySize, companyRevenue) so they can be fed back into another search; the older name/staffCountRange/revenueRange fields are deprecated aliases kept for one release. |
| Update | Update saved companies. Currently manages which lists they belong to. |
| Get Many | Retrieve a list of researched contacts |
|---|---|
| Poll Research | Check the status of a pending research request. Keep polling while any result is queued or researching. Terminal statuses: done, error, missing, not found, or a Research Types rejection (fullContactRequired, component-disabled-for-org, variable-credits-disabled). Done results carry the enriched contact, including jobHistory (prior roles as companyName/title/startedAt/endedAt, most recent departure first) and researchedTypes (the contact data researched so far). |
| Research | Enrich contacts with verified emails, phone numbers, job history, and other data. Each contact consumes credits for the components it researches (see Research Types); credits for data that is not found are refunded, and the request is rejected with insufficient credits when the balance cannot cover every contact. |
| Search | Find contacts matching filter criteria. At least one filter (or a Saved Search ID) is required; a search with none is rejected rather than returning an empty page. Costs 1 credit per 50 results returned (rounded up); a page is trimmed to the rows your remaining credits cover, and Return All stops paging once credits run out. Results use the filter vocabulary (fullName, jobTitle, companyName, companySize) so they can be fed back into another search; the older name/title/company/employeeSizeRange fields are deprecated aliases kept for one release. |
| Update | Update saved contacts. Currently manages which lists they belong to. |
| Get Credits | Retrieve the current credit balance and usage |
|---|
| Create Draft | Create a new email draft for a contact |
|---|---|
| Get Draft | Retrieve an email draft by ID |
| Preview | Send a preview of an email to a specified address |
| Send | Send an email immediately to a contact. If a send limit was reached or the provider failed temporarily, the email is queued instead: status is SCHEDULED or RETRYING and it will send on its own, so do not send it again. |
| Send Bulk | Send an email to up to 500 saved contacts matching filters. Filters must include Lists, Contact IDs, Campaign IDs, or a text query; opted-out and unsubscribed contacts are skipped. |
| Send Draft | Send a previously created email draft immediately. If a send limit was reached or the provider failed temporarily, the email is queued instead: status is SCHEDULED or RETRYING and it will send on its own, so do not send it again. |
| Update Draft | Update properties of an email draft |
| Get Many | Retrieve a list of connected email accounts |
|---|
| Get Many | Retrieve a list of email footers |
|---|
| Create | Create a new contact list. Populate it with the Contact/Company Update operation, or via List IDs on Contact Research. |
|---|---|
| Delete | Permanently remove a contact list |
| Get | Retrieve a single contact list by ID |
| Get Many | Retrieve all contact lists |
| Update | Rename a contact list |
| Lookup | Search the location vocabulary for the exact spellings a location filter will match |
|---|
| Create | Create a new saved search |
|---|---|
| Delete | Permanently remove a saved search |
| Get | Retrieve a saved search by ID |
| Get Many | Retrieve a list of saved searches |
| Update | Update an existing saved search |
| Cancel | Cancel a task that has not finished, so it never runs. Returns the task ID and the action taken. |
|---|---|
| Complete | Mark a to-do, paused, scheduled, or errored task as completed, for example after the call or work was done manually. This does not send anything. Returns the task ID and the action taken. |
| Create | Create a new task |
| Delete | Permanently remove a task |
| Get | Retrieve a task by ID |
| Get Many | Retrieve a list of tasks |
| Pause | Pause a to-do, scheduled, or errored task so it does not run until it is unpaused with Unpause. Returns the task ID and the action taken. |
| Skip | Skip a to-do, paused, pending, scheduled, or errored task so it is not done for this contact. Returns the task ID and the action taken. |
| Start | Run a to-do or scheduled task now. For an automatic email task this sends the email immediately. Returns the task ID and the action taken. |
| Unpause | Unpause a paused task so it is due again. A campaign email task can send once it is due. Returns the task ID and the action taken. |
| Update | Update task properties, including the due date (the former Schedule/Reschedule actions) |
| Create | Create a new email template |
|---|---|
| Delete | Permanently remove an email template |
| Get | Retrieve an email template by ID |
| Get Many | Retrieve a list of email templates |
| Update | Update an existing email template |
Verified nodes need a quick setup by an instance owner first, but after that, everyone on the instance can start using them in their workflows. Learn more here.
Sign in to n8n, open the editor, and click + in the top right to open the Nodes panel
Search for Seamless using the search bar. Look for the version marked by a badge . Then, select install.
Once Seamless is installed, just drag, drop, and connect it like any other node in a workflow.

Supercharge your CRM
Need a more powerful integration with your CRM? n8n lets you go beyond standard integrations offered by popular CRMs!
Save engineering resources
Reduce time spent on customer integrations, engineer faster POCs, keep your customer-specific functionality separate from product all without having to code.

n8n makes complex workflows easy to build, and versatile enough for me to add my own 'secret sauce.'

I have found the holy grail of automation.

n8n’s integration with third-party services is absolutely mind-blowing. It’s like a Swiss army knife for automation.
n8n is the tool that turns 'I have an idea' into 'it's running in production' faster than anything else.

Anything is possible with n8n. I think the cloud version is great, they are doing amazing stuff.
n8n’s integration with third-party services is absolutely mind-blowing. It’s like a Swiss army knife for automation.

Thank you to the n8n community. I did the beginners course and promptly took an automation WAY beyond my skill level.
I love the flexibility of n8n and how it lets different applications work together in a single workflow.
n8n is the glue that holds many of our systems together.
I can move fast, go deep when things get complex, and never feel boxed in.
