API for iblai
- analytics_financial_retrieve
ibl-data-manager (4.84.1-ai-plus)
today- Today only7d- Last 7 days30d- Last 30 days90d- Last 90 daysall_time- All timecustom- Custom date range
Content type to fetch (course, program, pathway, skill)
course- coursecourses- coursesprogram- programprograms- programspathway- pathwaypathways- pathwaysskill- skillskills- skills
- Mock serverhttps://docs.ibl.ai/_mock/apis/ibl/api/analytics/content/details/{content_id}/
- https://base.manager.iblai.app/api/analytics/content/details/{content_id}/
- 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/content/details/{content_id}/?date_filter=today&end_date=2019-08-24&limit=10&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&metric=course&page=1&platform_key=string&search=string&start_date=2019-08-24&time_metric=string' \
-H 'Authorization: YOUR_API_KEY_HERE'Serializer for the content information block.
Serializer for summary data in the content details endpoint.
Total counts related to the content item
Average values related to the content item
Serializer for pagination information in content details response.
Date the learner enrolled in the content
{ "content_info": { "id": "string", "name": "string", "type": "string", "slug": "string", "platform": "string", "external": true, "metadata": { … } }, "summary": { "totals": { … }, "averages": { … }, "time_series": { … } }, "pagination": { "count": 0, "next": "string", "previous": "string", "current_page": 0, "total_pages": 0 }, "learners": [ { … } ] }
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": [ { … } ] }