defmodule Klaviyo.Metric do
alias Klaviyo.RequestOperation
@spec aggregates(Enum.t()) :: RequestOperation.t()
def aggregates(params) do
%RequestOperation{
body: params,
method: :post,
path: "/api/metric-aggregates"
}
end
@spec all(Enum.t()) :: RequestOperation.t()
def all(params \\ []) do
%RequestOperation{
method: :get,
path: "/api/metrics",
query: params
}
end
@spec get(String.t(), Enum.t()) :: RequestOperation.t()
def get(metric_id, params \\ []) do
%RequestOperation{
method: :get,
path: "/api/metrics/#{metric_id}",
query: params
}
end
end