Returns the latest known forecast and granted purchase points for each order.
Changed onData availability
Data comes from the latest completed daily snapshot, not a live calculation. Check HasPublishedSnapshot, SnapshotStartedAt and SnapshotCompletedAt to identify its availability and age. Without a published snapshot, Items is empty and HasPublishedSnapshot is false. The report must be enabled for the tenant.
Date range
Both from and to filter OrderPlacementDate: the date and time the order was placed in the source platform. They do not filter the point grant date, expected availability date, cancellation date or snapshot date. Both boundaries are inclusive and converted to UTC before comparison. Times are preserved; the API does not expand dates to the start or end of the day. Send ISO 8601 timestamps with Z or an explicit UTC offset. For example, from=2026-09-01T00:00:00Z and to=2026-09-01T23:59:59.9999999Z cover September 1 in UTC. A to value of 2026-09-01T00:00:00Z includes only midnight at that boundary, not the rest of September 1. URL-encode a positive offset's plus sign as %2B.
Forecast and granted values
- Pending items contain Forecast and no Grant.
- Granted items contain Grant and preserve Forecast when the order appeared as pending in an earlier snapshot.
- Historical grants may not have a Forecast.
- Grant keeps the original persisted granted values; NetPoints, NetCashback and Reversal reflect later reversals.
Grant.Points and Grant.Cashback are gross historical values. Grant.Base and Grant.Campaigns represent remaining net contributions after reversals, relative to NetPoints. Historical attribution may be incomplete; on full reversal Grant.Campaigns is empty. Base is null when historical details cannot establish the base contribution. A winning advanced scenario has zero Base and its Campaigns contain the full contribution of the winning rules. Cashback components are rounded independently and may not sum to the total.
Combining filters and pagination
Supplied filters are combined with AND. Omitted optional filters do not restrict the result. Campaign and attribution filters match Forecast allocations for Pending orders and Granted allocations for Granted orders. Campaign and attribution criteria must match the same allocation. Matching orders retain all their allocations and totals. Nonempty campaignKeys take precedence over campaignIds. Summary and TotalItemCount cover all matching orders; Items contains only the requested page, ordered by OrderPlacementDate descending, then internal order ID descending.
Request
- Base URLhttps://api.bonifiq.com.br
- AuthHTTP basic
Query parameters
Inclusive lower boundary of OrderPlacementDate (when the order was placed), in ISO 8601 format. If omitted, the minimum DateTimeOffset value is used, effectively including all earlier orders. Does not filter when points were granted.
Inclusive upper boundary of OrderPlacementDate (when the order was placed), in ISO 8601 format. If omitted or default, the current UTC date and time is used. The supplied time is preserved; a date at midnight does not include the rest of that day.
0 = Granted 1 = Pending
Optional points state: Granted (0) for granted points or Pending (1) for forecast points awaiting grant. This is not the order's fulfillment status. Omit to include both; use isCancelledOrReversed to filter cancellations or reversals separately.
Optional availability flag recorded in the snapshot. true selects orders whose grant availability date had arrived, or which had no availability date; false selects orders whose availability date was still in the future. This flag alone does not mean points were granted. Combine with state=Pending to select pending orders whose availability date is no longer in the future. Omit to include both.
Optional cancellation/reversal flag recorded in the snapshot. true includes only orders marked as cancelled or with reversed points; false excludes them. Omit to include both. Inspect Grant, NetPoints, NetCashback and Reversal for the granted and remaining values.
Optional exact match on the order ID from the source platform, not the internal BonifiQ order ID. Leading and trailing whitespace is ignored; an empty value does not filter.
Optional exact match on the customer's original ID from the source platform, not the customer's BonifiQ public ID, email or document. Leading and trailing whitespace is ignored; an empty value does not filter.
Optional campaign IDs, matched across both Legacy purchase schedules and AdvancedRule sources. Ignored when nonempty campaignKeys is supplied. Repeat the query parameter for multiple IDs, for example campaignIds=123&campaignIds=456. Selects orders with an allocation for at least one supplied campaign, not necessarily all of them. Omit to include orders regardless of campaign.
0 = Exact 1 = Inferred
Optional campaign allocation source: Exact (0) for attribution based on persisted per-campaign calculation details, or Inferred (1) for attribution reconstructed from available calculation data. Selects orders with at least one allocation of that source. Omit to include all sources and orders without campaign allocations.
Page number, starting at 1. Default: 1. Values below 1 return HTTP 400.
Requested number of orders per page. Default: 10; maximum: 10000. Values below 1 return HTTP 400. A configured tenant report page size overrides this request, subject to the same maximum. Check PageSize in the response for the effective size.
Optional campaign IDs qualified by source, taking precedence over campaignIds. Example: campaignKeys[0].CampaignId=5&campaignKeys[0].CampaignSource=AdvancedRule. CampaignSource accepts Legacy (0) or AdvancedRule (1). Use consecutive indexes [1], [2], etc. for additional keys. An allocation matching any supplied key qualifies.
Response
Snapshot metadata, a summary of all matching orders, and the requested page of orders with forecast, grant, reversal and campaign allocation details.
Changes
- info
added the new optional
queryrequest parametercampaignKeys - info
added the optional property
///////////to the response with the status - info
added the optional property
/////////////////to the response with the status - info
added the optional property
///////////to the response with the status - info
added the optional property
/////////////////to the response with the status
- info
- info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- info