---
title: Interseller API Integration on Truto
slug: interseller
category: Sales Enablement
canonical: "https://truto.one/integrations/detail/interseller/"
---

# Interseller API Integration on Truto



**Category:** Sales Enablement  
**Status:** Generally available

## MCP-ready AI tools

Truto exposes 26 tools for Interseller that AI agents can call directly.

- **list_all_interseller_campaigns** — List Interseller campaigns. Returns: id, title, active, shared, _user, created_at. Optionally filter by archived status or search by name using query.
- **create_a_interseller_campaign** — Create a new Interseller campaign sequence. Returns: id, title, active, steps, created_at, has_steps, paused.
- **get_single_interseller_campaign_by_id** — Get a specific Interseller campaign by id, including its email steps, fields, and schedule. Returns: id, title, active, steps, fields, created_at, updated_at, has_steps. Required: id.
- **update_a_interseller_campaign_by_id** — Update the email steps and content of an Interseller campaign sequence, including support for A/B test variants via other_steps. Returns: id, title, steps, subject, has_steps, updated_at, first_message_step_index. Required: id.
- **delete_a_interseller_campaign_by_id** — Archive an Interseller campaign by id. Returns an empty response on success. Required: id.
- **get_single_interseller_campaign_step_stat_by_id** — Get step-level stats for an Interseller campaign by id. Returns an object keyed by step index (e.g. "0", "1") or step ID, where each entry contains total, sent, manual_unsent, viewed, visited, and replied counts. Stats apply per-step only — a reply to step 2 does not retroactively count against step 1. Required: id.
- **list_all_interseller_contact_activities** — List all activities for a contact in Interseller, including messages sent, opens, replies, bookings, and more. Returns: id, verb, _user, _campaign, _contact, data, created_at, updated_at. Required: contact_id.
- **get_single_interseller_report_by_id** — Get the Interseller team activity report for a specified date range. Returns an object keyed by team member IDs, each entry containing lookups, contacts, messages, tasks, replies, and booked counts. Required: start.
- **update_a_interseller_user_by_id** — Deactivate an Interseller team user by id. Returns an empty 204 response on success. Required: id.
- **list_all_interseller_users** — List all users in your Interseller team. Returns: id, full_name, email, crm_type, photo_url, account_type, type, active, group, crm_name.
- **get_single_interseller_team_blacklist_by_id** — Get the Interseller team blacklist. Returns an array of blacklisted domain and email address strings (e.g., 'interseller.io', 'steve@interseller.io'). No required parameters.
- **update_a_interseller_team_blacklist_by_id** — Replace the entire Interseller team blacklist with a new list of domains and email addresses. This endpoint is not additive — it wipes the existing blacklist and substitutes the list you provide. Returns an empty object on success. Required: blacklist.
- **create_a_interseller_team_invite** — Invite a new user to the Interseller team by sending them an invitation email. By default, a seat is assigned automatically if one is available; otherwise the user must be manually licensed. Returns an empty response on success. Required: email.
- **create_a_interseller_email** — Validate an email address in Interseller in real time using MX testing and other checks to determine if it can accept emails. Returns: email, verdict, ran_at, server, and a details object including valid_format, valid_mx_records, mx_reachable, is_disposable, is_free_service, and more. Required: email.
- **list_all_interseller_emails** — Look up professional email addresses in Interseller for a person by name and company domain. Returns ranked results each containing: email, verdict, handle, pattern, ran_at, server, and a details object with MX validation flags. Required: name, url.
- **create_a_interseller_webhook** — Create a new webhook in Interseller. Returns: id, url, types, created_at, disabled, and paused. Required: url.
- **delete_a_interseller_webhook_by_id** — Remove an Interseller webhook by id. Returns the deleted webhook object including id, url, types, created_at, disabled, and paused. Required: id.
- **create_a_interseller_activity** — Log an activity in interseller, such as a sent email or a completed task. Required: type, body. Returns an empty 204 response on success.
- **list_all_interseller_custom_fields** — List all custom fields available in interseller for use when creating or updating contacts. Returns: id, name.
- **get_single_interseller_campaign_stat_by_id** — Get statistics for an Interseller campaign by id. Returns a state object containing total, ongoing, bounced, messaged, viewed (opened), visited (clicks), replied, booked, and error contact counts. Required: id.
- **create_a_interseller_campaign_step_preview** — Send a preview of a specific Interseller campaign step to test email content before it is delivered to contacts. Returns an empty 204 response on success. Required: campaign_id, step.
- **create_a_interseller_contact_reply** — Mark an interseller contact as replied via the Set Contact Replied endpoint. Returns an empty 204 response on success. Required: contact_id.
- **create_a_interseller_contact_unsubscription** — Unsubscribe a contact in Interseller by contact ID. Returns an empty 204 response on success. Required: contact_id.
- **get_single_interseller_leaderboard_report_by_id** — Get the Interseller leaderboard report for a specified date range. Returns an object keyed by user ID, where each entry contains lookups, contacts, messages, tasks, replies, and booked counts. Required: start.
- **update_a_interseller_user_setting_by_id** — Update the current interseller user's settings, including sending schedule, timezone, and daily email limits. Returns an empty 204 response on success.
- **create_a_interseller_email_personal_query** — Query personal email addresses (e.g. gmail.com, outlook.com) for a person in Interseller given identifying information such as a LinkedIn URL, GitHub URL, or phone number. Returns: emails (array of discovered personal email addresses). At minimum, supply one of: (name + company_name + company_title + location), linkedin_url, github_url, or phone_number.

