Supported products
Supported products
Please note: this phase of the beta provides read-only endpoints for your forecasts. You cannot currently create, update, or delete forecasts using this API.
Scope requirements
To use the forecast endpoints, you’ll need to authorize thecrm.objects.forecasts.read scope for your app.
Retrieve forecast data
To retrieve all forecast submissions in your account, make aGET request to /crm/objects/2026-09-beta/forecasts and provide any comma-separated properties that you want included in the response using the ?properties query parameter.
For example, a GET request to https://api.hubspot.com/crm/objects/2026-09-beta/forecasts?properties=hs_created_by_user_id,hs_milestone,hs_team_id,hs_year,hs_included_deal_ids would result in a response that resembles the following:
GET request to crm/objects/2026-09-beta/forecasts/{id}.
The table below provides some common properties you might want to query for when using these APIs.
Retrieve forecast submission history
To retrieve the history of forecast submissions as events, make aGET request to /forecast-submissions/2026-09-beta/events, and include any of the query parameters detailed in the table below. Results are returned in descending chronological order (most recent first) and are paginated using a cursor.
Query parameters
A successful response will resemble the following:
Each event represents a single forecast submission action, which can either be the initial submission or a subsequent update. A single forecast object may have multiple events if its amount was updated over time.
Event properties
Each event in the response includes the following top-level fields:
The
properties map contains two kinds of fields: point-in-time submission values captured when the event occurred, and context fields hydrated from the associated forecast object.
The following submission properties are captured at the moment of submission:
The following context properties are hydrated from the associated forecast object:
If the forecast object associated with an event has been deleted, the event will still be returned but
archived will be set to true and the forecast context properties will be absent.Pagination
Results are paginated using a cursor. To retrieve the next page, pass theafter value from paging.next.after in the previous response as the after query parameter. When paging is absent from the response, you have reached the last page.
Retrieve forecast types
Forecast types define how HubSpot calculates and displays revenue projections in the forecasting tool. Each forecast type requires two properties:- Amount property: the aggregate value used in the forecast (e.g., a deal amount, ARR, or a custom revenue field).
- Date property: the time-based field to use for filtering (e.g., a close date or a custom date property).
amount and closedate deal properties. You can create up to four additional custom forecast types to forecast on different revenue metrics, such as forecasting on a Services Amount property for one-time or ongoing professional services revenue.
- When you create a custom forecast type, HubSpot automatically generates the supporting calculated properties to provide multi-currency support and probability-weighted projections.
- If your account has deal splits enabled, a matching set of properties will also be created on the deal split object.
GET request to /forecasting-settings/2026-09-beta/forecast-types.
A successful response will resemble the following:
GET request to /forecasting-settings/2026-09-beta/forecast-types/{id}.
The table below provides the properties available for each forecast type:
Deal split properties
When deal splits are enabled for an account, the returned forecast type includes a populateddealSplitProperties object. Deal splits allow a single deal’s revenue to be divided among multiple owners based on percentages.
Because deal splits are stored as a separate CRM object type, forecasts require additional properties to aggregate split amounts correctly. The dealSplitProperties property in the response maps the forecast type’s amount and date properties to their corresponding deal split equivalents.
Based on whether the forecast type is aggregated from the deal object or the deal split object, the following properties are provided within dealSplitProperties:
Deal related properties
The following properties are used when aggregating from the deal object:
Deal split related properties
The following properties are used when aggregating from the deal split object:
If a HubSpot user views their individual forecast with deal splits enabled:
- HubSpot will query the corresponding
deal_splitobject instead of thedealobject. - HubSpot will use the
dealSplitCustomAmountPropertyfield to get each sales rep’s portion of the revenue. - Currency conversion will use the value defined in the
dealSplitCustomAmountPropertyInHomeCurrencyfield. - Weighted projections will use the value defined in either the
dealSplitWeightedCustomAmountPropertyordealSplitWeightedCustomAmountPropertyInHomeCurrencyfields.
GET request to /forecasting-settings/2026-09-beta/forecast-types with the dealSplitProperties property populated: