View Source Stripe.Event (stripity_stripe v3.2.0)

Events are our way of letting you know when something interesting happens in your account. When an interesting event occurs, we create a new Event object. For example, when a charge succeeds, we create a charge.succeeded event, and when an invoice payment attempt fails, we create an invoice.payment_failed event. Certain API requests might create multiple events. For example, if you create a new subscription for a customer, you receive both a customer.subscription.created event and a charge.succeeded event.

Events occur when the state of another API resource changes. The event's data field embeds the resource's state at the time of the change. For example, a charge.succeeded event contains a charge, and an invoice.payment_failed event contains an invoice.

As with other API resources, you can use endpoints to retrieve an individual event or a list of events from the API. We also have a separate webhooks system for sending the Event objects directly to an endpoint on your server. You can manage webhooks in your account settings. Learn how to listen for events so that your integration can automatically trigger reactions.

When using Connect, you can also receive event notifications that occur in connected accounts. For these events, there's an additional account attribute in the received Event object.

We only guarantee access to events through the Retrieve Event API for 30 days.

Summary

Types

t()

The event type.

Functions

List events, going back up to 30 days. Each event data is rendered according to Stripe API version at its creation time, specified in event object api_version attribute (not according to your current Stripe API version or Stripe-Version header).

Retrieves the details of an event. Supply the unique identifier of the event, which you might have received in a webhook.

Types

@type created() :: %{
  optional(:gt) => integer(),
  optional(:gte) => integer(),
  optional(:lt) => integer(),
  optional(:lte) => integer()
}
@type t() :: %Stripe.Event{
  account: binary(),
  api_version: binary() | nil,
  created: integer(),
  data: term(),
  id: binary(),
  livemode: boolean(),
  object: binary(),
  pending_webhooks: integer(),
  request: term() | nil,
  type: binary()
}

The event type.

  • account The connected account that originates the event.
  • api_version The Stripe API version used to render data. This property is populated only for events on or after October 31, 2014.
  • created Time at which the object was created. Measured in seconds since the Unix epoch.
  • data
  • id Unique identifier for the object.
  • livemode Has the value true if the object exists in live mode or the value false if the object exists in test mode.
  • object String representing the object's type. Objects of the same type share the same value.
  • pending_webhooks Number of webhooks that haven't been successfully delivered (for example, to return a 20x response) to the URLs you specify.
  • request Information on the API request that triggers the event.
  • type Description of the event (for example, invoice.created or charge.refunded).

Functions

Link to this function

list(params \\ %{}, opts \\ [])

View Source
@spec list(
  params :: %{
    optional(:created) => created() | integer(),
    optional(:delivery_success) => boolean(),
    optional(:ending_before) => binary(),
    optional(:expand) => [binary()],
    optional(:limit) => integer(),
    optional(:starting_after) => binary(),
    optional(:type) => binary(),
    optional(:types) => [binary()]
  },
  opts :: Keyword.t()
) ::
  {:ok, Stripe.List.t(t())} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

List events, going back up to 30 days. Each event data is rendered according to Stripe API version at its creation time, specified in event object api_version attribute (not according to your current Stripe API version or Stripe-Version header).

Details

  • Method: get
  • Path: /v1/events
Link to this function

retrieve(id, params \\ %{}, opts \\ [])

View Source
@spec retrieve(
  id :: binary(),
  params :: %{optional(:expand) => [binary()]},
  opts :: Keyword.t()
) :: {:ok, t()} | {:error, Stripe.ApiErrors.t()} | {:error, term()}

Retrieves the details of an event. Supply the unique identifier of the event, which you might have received in a webhook.

Details

  • Method: get
  • Path: /v1/events/{id}