Skip to content

Windowed attribution, cash collection and recorded cost coverage

GET
/api/v1/attribution/roi-rollup
curl --request GET \
--url 'https://api.ultimateteam.ai/api/v1/attribution/roi-rollup?window=1' \
--header 'X-API-Key: <X-API-Key>'

Return the windowed rollup + per-decision drill-down (OAV-04).

Tenant-isolated via UserContext.tenant_id. Monetary aggregates are USD-only; missing measurements remain null. Cash collection is separate from attributed revenue, and neither demonstrates incrementality. Returns 422 for unsupported windows.

window
required
Window

Rollup window in days: 30, 60, or 90

integer

Rollup window in days: 30, 60, or 90

Successful Response

Media typeapplication/json
AttributionROIRollup
object
decisions
Decisions
Array<object>
RollupDecision
object
action_type
required
Action Type
string
agent_role
required
Agent Role
string
avg_confidence
required
Any of:
number
cost_credits
required
Cost Credits
integer
created_at
required
Created At
string format: date-time
decision_id
required
Decision Id
string format: uuid
edge_count
required
Edge Count
integer
weighted_revenue_cents
required
Any of:
integer
generated_at
Generated At
string format: date-time
summary
required
RollupSummary
object
cost_recorded_task_count
Cost Recorded Task Count
integer
0
currency
Currency
string
default: USD
decision_count
Decision Count
integer
0
excluded_currency_record_count
Excluded Currency Record Count
integer
0
execution_cost_basis
Execution Cost Basis
string
default: Completed task cost_usd recorded from model usage estimates; window-wide, not allocated to attributed decisions or reconciled invoices. Excludes unrecorded execution, tools, platform fees and other business costs.
execution_task_count
Execution Task Count
integer
0
full_profit_cents
Full Profit Cents
null
measurement_basis
Measurement Basis
string
default: heuristic_weighted_attribution_not_incremental_revenue
recorded_execution_cost_usd
Any of:
string
/^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
revenue_per_decision_cents
Any of:
number
roi_ratio
Roi Ratio
null
total_attributed_revenue_cents
Any of:
integer
total_cash_collected_cents
Any of:
integer
total_cost_credits
Total Cost Credits
integer
0
unavailable_reason
Unavailable Reason
string
default: Incremental revenue and total business costs are not measured. Cash collection is not newly earned revenue; credits are billing units.
tenant_id
required
Tenant Id
string format: uuid
window_days
required
Window Days
integer
Example
{
"summary": {
"cost_recorded_task_count": 0,
"currency": "USD",
"decision_count": 0,
"excluded_currency_record_count": 0,
"execution_cost_basis": "Completed task cost_usd recorded from model usage estimates; window-wide, not allocated to attributed decisions or reconciled invoices. Excludes unrecorded execution, tools, platform fees and other business costs.",
"execution_task_count": 0,
"measurement_basis": "heuristic_weighted_attribution_not_incremental_revenue",
"total_cost_credits": 0,
"unavailable_reason": "Incremental revenue and total business costs are not measured. Cash collection is not newly earned revenue; credits are billing units."
}
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}