Deprecated

Generate Insights API retires on October 30, 2026: move to the Signal API

Effective date: October 30, 2026. On that date, every Generate Insights API version (v1.0.0 to v1.4) returns HTTP 410. The Signal API replaces it. The Generate Content API does not change.

We are retiring the Generate Insights API on October 30, 2026. The Signal API replaces it, and it does far more.

The Generate Insights API gave you a short list of insights for one contact. The Signal API gives you the full Autobound signal graph: 35+ signal types and 900+ subtypes on companies and people. You can enrich one record, search the whole market, track buyer intent, and use it all from your AI assistant through MCP. This page shows what you get and how to move in 5 steps.

What is changing

  • On October 30, 2026, we retire every version of the Generate Insights API: v1.0.0, v1.1, v1.2, v1.3 and v1.4.
  • From that date, each call to https://api.autobound.ai/api/external/generate-insights/... returns HTTP 410 with error code 4006.
  • Until then, the Generate Insights API works as it does today.

Not affected: the Generate Content API (v3.5, v3.6), AI Studio, and the Signal API. You are affected only if your code calls a URL that starts with https://api.autobound.ai/api/external/generate-insights/.

Why the Signal API is a big upgrade

You canWith the Signal APIDocs
Get signals for one companyBy domain, name or LinkedIn URL. Works even when you only have a generic inbox like [email protected].Enrich a company
Get signals for one personBy email or LinkedIn URLEnrich a contact
Find new accountsSearch the whole market for companies with fresh signals. Filter by industry, employee count and revenue.Search companies
Find the right peopleSearch contacts by signal. Filter by seniority, department and job title.Search contacts
Get only what you needFilter by signal type, up to 25 subtypes, and date window. You pay only for what returns.Subtype filtering
Search inside posts and podcastsMatch keywords, tech mentioned, competitors mentioned, pain points and initiatives in LinkedIn, Twitter/X, YouTube and podcast content.Content filters
See who is in marketCompanies and contacts that surge on your topics, with an intent timeline per company and bulk export.Buyer intent: companies, contacts, topics
Watch your accountsAdd the companies and people you care about to your monitoring pool.Add to monitoring pool
Check emails before you sendReal-time email verification, single or bulk (up to 1,000 per call).Email verification
Use it in your AI assistantAsk for signals in plain language in Claude, ChatGPT, Cursor or Claude Code.Autobound MCP
Load it in bulkDelivery to Google Cloud Storage in JSONL and Parquet.Delivery

Free discovery endpoints help you build fast: list signal types, list filters, signal type history, credit costs, account and request logs.

Simple pricing. You pay only for results. Enrichment costs 2 credits per returned signal. Zero-result requests are free. See Credits.

We add new signal types and parameters often. Follow the changelog to see each release.

Use it from your AI assistant (MCP)

The Autobound MCP server lets Claude, ChatGPT, Cursor, Claude Code and any MCP client query the Signal API in plain language.

  • Server URL: https://mcp.autobound.ai/mcp
  • Claude Code, in one line:
claude mcp add --transport http autobound https://mcp.autobound.ai/mcp
  • Example prompts: "What signal types do you have?" or "Which fintech companies announced layoffs in the last 30 days?"

Full setup for each client: Autobound MCP.

Core differences to prepare for

The Signal API is a new API, not a new version of Generate Insights. Plan for these 5 changes.

1. A new JSON shape. Your parser must change.

  • Results come in signals (company call) or contact_signals (contact call), not insights.
  • Each signal has signal_type, signal_subtype, detected_at and a data object.
  • The fields inside data depend on the signal type. Each type has its own guide in the signal catalog, and the schema page shows the shared envelope.
  • The response also has company, contact, signal_summary and coverage.

2. Insight subtypes become signal types and signal subtypes. The old API used one flat insightSubtype. The Signal API uses two levels: a signal type (for example news) and a signal subtype (for example receives_award). Today there are 35+ signal types and 900+ subtypes. Get the live list from List all signal types. It is free.

Old insightSubtypeNew signal_typesNew signal_subtypes
receives_awardnewsreceives_award
receives_financingnewsreceives_financing
linkedInPostlinkedin-post-contactlinkedinPost
jobChangework-milestonesjobChange
companyProductHuntLaunchproducthunt-launchcompanyProductHuntLaunch

Subtype matching ignores case. An unknown subtype returns zero results, not an error. So check your values against the live list.

3. Raw signals, not ready-made insights. The old API returned insight text, talking points, and (in v1.3 and v1.4) a ranking for your seller context. The Signal API returns structured signals with dates and source data. You pick and rank them. Many types include a data.summary. To turn signals into an email, use the Generate Content API.

4. Insight Control settings do not apply. Org settings and custom insights from Insight Control shaped the old API output. The Signal API ignores them. Use signal_types, signal_subtypes, detected_after and limit instead.

5. New pricing and a new key. The old API charged per request. The Signal API charges 2 credits per returned signal, and zero-result requests are free. It also uses its own API key.

How to move (5 steps)

1. Get a Signal API key

Sign in to the Signal API developer portal and create a key. You can also ask your account manager for one.

The Signal API key is separate from your current Autobound API key. Your current key keeps working for the Generate Content API.

2. Change the endpoint

