Packages
stripity_stripe
3.3.2
3.3.2
3.3.1
3.2.0
3.1.1
3.1.0
3.0.0
2.17.3
2.17.2
2.17.1
2.17.0
2.16.0
2.15.1
2.15.0
2.14.1
2.14.0
2.13.0
2.12.1
2.12.0
2.11.0
2.10.0
2.9.0
2.8.0
2.7.2
2.7.1
2.7.0
2.6.0
2.5.0
2.4.0
2.3.0
2.2.3
2.2.2
2.2.1
2.2.0
2.1.0
2.0.1
2.0.0
2.0.0-alpha.11
2.0.0-alpha.10
2.0.0-alpha.9
2.0.0-alpha.8
2.0.0-alpha.7
2.0.0-alpha.6
2.0.0-alpha.5
2.0.0-alpha.4
2.0.0-alpha.3
2.0.0-alpha.2
2.0.0-alpha.1
1.6.2
1.6.1
1.6.0
1.4.0
1.3.0
1.2.0
1.1.0
0.5.0
0.4.0
0.3.0
0.2.0
A Stripe client for Elixir.
Current section
Files
Jump to
Current section
Files
lib/generated/billing__meter_event_summary.ex
defmodule Stripe.Billing.MeterEventSummary do
use Stripe.Entity
@moduledoc "A billing meter event summary represents an aggregated view of a customer's billing meter events within a specified timeframe. It indicates how much\nusage was accrued by a customer for that period.\n\nNote: Meters events are aggregated asynchronously so the meter event summaries provide an eventually consistent view of the reported usage."
(
defstruct [:aggregated_value, :end_time, :id, :livemode, :meter, :object, :start_time]
@typedoc "The `billing.meter_event_summary` type.\n\n * `aggregated_value` Aggregated value of all the events within `start_time` (inclusive) and `end_time` (inclusive). The aggregation strategy is defined on meter via `default_aggregation`.\n * `end_time` End timestamp for this event summary (exclusive). Must be aligned with minute boundaries.\n * `id` Unique identifier for the object.\n * `livemode` Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.\n * `meter` The meter associated with this event summary.\n * `object` String representing the object's type. Objects of the same type share the same value.\n * `start_time` Start timestamp for this event summary (inclusive). Must be aligned with minute boundaries.\n"
@type t :: %__MODULE__{
aggregated_value: term,
end_time: integer,
id: binary,
livemode: boolean,
meter: binary,
object: binary,
start_time: integer
}
)
(
nil
@doc "<p>Retrieve a list of billing meter event summaries.</p>\n\n#### Details\n\n * Method: `get`\n * Path: `/v1/billing/meters/{id}/event_summaries`\n"
(
@spec list(
id :: binary(),
params :: %{
optional(:customer) => binary,
optional(:end_time) => integer,
optional(:ending_before) => binary,
optional(:expand) => list(binary),
optional(:limit) => integer,
optional(:start_time) => integer,
optional(:starting_after) => binary,
optional(:value_grouping_window) => :day | :hour
},
opts :: Keyword.t()
) ::
{:ok, Stripe.List.t(Stripe.Billing.MeterEventSummary.t())}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def list(id, params \\ %{}, opts \\ []) do
path =
Stripe.OpenApi.Path.replace_path_params(
"/v1/billing/meters/{id}/event_summaries",
[
%{
__struct__: OpenApiGen.Blueprint.Parameter,
in: "path",
name: "id",
required: true,
schema: %{
__struct__: OpenApiGen.Blueprint.Parameter.Schema,
any_of: [],
items: [],
name: "id",
properties: [],
title: nil,
type: "string"
}
}
],
[id]
)
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_params(params)
|> Stripe.Request.put_method(:get)
|> Stripe.Request.make_request()
end
)
)
end