Skip to content

Commit 3f27959

Browse files
committed
filters
1 parent abd629b commit 3f27959

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

dashboard/ai-analytics/src/services/tinybird.ts

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,23 @@ export interface TinybirdParams {
1212

1313
export async function fetchLLMUsage(params: TinybirdParams = {}) {
1414
const searchParams = new URLSearchParams();
15+
16+
// Handle column_name separately as it's used for grouping
17+
if (params.column_name) {
18+
searchParams.set('column_name', params.column_name);
19+
}
20+
21+
// Handle all other filter parameters
22+
const filterParams = ['model', 'provider', 'organization', 'project', 'environment', 'user'];
23+
filterParams.forEach(param => {
24+
if (params[param as keyof TinybirdParams]) {
25+
searchParams.set(param, params[param as keyof TinybirdParams]!);
26+
}
27+
});
28+
29+
// Handle date range
1530
if (params.start_date) searchParams.set('start_date', params.start_date);
1631
if (params.end_date) searchParams.set('end_date', params.end_date);
17-
if (params.organization) searchParams.set('organization', params.organization);
18-
if (params.project) searchParams.set('project', params.project);
19-
// Default to 'model' if column_name is not provided
20-
searchParams.set('column_name', params.column_name || 'model');
2132

2233
const response = await fetch(
2334
`${TINYBIRD_API_URL}/v0/pipes/llm_usage.json?${searchParams.toString()}`,
@@ -28,6 +39,10 @@ export async function fetchLLMUsage(params: TinybirdParams = {}) {
2839
}
2940
);
3041

42+
if (!response.ok) {
43+
throw new Error('Network response was not ok');
44+
}
45+
3146
return response.json();
3247
}
3348

0 commit comments

Comments
 (0)