API for iblai
- analytics_financial_details_retrieve
ibl-data-manager (4.84.1-ai-plus)
Request
Financial Analytics API - Get comprehensive cost metrics with comparison analysis.
This endpoint provides period-based cost analysis (not cumulative) with support for:
- Multiple time granularities and metrics
- Cross-dimensional filtering
- Percentage change vs comparison periods
- Forward-filled time series
Examples:
Basic Weekly Costs:
GET /api/analytics/financial/?metric=weekly_costs&comparison_days=10Platform & Mentor Filtered:
# Get total costs for a specific platform and mentor
GET /api/analytics/financial/?metric=total_costs&platform_key=web-app&mentor_unique_id=mentor-123&comparison_days=14Monthly Costs by Provider:
GET /api/analytics/financial/?metric=monthly_costs&provider=openai&granularity=month&comparison_days=30Daily Costs for Specific User:
GET /api/analytics/financial/?metric=total_costs&username=user-456&granularity=day&start_date=2025-01-15&end_date=2025-01-21&comparison_days=7Response Structure:
{
"metric": "weekly_costs",
"value": 12.47,
"percentage_change": 8.5,
"overtime": [
{"date": "2025-01-06", "value": 2.89},
{"date": "2025-01-13", "value": 3.12}
],
"period_info": {
"start_date": "2025-01-01",
"end_date": "2025-01-31",
"period_days": 31
},
"comparison_info": {
"previous_period_value": 11.50,
...
}
}Number of days for comparison period to calculate percentage change (e.g., 10 for 10-day comparison)
today- Today only7d- Last 7 days30d- Last 30 days90d- Last 90 daysall_time- All timecustom- Custom date range
Method for filling missing time periods in overtime data
zero- Fill missing periods with zeroprevious- Fill missing periods with previous value
Time granularity for overtime series data
day- Daily data pointsweek- Weekly data pointsmonth- Monthly data points
Type of financial metric to retrieve
total_costs- Total costs for selected timeframeweekly_costs- Costs for current/selected weekmonthly_costs- Costs for current/selected month
Filter by AI provider
openai- OpenAIanthropic- Anthropicazure- Azuregoogle- Googlemeta- Metaother- Other
- Mock serverhttps://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/
- https://base.manager.iblai.app/api/analytics/financial/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/?comparison_days=1&date_filter=today&end_date=2019-08-24&fill_method=zero&granularity=day&llm_model=string&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&metric=total_costs&platform_key=string&provider=openai&show_overtime=true&start_date=2019-08-24&username=string' \
-H 'Authorization: YOUR_API_KEY_HERE'Response for total_costs metric.
{ "metric": "total_costs", "filters": { "start_date": "2025-01-01", "end_date": "2025-01-31", "granularity": "day", "comparison_days": 10 }, "value": 45.789, "percentage_change": 15.2, "overtime": [ { … }, { … }, { … }, { … }, { … } ], "period_info": { "start_date": "2025-01-01", "end_date": "2025-01-31", "period_days": 31, "range_type": "custom" }, "comparison_info": { "previous_period_count": 10, "previous_period_value": 39.654, "comparison_start": "2024-12-22", "comparison_end": "2024-12-31", "comparison_days": 10, "recent_period_value": 45.789 } }
Request
Financial Details Analytics API – paginated cost tables with flexible grouping.
This endpoint returns tabular cost metrics aggregated by the dimension specified via the group_by query parameter. One or more KPI columns can be requested through the comma-separated metrics list while typical filters (date range, provider, platform_key, user, etc.) narrow the dataset. Results are paginated with page / limit.
Required query parameters
- group_by – provider | llm_model | username | mentor | platform
- metrics – csv list of KPI names, e.g. total_cost, sessions
Shared optional filters
- start_date, end_date – ISO yyyy-mm-dd (ignored when all_time=true)
- platform_key – tenant isolation
- mentor_unique_id – filter to one mentor
- username – filter to a learner
- provider / llm_model – filter to LLM provider / model
- all_time – true → lifetime totals
- page (default 1), limit (default 50)
Examples
- Cost by provider for the last week
GET /api/v2/analytics/financial/details?
group_by=provider&
metrics=total_cost&
start_date=2025-01-01&
end_date=2025-01-07&
page=1&limit=10- Lifetime cost per user with extra KPIs
GET /api/v2/analytics/financial/details? group_by=username& metrics=total_cost,sessions& all_time=true&page=1&limit=50 - Cost by LLM model with tenant filter
GET /api/v2/analytics/financial/details?
group_by=llm_model&
metrics=total_cost&
platform_key=web-app&
start_date=2025-01-01&end_date=2025-01-31Response structure
{
"page": 1,
"limit": 10,
"total_pages": 1,
"total_records": 3,
"rows": [
{"provider": "openai", "total_cost": "2.50000"},
{"provider": "anthropic", "total_cost": "1.00000"},
{"provider": "azure", "total_cost": "0.50000"}
],
"metrics": [
{
"name": "total_cost",
"unit": "$",
"description": "Cost for this entity in period"
}
],
"total_cost": "4.00000" // optional grand-total when available
}
``today- Today only7d- Last 7 days30d- Last 30 days90d- Last 90 daysall_time- All timecustom- Custom date range
Dimension to group by
provider- Group by providerllm_model- Group by LLM modelusername- Group by usernamementor- Group by mentorplatform- Group by platformaction- Group by actions
Comma-separated list of metrics (e.g. total_cost,sessions, last_active)
- Mock serverhttps://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/details/
- https://base.manager.iblai.app/api/analytics/financial/details/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/details/?date_filter=today&end_date=2019-08-24&group_by=provider&limit=20&llm_model=string&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&metrics=total_cost&page=1&platform_key=string&provider=string&search=string&start_date=2019-08-24&username=string' \
-H 'Authorization: YOUR_API_KEY_HERE'{ "page": 0, "limit": 0, "total_pages": 0, "total_records": 0, "rows": null, "total_cost": "string", "metrics": [ { … } ] }
Request
Flexible Invoice Report API – Billing summary with username and platform filtering.
This endpoint generates invoice reports with flexible filtering options:
- Platform admins can view their platform's data and filter by username within their platform
- Super admins can view any combination of username/platform or global summaries
Key Features:
- Flexible filtering by username and/or platform_key
- Essential metrics: total cost, sessions, usage period
- Provider breakdown (OpenAI, Anthropic, etc.)
- Top mentors/actions by cost
- Clean, invoice-ready format
Query Parameters:
- username: Filter by specific username (optional)
- platform_key: Filter by platform (optional, but required for platform admins)
- start_date, end_date: billing period (defaults to last 30 days)
- include_breakdown: show provider/mentor details (default: true)
Permission Logic:
- Platform admins: Must include platform_key matching their permission scope
- Super admins: Can use any combination of filters or none (global summary)
Examples:
# Platform admin viewing their platform
GET /api/analytics/financial/invoice?platform_key=web-app
# Platform admin viewing specific user in their platform
GET /api/analytics/financial/invoice?platform_key=web-app&username=john.doe
# Super admin viewing specific user across all platforms
GET /api/analytics/financial/invoice?username=john.doe
# Super admin viewing global summary
GET /api/analytics/financial/invoiceResponse Structure:
{
"entity": {
"type": "user|platform|global",
"username": "john.doe",
"platform_key": "web-app",
"platform_name": "Web Application",
"display_name": "John Doe on Web Application"
},
"billing_period": {
"start_date": "2025-01-01",
"end_date": "2025-01-31",
"days": 31
},
"summary": {
"total_cost": 245.750,
"total_sessions": 1250,
"active_users": 85,
"cost_per_session": 0.196
},
"breakdown": {
"by_provider": [...],
"by_mentor": [...],
"by_action": [...]
}
}- Mock serverhttps://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/invoice/
- https://base.manager.iblai.app/api/analytics/financial/invoice/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/financial/invoice/?end_date=2019-08-24&include_breakdown=true&platform_key=string&start_date=2019-08-24&username=string' \
-H 'Authorization: YOUR_API_KEY_HERE'{ "entity": { "type": "platform", "platform_key": "web-app", "platform_name": "Web Application", "display_name": "Web Application" }, "billing_period": { "start_date": "2025-01-01", "end_date": "2025-01-31", "days": 31 }, "summary": { "total_cost": "245.750", "total_sessions": 1250, "active_users": 85, "cost_per_session": "0.196" }, "breakdown": { "by_provider": [ … ], "by_mentor": [ … ] } }