New filters:The following endpoints now accept explicit date-range query parameters, named
after the date each object is keyed on. Both bounds are inclusive of the given
calendar day (
YYYY-MM-DD) and can be combined:- List Revenue Signals, Get Revenue Signals for a company and Get Revenue Signals for a saved company search —
revenue_signal_date_after/revenue_signal_date_before. When bothnewandrevenue_signal_date_afterare given, the explicit date wins. - Get News Signals for a company and Get News Signals for a saved company search —
news_publication_date_after/news_publication_date_before. - Get Talent Signals saved search results —
talent_signal_date_after/talent_signal_date_before. - Get Investor Interest Signals saved search results —
investor_signal_date_after/investor_signal_date_before. - Get investor funding rounds —
funding_announced_date_after/funding_announced_date_before.
New endpoints:AI SearchAI Search turns a natural-language query into a structured search across all products and returns matching records. Set
resource_type to target a specific product, or leave it empty to let the API infer it. Results use the same format as other endpoints and support page/limit pagination.Costs 1 credit per result — use limit=1 to check total_count before fetching more. User-scoped filters (network, CRM, saved lists) aren’t supported and will return a 422 error.New endpoints:Companies
- Resolve company ID — resolves a batch of alternate identifiers (domain, website, LinkedIn URL, or company name) into the Specter company
id, so you can then call the id-only company endpoints (revenue, valuation, people, …) without knowing the Specter ID upfront. Send up to 50 identifiers underto_resolveand get one result group per input, in order. Exact identifiers return a single match; a name is fuzzy-matched and returns up to 10 ranked candidates. Free — no credits are charged. - Get company competitors — returns the competitive landscape for a company: a ranked list of competitors, the dimensions the market splits on, and a summary of the landscape. The optional request body accepts
limit(1–30, default 30) andrefresh(defaultfalse). It’s cache-first — an already-analysed company returns instantly, while a cold company (orrefresh: true) computes the landscape on demand; results older than 30 days are recomputed automatically, andlast_updatedreports when it was last computed. Costs 1 credit per request.
- Get Revenue Signals for a company — returns a single company’s full revenue (and profitability) signal history in reverse chronological order (most recent first), identified by its Specter company ID. Supports
limit/pagepagination and anewtoggle that restricts results to signals published in the current week. Returns404when the company is unknown; a known company with no signals returns a 200 with an empty array. Costs 10 credits per signal returned.
Removed fields:Company response
revenue_estimate_usdhas been removed from the company object. This field carried an estimated annual revenue band that was almost alwaysnull, and is no longer returned by any endpoint that includes a company.
company.revenue_estimate_usd, stop relying on it.New endpoints:Companies
- Get Latest Revenue for a Company — returns the latest revenue figures and estimated revenue growth for a single company, by Specter company ID. Includes the estimated and last-reported revenue (with its reported metric type) plus estimated revenue growth across 1-month to 2-year windows. Costs 1 credit per request.
- Get Latest Valuation for a Company — returns the latest valuation figures and estimated valuation growth for a single company, by Specter company ID. Includes the estimated and last-reported post-money valuation plus estimated valuation growth across 1-month to 2-year windows. Costs 1 credit per request.
New endpoints:Revenue Signals
- Get Revenue Signal by ID — retrieve a single revenue (or profitability) signal by its Specter signal id (
rev_...). Each signal corresponds to one observation derived from news coverage or a public filing — the revenue (or profitability) figures, the year they refer to, the source URL, and the company they are attributed to. - List Revenue Signals — list revenue (and profitability) signals, newest first. Each item is the same signal object returned by Get Revenue Signal by ID.
- Get Revenue Signals for a company list — returns every revenue signal attributed to the companies in a given list, newest first. Companies outside the list are excluded. Lists with more than 5,000 member companies are capped at that limit; unknown or non-visible lists return
404. - Get Revenue Signals for a saved company search — returns every revenue signal attributed to the companies returned by a saved company search, newest first. Date-range queries live inside the saved search itself. Searches matching more than 5,000 companies are capped at that limit; unknown or non-visible searches return
404.
new=truerestricts the results to signals published in the current week.- Supports
limit/pagepagination. - These endpoints use 10 credits per signal returned.
Credit-limit responses now return 402Running out of credits now returns HTTP
402 instead of HTTP 429, so you can distinguish being credit‑limited from being rate‑limited:402with errorCodeOUT_OF_CREDITS— your team has no credits left for the current billing period. The response carries theX-CreditLimit-*headers, includingX-CreditLimit-Resetwith the seconds until credits renew.429with errorCodeRATE_LIMITED— unchanged; you sent too many requests per second.
429 as “out of credits”, update it to handle 402 for that case. Retry-on-429 logic can stay as is.Bulk EndpointsNew endpoints — bulk variants of the existing lookup and enrichment endpoints. Each accepts up to 50 identifiers in a single request, so you can resolve many records in one call instead of issuing them one at a time. For lookup endpoints, unknown identifiers are silently omitted; for enrichment endpoints each row carries a found/queued status (see the entry). Each uses 1 credit per record returned (misses/queued rows are not charged).Enrichment
- Bulk enrich companies by ID — bulk counterpart to Enrich companies; resolve companies by website, domain, LinkedIn URL/ID, or Crunchbase URL. Each row carries a status of found (with the company payload) or queued (an enrichment was started for an unknown company); only found rows are charged.
- Bulk enrich people by ID — bulk counterpart to Enrich people; resolve people by LinkedIn URL/ID/URN. Each row carries a status of found (with the person payload) or queued (async enrichment started); only found rows are charged.
- Bulk reverse email lookup — bulk counterpart to Reverse email lookup; reverse-lookup people from email addresses.
- Bulk get similar companies by ID — bulk counterpart to Get similar companies; find lookalike companies for multiple seed company IDs at once.
- Bulk get investors by ID — look up investors by website or name.
- Bulk get Talent Signals by ID — bulk counterpart to Get Talent Signal; fetch talent signals by ID. Duplicate IDs are honored.
- Bulk get Investor Interest Signals by ID — bulk counterpart to Get Investor Interest Signal by ID; fetch investor interest signals by ID. Duplicate IDs are honored.
Name based search for companies, people and investorsName-based search across companies, people and investors. Each search endpoint takes a required
query string (minimum 3 characters), returns up to 10 lightweight results sorted by descending match_confidence, and uses 1 credit per request regardless of how many matches come back. Chain the corresponding GET /{id} endpoint on any result for the full profile.People search- Search person name — fuzzy search for people by name. Returns up to 10 candidates, each with
id,full_name,headline,linkedin_url,profile_picture_url,current_company_name, and amatch_confidence. Only matches scoring at least 0.5 are returned; no match returns an empty list. This is a catalogue search and never triggers enrichment — to enrich a brand new LinkedIn identifier, keep using Enrich people.
- Search investor name — fuzzy search for investors by name. Returns up to 10 candidates, each with
id,name,domain,hq_location,founded_year,type, and amatch_confidence. Only matches scoring at least 0.5 are returned. Look up investors (lookup by website / exact name) is unchanged.
- Search company name now returns a
match_confidenceon every result and applies the same 0.5 threshold, so weak matches no longer appear.
match_confidence on a 0–1 scale, but they are derived differently. Investor search uses trigram similarity, which is absolute — scores are comparable across separate calls. People and company search scores are relative to the results within a single response and should not be compared between calls.New endpoints:Network MappingThree new endpoints expose your team’s LinkedIn network — the people your teammates are connected to, deduped across the team, and the companies they work at. Use them to find a warm path into a target company or to surface who on your team already knows a given contact.
- Get people in your team’s network — returns all people your team is connected to on LinkedIn, deduped across teammates. Each result includes which teammates hold the connection. Supports
limit/pagepagination and aconnected_onfilter (onlylinkedinis supported today). - Get companies in your team’s network — returns all companies where someone in your team’s network currently works, ordered by number of connections at each company. Each result includes the person IDs of your contacts there. Supports
limit/pagepagination and amin_connectionsfilter to only return companies with at least that many network contacts. - Get your team’s network at a company — returns your team’s connections at a specific company: who you know there, what roles they hold, and which teammates are linked to them. Returns
404when your team has no connections at the requested company.
- List your team’s members — returns all active members of your team: their user ID, role (admin or member), name, and email. Suspended users are excluded. Supports
limit/pagepagination. Theuser_idfield matches theconnected_teammatesvalues returned by the Network endpoints, so you can use it to resolve teammate IDs back to a named person. This endpoint uses 1 credit per request.
New endpoints:News Signals
- Get News Signal by ID — retrieve a single news signal by its integer Specter signal id. A news signal represents one classified company mention within a single article; when an article mentions multiple companies, each company yields its own signal.
- Get News Signals for a company — returns a company’s full news signal history in reverse chronological order (most recent first). Supports
limit/pagepagination and amajor_onlytoggle that restricts results to signals with importance score ≥ 4.
meaningful_updates detected (revenue, profitability, traction, funding, deals), an AI-generated summary of what’s new, and an importance score on a 0–5 scale.New endpoints:Investor lookup
- Look up investors — look up Specter investor records by
websiteand/ornamequery parameters. Returns the matching investor records with full detail (profile, activity, targeting, funds, portfolio companies). Use it to resolve an inbound mention of an investor — a domain on a deck, a firm name in a press release — to the canonical Specter ID for downstream calls.
- The endpoint returns a list of investors. A lookup can match more than one investor (e.g. multiple firms sharing a domain), so the endpoint returns all matches.
- When no investor matches, the response is
404 Not Found. - Query parameters: provide at least one of
websiteorname. Supplying both narrows the match. Missing both returns422.
New endpoints:Investors
- Get investor by ID — returns the full Specter investor record for a single investor ID, including profile, targeting, funds, and portfolio companies. Useful for enriching a known investor, pulling portfolio company IDs for downstream calls, or inspecting targeting (industries, verticals, stages) before outreach.
- Get investor saved search details — returns the name, query ID, and total matched-investor count for a saved investor search. Use it to confirm a search is bound to the expected query, or to surface counts in a UI without fetching results.
- Get investor saved search results — returns the investors matching a saved investor search with full detail (profile, activity, targeting, funds, portfolio companies). Supports
limit(default 50, max 5000) andpage(0-indexed).
- Get all investor lists — returns all investor lists created with the API, shared with the API, or shared globally, including the count of investors in each list.
- Create a new investor list — create a new investor list.
- Get specific investor list info — retrieve details of a specific investor list, including the investor IDs it contains.
- Modify an investor list — modify an existing investor list.
- Delete an investor list — delete an investor list.
- Get investor list results — returns the investors in a specific list along with their current profile, activity, and targeting data. The list must be of product type investors and must be shared with the API or created by the API.
- Get funding round by ID — a single round with its raising company and full investor list (lead flagged).
- Get company funding rounds — paginated funding history for one company.
- Get investor funding rounds — paginated list of rounds an investor has participated in.
- Get acquisition by ID — a single acquisition with acquirer and acquiree context.
- Get company acquisitions — acquisitions where the given company is the acquirer.
- Get IPO by ID — a single IPO with the issuing company, exchange and ticker symbol, listing date, and proceeds in USD.
- Get company IPOs — IPOs by company.
New endpoints:API Call Logs
- List API call logs — returns a paginated list of API calls made by your organization, ordered by most recent first. Use it to audit which endpoints your integration is hitting, debug failed calls by inspecting HTTP status codes and paths, and monitor usage trends across your team.
limit/page— pagination controlsfrom/to— date range filter for log entries
timestamp— UTC timestamp of the callpath— request path (e.g./v1/companies)url— full URL including query stringhttp_method— HTTP verb usedhttp_status— HTTP status code returnedstatus— logical status (okorerror)query— query parameters sent with the request (nullable)
New parameters:Talent search results & Investor Interest search resultsBoth endpoints now accept a
new query parameter (boolean, default false). When set to true, results are restricted to signals from the current week, overriding any SignalDate filter that is stored in the saved search. This is equivalent to applying a “This week” signal date filter without modifying the saved search itself — useful for polling integrations that always want the latest batch of signals.Affected endpoints:New fields:Company response
- Pitchbook URL —
company.socials.pitchbook.url - Crunchbase URL —
company.socials.crunchbase.url - HQ regions —
company.hq.regions - HQ continent —
company.hq.continent - Glassdoor data —
company.glassdoor - Glassdoor rating metrics —
company.traction_metrics.glassdoor_rating - Glassdoor reviews metrics —
company.traction_metrics.glassdoor_reviews
- Signal Summary —
talent.signal_summary - Experience Industry —
talent.experience[].industry - Experience Tech Verticals —
talent.experience[].tech_verticals - New position industry —
talent.new_position_industry - New position tech verticals —
talent.new_position_tech_verticals - Is new position industry estimated —
talent.is_new_position_industry_estimated
- Signal Summary —
investor_interest.signal_summary - Person Industry —
investor_interest.person.industry - Person Tech Verticals —
investor_interest.person.tech_verticals - Person Is industry estimated —
investor_interest.person.is_industry_estimated - Company Industry —
investor_interest.company.industry - Company Tech Verticals —
investor_interest.company.tech_verticals - Company Is industry estimated —
investor_interest.company.is_industry_estimated - Company Customer Focus —
investor_interest.company.customer_focus
- HQ region — move to
company.hq.continent.
Features:Enrich/Get Person
- People can now be retrieved via the
linkedin_num_idand thelinkedin_urn.
linkedin_urn— the URN of the person being returned, can be empty.
New fields:Person responses
linkedin_num_id— can be used to link a person to a URN.last_updated— a timestamp of when the person was last updated in the Specter dataset.
New endpoints:Reverse email lookup
- Reverse email lookup — when you have an email address and need to resolve it to a Specter person record so you can standardize contacts, enrich them, or link inbound emails to the correct individual in our database.
- Text search — turn unstructured text (press releases, bios, notes) into structured entity references you can track, enrich, and join to your downstream systems.
New endpoints added that give the ability to query for investor interest signals.
New endpoint added which gives the ability to Search company name and get back basic information for them given a query term.
Two new fields have been added to all endpoints which return companies.
founders_info— gives more information about the founders including thespecter_person_idwhich allows for the person to be looked up either in the App, or via the People API.specter_strategic_signal_ids— which indicate strategic signals related to the company.
- Added a new filter to the Get company people endpoint allowing anyone that is a CEO to be returned. This new filter can only be used on its own and founders and department won’t be taken into account with this filter.
- Updated all search and list endpoints to work with a new Share to API toggle. This allows lists and searches to be shared with the API without sharing them with the team.
A new endpoint for Get person’s email has been released which allows you to retrieve the professional or personal email address for a person based on their ID.
- Added endpoints for enrichment of people, which will notify us if there are people we do not have so we can retrieve them.
- Added endpoints for People and Talent Signals, allowing you to manage and get both using the API.
Added Get similar companies which returns a list of ids for companies that are similar to the company id being requested. This helps you uncover high-potential companies similar to the one you’re referencing and is a powerful way to identify new opportunities, uncover competitors, or expand your investment pipeline with minimal effort.
First release of the API including:
- Enrichment API — querying to get companies based on parameters (LinkedIn URL, LinkedIn ID, domain, etc.).
- Companies API — get companies by Specter ID or list, and manage lists.
- Searches API — get all available searches and query for companies by search ID.