Skip to main content

Company Enrichment API

Send a company domain and get back every signal Autobound has on it, from news and SEC filings to hiring and website changes, as structured JSON.

POST/v1/companies/enrich

curl -X POST https://signals.autobound.ai/v1/companies/enrich \  -H "X-API-KEY: $AUTOBOUND_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "domain": "microsoft.com",    "signal_types": [      "news",      "sec-8k"    ],    "signal_subtypes": [      "launches",      "restructuring"    ],    "limit": 2  }'

Replace $AUTOBOUND_API_KEY with your key from the portal.

One shape for every signal type

Every signal has the same envelope and company block. The data object holds the fields of its type. Browse the signal types →

signal_subtype
launchesThe event, one of 39 values
detected_at
2026-09-25T18:38:38.000ZWhen Autobound found it (UTC)
signal_type
newsThe type. It decides the data fields
data.summary
Microsoft has launched a major update to its Copilot AI tool, including a new comprehensive app that integrates existing capabilities and adds new features like Code and Autopilot.One sentence that states the event
100% filled
data.product
CopilotThe product in the launch
99.9% filled
data.url
https://www.cnbc.com/2026/09/25/microsoft-gives-copilot-a-much-needed-overhaul-and-the-stock-deservedly-soars.htmlThe source article
99.9% filled

Also in this record: title, planning, image_url, confidence, product_data, product_tags, published_at, effective_date, article_sentence

signal_id53bd1501-df70-483b-5f04-09376dca570e

Every field in the responseThe response, the signal envelope, the company block and the data fields of the signal selected above.Show all 58 fields

Green rows are filled in the record selected above: Microsoft Corporation, News: product launch.

Response

companyobject
The company you asked about (fields below)
signalsSignalResult[]
The signals that match your filters, up to limit
signal_summaryobject
Count of returned signals per type
coverage.total_before_filtersinteger
Signals on file before your filters
coverage.total_after_filtersinteger
Signals left after your filters
coverage.signal_types_availablestring[]
Types with at least one signal for this company
coverage.date_rangeobject | null
Earliest and latest signal date
warningsstring[]
Optional notes, such as an unknown subtype or dropped contact types

Signal

signal_idstring, filled in the selected example
Stable id. GET /v1/signals/{id} returns the signal
signal_typestring, filled in the selected example
The type, such as news, sec-8k or hiring-trends
signal_subtypestring, filled in the selected example
The event within the type
signal_namestring
Display name. Often empty: use data.summary
detected_atdatetime, filled in the selected example
When Autobound found it (UTC)
associationstring, filled in the selected example
"company" or "contact"

Company

company.namestring, filled in the selected example
The company the signal is about
company.domainstring, filled in the selected example
Root domain. The join key
company.linkedin_urlstring, filled in the selected example
Company LinkedIn page. May be a relative path
company.industriesstring[]
Industry labels, when known
company.employee_count_*integer
Headcount low and high, when known
company.revenuestring
Revenue range, when known
company.descriptionstring | null
Short description. Often null

news data

data.summarystring, filled in the selected example
One sentence that states the event
data.categorystring
Event class, on newer records
data.planningboolean, filled in the selected example
true = announced or planned, not done yet
data.effective_datedate, filled in the selected example
When the event takes effect
data.eventstring
Named conference or event
data.awardstring
Award won
data.recognitionstring
Ranking or analyst recognition
data.vulnerabilitystring
The issue, risk or incident
data.tickerstring
Exchange and symbol, e.g. NYSE:MA
data.related_company_namestring
The other party: target, investor, partner
data.related_company_domainstring
The other party's domain
data.amount_normalizedinteger
Deal, round or revenue amount in USD
data.amountstring
The amount as written, e.g. "US$1.4 billion"
data.financing_type_normalizedstring
series_a, series_b, debt, grant and more
data.financing_typestring
As written, e.g. "Series C"
data.financing_type_tagsstring[]
equity, debt, grant, ipo, seed or donation
data.contactstring
Person hired, promoted, leaving or speaking
data.job_titlestring
That person's title
data.job_title_tagsstring[]
Seniority and function tags
data.headcountinteger
Jobs added or cut
data.productstring, filled in the selected example
Product launched, built or bought
data.product_dataobject, filled in the selected example
name, full_text, release_type, release_version, fuzzy_match
data.product_tagsstring[], filled in the selected example
Product topic tags
data.assetsstring
Facility or asset, e.g. data center
data.assets_tagsstring[]
Asset topic tags
data.locationstring
Place as written
data.location_data[]object[]
city, state, zip_code, country, region, continent, fuzzy_match
data.titlestring, filled in the selected example
Article headline
data.urlstring, filled in the selected example
Article URL
data.authorstring
Byline, when stated
data.published_atdatetime, filled in the selected example
When the article came out
data.found_atdatetime
Extraction time, on newer records
data.article_sentencestring, filled in the selected example
The sentence the event came from
data.excerptstring
Opening text of the article
data.image_urlstring, filled in the selected example
Article image
data.confidencenumber, filled in the selected example
Extraction confidence, 0 to 1
…fuzzy_matchboolean, filled in the selected example
true = product or place matched loosely

Pricing and limits

You pay in credits for what a call returns. A call that returns no results is free.

See all plans →
Enrich a company
2creditsper signal returnedPOST /v1/companies/enrich
Free to start
1,000free credits at signup
Self-serve plans
$19Starter: 1,900 creditsPacks up to $4,999.
Rate limit
300requests per minutePer account, shared by all keys.

Questions

What does the company enrichment endpoint return?

Every signal Autobound has on the company, in one shape: signal_id, signal_type, signal_subtype, detected_at, company and a data object whose fields depend on the type. Add signal_types to choose types, signal_subtypes to narrow them (up to 25) and detected_after to set a time window. Up to 500 signals per call.

How do I identify the company?

Send domain (preferred), company_name or linkedin_url. Domain matches the exact root domain, so blog.acme.com does not match acme.com. If a domain finds nothing, retry with linkedin_url or company_name on its own.

How much does enrichment cost?

2 credits per signal returned. A call that returns nothing is free, and signals your filters exclude are not billed. The x-credits-charged response header shows what a call cost.

Can I get contact signals, such as job changes, from this endpoint?

No. Company enrichment returns company signals. If every type you ask for is a contact type, such as work-milestones, the call returns a 400 with no charge, and the error includes a POST /v1/contacts/search body to use instead.

How do I authenticate?

Send your API key in the X-API-KEY header, or as Authorization: Bearer <key>. A new account gets 1,000 free credits.

Make this call with your own key

One key works for all 35 signal types. 2 credits per signal returned. Calls with no results are free.

1,000 free credits to start.

Or use it from Claude Code, Cursor or any MCP client

Add the server, run /mcp to sign in, then ask: “What are the newest signals for microsoft.com?”

claude mcp add --transport http autobound https://mcp.autobound.ai/mcp

Use it in Claude via MCP →