You want signals forOld callNew call
A personPOST https://api.autobound.ai/api/external/generate-insights/v1.4POST https://signals.autobound.ai/v1/contacts/enrich
A companyPOST https://api.autobound.ai/api/external/generate-insights/v1.4POST https://signals.autobound.ai/v1/companies/enrich

Send the key in the X-API-KEY header, as today. Authorization: Bearer <key> also works.

3. Map the request fields

Generate Insights (v1.x)Signal APINotes
contactEmailcontact_emailEnrich a contact
contactLinkedinUrlcontact_linkedin_urlEnrich a contact
contactCompanyUrldomainEnrich a company. You can also send company_name or linkedin_url.
insightSubtypesignal_types, signal_subtypesSignal catalog, list signal types. Up to 25 subtypes per request.
(none)detected_afterISO-8601 date-time. Returns only newer signals.
(none)limit1 to 500. Default 20.
userEmail, userLinkedinUrl, userCompanyUrl(none)The Signal API does not rank signals for a seller. Use the filters to narrow the result.
inputVariables(none)Not needed.

4. Map the response fields

Generate Insights (v1.x)Signal API
insights (array)signals (company call) or contact_signals (contact call)
insightId, idsignal_id
typesignal_type
subTypesignal_subtype
namesignal_name. This can be empty. Use signal_subtype or data.summary instead.
associationassociation (company or contact)
variablesdata. The fields depend on the signal type. See the schema and the guide for each type in the signal catalog.
(none)detected_at: when we detected the signal
details.prospect...company and contact objects, plus coverage

5. Test before October 30

Run your main use case against the Signal API. Check the result count, the fields you read, and your credit use. The response headers x-credits-charged and x-credits-remaining show the credits for each call. The onboarding guide walks through a first integration.

Example

Before (Generate Insights):

curl -X POST "https://api.autobound.ai/api/external/generate-insights/v1.4" \
  -H "X-API-KEY: $AUTOBOUND_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contactEmail": "[email protected]", "contactCompanyUrl": "stripe.com"}'

After (Signal API, company signals):

curl -X POST "https://signals.autobound.ai/v1/companies/enrich" \
  -H "X-API-KEY: $SIGNAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain": "stripe.com", "signal_types": ["news", "hiring-trends"], "detected_after": "2026-07-01T00:00:00Z", "limit": 20}'

After (Signal API, contact signals):

curl -X POST "https://signals.autobound.ai/v1/contacts/enrich" \
  -H "X-API-KEY: $SIGNAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contact_email": "[email protected]", "limit": 20}'

New (find companies in market, not possible with Generate Insights):

curl -X POST "https://signals.autobound.ai/v1/companies/search" \
  -H "X-API-KEY: $SIGNAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"signal_types": ["hiring-trends"], "industries": ["Software Development"], "employee_count_min": 200, "limit": 20}'

Shortened response shape (company enrich):

{
  "company": { "name": "...", "domain": "stripe.com", "linkedin_url": "...", "industries": ["..."] },
  "signals": [
    {
      "signal_id": "...",
      "signal_type": "news",
      "signal_subtype": "...",
      "signal_name": "...",
      "detected_at": "2026-10-01T00:00:00Z",
      "association": "company",
      "contact": null,
      "data": { "summary": "..." }
    }
  ],
  "signal_summary": { "news": 12 },
  "coverage": { "total_before_filters": 40, "total_after_filters": 12 }
}

Tip: contact-level coverage is lower than company-level coverage. If a contact call returns contact_not_found, call /v1/companies/enrich with the person's company domain. The 404 response lists this as a next_steps option. Entity resolution explains how we match records.

Errors you may see

SituationResponse
No signals for the person or company404 contact_not_found or company_not_found, with hint and next_steps
No credits left402 credits_exhausted, with balance and action_cost
Too many requests429 rate_limit_exceeded (300 requests per minute), with Retry-After
Bad or missing key401 unauthorized
Old Generate Insights call on or after October 30410, error code 4006 (below)

The 410 response body:

{
  "error": {
    "code": 4006,
    "message": "The Generate Insights API (v1.0.0 to v1.4) was retired on 2026-10-30. Use the Autobound Signal API: POST https://signals.autobound.ai/v1/contacts/enrich or POST https://signals.autobound.ai/v1/companies/enrich. Docs: https://autobound-api.readme.io/reference/enrichcontact. The Signal API needs its own API key: https://signalapi.autobound.ai"
  }
}

Timeline

DateWhat happens
NowThe Signal API and MCP server are live. Start your move.
Until October 29, 2026The Generate Insights API works as today.
October 30, 2026Every Generate Insights call returns 410.

Questions

  • Does my Generate Content API code change? No. v3.5 and v3.6 keep the same request, response and key.
  • Do I need a new key? Yes, for the Signal API only. Get it at signalapi.autobound.ai.
  • Can I use the Signal API in Claude or ChatGPT? Yes. Connect the Autobound MCP server.
  • What about my plan and credits? Your account manager will help you set up Signal API credits that fit your use. See Credits, auto top-up and pay by invoice.
  • Can I keep using Generate Insights after October 30? No. Every call returns 410.
  • Where do I start? Introduction, then the onboarding guide.

Need help? Reply to your account manager, or email [email protected]. We are happy to do a short call to help you switch.