Files
tgex-frontend/lib/api/analytics.ts
2025-12-29 10:12:13 +03:00

53 lines
1.4 KiB
TypeScript

// ============================================================================
// Analytics API
// ============================================================================
import { api } from "./client";
import type {
PlacementAnalyticsItem,
CreativeAnalyticsItem,
ChannelAnalyticsItem,
SpendingAnalytics,
AnalyticsQueryParams,
SpendingAnalyticsQueryParams,
PaginatedResponse,
} from "@/lib/types/api";
export const analyticsApi = {
/**
* Get placements analytics
*/
placements: (workspaceId: string, params?: AnalyticsQueryParams) =>
api.get<PaginatedResponse<PlacementAnalyticsItem>>(
`/workspaces/${workspaceId}/analytics/placements`,
{ params }
),
/**
* Get creatives analytics
*/
creatives: (workspaceId: string, params?: AnalyticsQueryParams) =>
api.get<PaginatedResponse<CreativeAnalyticsItem>>(
`/workspaces/${workspaceId}/analytics/creatives`,
{ params }
),
/**
* Get channels analytics
*/
channels: (workspaceId: string, params?: AnalyticsQueryParams) =>
api.get<PaginatedResponse<ChannelAnalyticsItem>>(
`/workspaces/${workspaceId}/analytics/channels`,
{ params }
),
/**
* Get spending analytics (time-series data)
*/
spending: (workspaceId: string, params?: SpendingAnalyticsQueryParams) =>
api.get<SpendingAnalytics>(
`/workspaces/${workspaceId}/analytics/spending`,
{ params }
),
};