Agentic Consensus Reference

How the estimates response is built: reported and forecast periods, GAAP and adjusted lines, omitted lines, withheld values and flags.

Agentic Consensus Reference

GET /v1/company/estimates returns a company's forward estimates, built from company guidance, a statistical model and our own AI estimate, together with the periods the company has already reported. The schema below documents every field. This page covers what the schema can't: how the periods and lines are chosen, and what the flags mean.

API Key Required
Set your API key to test the endpoints directly from the documentation.
Need a key? Get your API key →
GET/v1/company/estimates

Get Agentic Consensus estimates for a company

Returns our forward estimates for a company's quarters and fiscal years, in its reporting currency. data opens with recently reported periods, each holding our pre-print estimate and the filed actual. Each cell has the estimate (mean), its high/low range, its source (company guidance, our model or our AI estimate) and flags. eps_gaap, net_income, ebit and ebitda carry the GAAP figure; eps_adjusted, net_income_adjusted, ebit_adjusted and ebitda_adjusted the company-adjusted one. The Agentic Consensus Reference (https://docs.fiscal.ai/docs/reference/estimates) explains periods, lines and flags. Keys without Agentic Consensus access get the free-plan companies.

Parameters

companyrequired

Fiscal.ai stable company identifier (the companyFiscalIdentifier field). An alternative to ticker/micCode/exchange.

includeReportedPeriodsboolean

Include recently reported periods (our pre-print estimate and the filed `actual`). Default `true`.

Request
curl "https://api.fiscal.ai/v1/company/estimates" \
  -H "X-Api-Key: $FISCAL_API_KEY"
Response
Estimates for the company
▾{
"companyKey": "NASDAQ_MSFT"
"companyFiscalIdentifier": "FSCLC6CGT4DXS597"
"fiscalYearEndMonth": 6
"currency": "USD"
"updatedAt": "2026-04-29T12:00:00Z"
"engineVersion": "1a2b3c4d-..."
"primaryEpsBasis": "adjusted"
▾"data": [
▾{
"periodId": "3_Quarterly_2026-03-31"
"periodType": "Quarterly"
"reportDate": "2026-03-31"
"periodDuration": "3 Months"
"calendarYear": 2026
"calendarQuarter": 1
"fiscalYear": 2026
"fiscalQuarter": 1
"earningsDate": null
"earningsTimeOfDay": null
▾"metricsValues": {
}
}
]
}

Periods

  • data is in fiscal order: fiscal years ascending, each year's quarters, then its annual row.

  • It opens with the last 12 reported quarters and the newest 7 filed years. On those periods each cell keeps the estimate we served before the print, and actual holds the filed number. Pass includeReportedPeriods=false to get the forecast periods only.

  • A forecast period drops out once its report is overdue, so forecast periods can have gaps. That is 120 days after a second quarter ends, 180 days after a fourth quarter or fiscal year ends, 211 days after a first quarter and 272 days after a third quarter (a half-year filer reports those with the half).

  • periodId joins a reported period to the financials response's data[].periodId.

Lines

  • eps_gaap, net_income, ebit and ebitda carry GAAP figures. eps_adjusted, net_income_adjusted, ebit_adjusted and ebitda_adjusted carry the company's adjusted figures.

  • primaryEpsBasis says which EPS line is the company's headline; show that one first. You can't work it out from the cells, because a company whose headline is adjusted can still serve values on both lines.

  • An adjusted line is served only for a company that reports that adjusted figure itself, or in a period its own guide covers. Otherwise the cell is null with adjusted_history_insufficient. For a company that reports no adjusted figure, our AI estimate can serve on the matching GAAP line instead.

  • A line that doesn't fit the company's sector, such as free cash flow for a bank, is left out of metricsValues rather than served empty. A company's own guide on such a line is still served for the periods it covers.

  • capex is negative, the cash-flow sign. The guidance endpoint serves capex positive, as the company printed it.

  • cash_and_cash_equivalents includes short-term investments, the same figure as the financials line balance_sheet_total_cash_and_cash_equivalents.

Withheld model values

A model cell on a forecast period is null with data_unavailable in two cases besides plain gaps in the data:

  • The company has stopped reporting the line: it is missing from its last four filed quarters and its newest filed year.

  • Our latest model fit for the company failed its publish checks. Model cells stay withheld until a later fit passes; guided and AI estimate cells still serve.

Flags

Flag

Meaning

data_unavailable

Null because no value is available and no more specific flag applies.

out_year_unanchored

An out-year value was withheld as unanchored and implausible against recent results.

adjusted_history_insufficient

No adjusted value: the company doesn't report this adjusted figure, or its adjusted history is too short.

net_leverage_undefined

Net leverage isn't meaningful here (net cash, or trailing EBITDA negative or near zero).

sign_conflicts_with_recent_actuals

Withheld because its sign is opposite to a run of consistently signed reported quarters.

agentic_consensus_fy_below_booked

The AI estimate's annual figure is below what the company has already booked this year. Usually served as is, so the gap shows; on the GAAP net income and EPS lines of a company that reports no adjusted EPS, that year is withheld instead.

annual_quarter_sum_mismatch

The reported annual differs from the sum of its filed quarters by more than a small tolerance.

cyclical_trough_uncertainty

The forecast sits at a cyclical trough, where uncertainty is higher.

pre_revenue_launch_uncertainty

A pre-revenue company whose launch timing makes the forecast highly uncertain.

Provenance

provenance.guidance is filled in only on a guided cell that carries source evidence, and only for API keys with the guidance feature. Everywhere else it is null.