## How it works

1. **Link your customer's Interseller account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Interseller.** The Proxy API is a 1-to-1 mapping of the Interseller API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Embed Interseller in ATS and Recruiting CRMs** — Talent acquisition platforms can let users push candidates into Interseller campaigns directly from a candidate profile, then sync engagement events back into the ATS timeline. This eliminates tab-switching for sourcers and keeps candidate records up to date.
- **Power AI Sourcing and Outreach Agents** — AI tools that draft hyper-personalized outreach can inject custom step copy into active Interseller sequences and react to replies via webhooks. SaaS companies offering AI agents need this to close the loop between message generation and delivery.
- **Coordinate Omnichannel Sales and Recruiting Execution** — Platforms managing cold calls, LinkedIn touches, and tasks can halt or progress Interseller email sequences based on activity in other channels. This prevents recruiters or SDRs from sending automated emails to prospects they just spoke with.
- **Build Sales Gamification and Performance Dashboards** — Gamification, coaching, and commission-tracking tools can pull rep-level leaderboard data — lookups, messages sent, replies, meetings booked — to drive quotas, scorecards, and team competitions. Interseller activity becomes a first-class KPI source.
- **Offload Email Enrichment and Verification** — Prospecting tools and Chrome extensions can route lookups through Interseller's email waterfall and MX validation instead of stacking separate enrichment vendors. This reduces enrichment costs for end customers already paying for Interseller.

## What you can build

- **Campaign picker with one-click enrollment** — List a user's active campaigns via list_all_interseller_campaigns and let them drop a contact into any sequence without leaving your product.
- **Real-time engagement sync via webhooks** — Register webhooks with create_a_interseller_webhook to stream opens, clicks, replies, and bounces into your timeline instead of polling contact activities.
- **AI step injection and A/B variant management** — Use update_a_interseller_campaign_by_id to programmatically rewrite email steps or manage A/B variants from an AI agent or template builder.
- **Sequence halt on external reply or meeting booked** — Fire create_a_interseller_contact_reply or create_a_interseller_contact_unsubscription when a prospect responds on another channel, stopping the email sequence automatically.
- **Email lookup and deliverability checks** — Expose Interseller's B2B and personal email lookup via list_all_interseller_emails and create_a_interseller_email_personal_query, plus MX validation through create_a_interseller_email.
- **Rep leaderboards and step-level funnel analytics** — Pull get_single_interseller_leaderboard_report_by_id, get_single_interseller_campaign_stat_by_id, and get_single_interseller_campaign_step_stat_by_id to render rep KPIs and per-step drop-off charts.

## FAQs

### How do end users authenticate their Interseller account?

End users connect through Truto's hosted auth flow, which handles credential capture and token management for Interseller. Your application receives a connection ID and never has to store or rotate API keys.

### Can we receive real-time engagement events instead of polling?

Yes. Use create_a_interseller_webhook to subscribe to engagement events like opens, clicks, replies, and bounces. This is the recommended pattern over repeatedly calling list_all_interseller_contact_activities.

### What level of analytics granularity is available?

You can pull campaign-level stats via get_single_interseller_campaign_stat_by_id and per-step funnel metrics via get_single_interseller_campaign_step_stat_by_id, including viewed, visited, replied, and bounced counts at each step index.

### Can we programmatically modify sequence steps and A/B variants?

Yes. update_a_interseller_campaign_by_id supports editing email steps and managing A/B test variants (the other_steps field), which is what AI agents use to inject personalized copy.

### How do we stop a sequence when a prospect responds outside Interseller?

Call create_a_interseller_contact_reply to mark the contact as replied, or create_a_interseller_contact_unsubscription to remove them entirely. Both halt the automated email cadence immediately.

### Does Interseller support custom fields and personal email lookups?

Yes. You can fetch custom field definitions via list_all_interseller_custom_fields, and run personal email lookups (e.g., from GitHub or LinkedIn URLs) using create_a_interseller_email_personal_query — particularly useful for recruiting workflows.

## Related reading

- [Connect Interseller to ChatGPT: Manage Outreach and Prospect Data](https://truto.one/blog/connect-interseller-to-chatgpt-manage-outreach-and-find-prospect-data/) — Learn how to build a managed MCP server to connect Interseller to ChatGPT. Automate email lookups, sequence management, and campaign reporting using natural language.
- [Connect Interseller to AI Agents: Automate Outreach & Verify Emails](https://truto.one/blog/connect-interseller-to-ai-agents-automate-outreach-and-verify-emails/) — A definitive technical guide to connecting Interseller to AI agents. Learn how to fetch tools, handle rate limits, and build autonomous outreach workflows.
