> ## Documentation Index
> Fetch the complete documentation index at: https://api.tryspecter.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Revenue Signals

> Revenue and profitability data points for companies, extracted from news coverage and public filings; each with its figure, year, source, and company.

Revenue and profitability signals from news, filings, and public disclosures. Revenue Signals capture structured financial data points for companies (revenue, ARR, and profitability), each with a source, time period, and company attribution. Each signal is a single observation tied to a company and a point in time.

## Data categories

* **Revenue metrics.** `metric` (ARR, Revenue, or GMV), `annualized_usd`, `year`.
* **Profitability.** `is_profitable`, `profitability_annual_usd`, `profitability_year` (when available).
* **Timing.** `reference_date` (the period the figure refers to) and `signal_date` (when it was observed).
* **Source.** `source_type` (news, social, or public), `source_url`.
* **Context.** `tags` (e.g. `PROJECTION`, `public`), `whats_new`, `context`.
* **Company link.** `entity_id` (company ID) and `company_name`.

```json Example (trimmed) theme={null}
{
  "signal_id": "rev_e3b0c44298fc1c149afbf4c8996fb924",
  "signal_date": "2025-06-15",
  "entity_id": "66d926166261234567890123",
  "company_name": "Acme Corp",
  "metric": "ARR",
  "annualized_usd": 40000000,
  "year": 2025,
  "is_profitable": true,
  "tags": ["PROJECTION"],
  "source_url": "https://www.example.com/articles/acme-q2-update"
}
```

## Endpoints

| Method | Endpoint                                                                                                                        | Returns                                                                              |
| ------ | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| `GET`  | [Get Revenue Signal by ID](/api-reference/revenue-signals/get-revenue-signal-by-id)                                             | A single revenue signal                                                              |
| `GET`  | [Get company revenue signals](/api-reference/companies/get-company-revenue-signals)                                             | A single company's full revenue-signal history (by Specter company ID), newest first |
| `GET`  | [Get revenue signals by date](/api-reference/revenue-signals/get-revenue-signals-by-date)                                       | Revenue signals pinned to your lists                                                 |
| `GET`  | [Get Revenue Signals for a company list](/api-reference/revenue-signals/get-revenue-signals-for-a-company-list)                 | Signals for the companies in a list                                                  |
| `GET`  | [Get Revenue Signals for a saved company search](/api-reference/revenue-signals/get-revenue-signals-for-a-saved-company-search) | Signals for a saved company search                                                   |

## How to use the API

**Start with what you have**

* A Specter company ID → [Get company revenue signals](/api-reference/companies/get-company-revenue-signals). Only have a domain or name? [Find company ID](/api-reference/companies/find-company-id) first, then call this with the returned `company_id`.
* A list → [Get Revenue Signals for a company list](/api-reference/revenue-signals/get-revenue-signals-for-a-company-list).
* A saved search → [Get Revenue Signals for a saved company search](/api-reference/revenue-signals/get-revenue-signals-for-a-saved-company-search).
* Your pinned lists → [Get revenue signals by date](/api-reference/revenue-signals/get-revenue-signals-by-date).

**Track updates**

* Set `new=true` to restrict results to the current week, and poll periodically to monitor changes.

**Expand from a signal**

* Company → follow `entity_id` to [Get company by ID](/api-reference/companies/get-company-by-id).
* Full detail → [Get Revenue Signal by ID](/api-reference/revenue-signals/get-revenue-signal-by-id).

## Notes

* Signal IDs are prefixed `rev_`.
* `entity_id` may be null when the company is referenced upstream but isn't in Specter's company DB.
* `tags` qualify the figure: `PROJECTION` means a forecast, `public` means a public-filing figure.
* Financial fields are null when not disclosed.
* Revenue signals are premium data: the company, list, and search endpoints are charged per signal returned and cost more than other signals; the by-ID lookup is charged per request. See each endpoint's "Costs" note for exact figures.
* `new=true` limits to the current week; `limit`/`page` paginate. Lists or searches over 5,000 companies are capped at that limit; unknown or non-visible ones return `404`.
