45 lines
1.2 KiB
TypeScript
45 lines
1.2 KiB
TypeScript
// ============================================================================
|
|
// Analytics API
|
|
// ============================================================================
|
|
|
|
import { api } from "./client";
|
|
import type {
|
|
SpendingAnalytics,
|
|
PlacementsAnalytics,
|
|
CreativesAnalytics,
|
|
ExternalChannelsAnalytics,
|
|
DateGrouping,
|
|
} from "@/lib/types/api";
|
|
|
|
export const analyticsApi = {
|
|
/**
|
|
* Get spending analytics
|
|
*/
|
|
spending: (params?: {
|
|
target_channel_id?: string;
|
|
date_from?: string;
|
|
date_to?: string;
|
|
grouping?: DateGrouping;
|
|
}) => api.get<SpendingAnalytics>("/analytics/spending", { params }),
|
|
|
|
/**
|
|
* Get placements analytics
|
|
*/
|
|
placements: (params?: { target_channel_id?: string }) =>
|
|
api.get<PlacementsAnalytics>("/analytics/placements", { params }),
|
|
|
|
/**
|
|
* Get creatives analytics
|
|
*/
|
|
creatives: (params?: { target_channel_id?: string }) =>
|
|
api.get<CreativesAnalytics>("/analytics/creatives", { params }),
|
|
|
|
/**
|
|
* Get external channels analytics
|
|
*/
|
|
externalChannels: (params?: { target_channel_id?: string }) =>
|
|
api.get<ExternalChannelsAnalytics>("/analytics/external-channels", {
|
|
params,
|
|
}),
|
|
};
|