Class: Stripe::Event

Inherits:
APIResource show all
Extended by:
APIOperations::List
Defined in:
lib/stripe/resources/event.rb

Overview

Snapshot events allow you to track and react to activity in your Stripe integration. When the state of another API resource changes, Stripe creates an ‘Event` object that contains all the relevant information associated with that action, including the affected API resource. For example, a successful payment triggers a `charge.succeeded` event, which contains the `Charge` in the event’s data property. Some actions trigger multiple events. For example, if you create a new subscription for a customer, it triggers both a ‘customer.subscription.created` event and a `charge.succeeded` event.

Configure an event destination in your account to listen for events that represent actions your integration needs to respond to. Additionally, you can retrieve an individual event or a list of events from the API.

[Connect](docs.stripe.com/connect) platforms can also receive event notifications that occur in their connected accounts. These events include an account attribute that identifies the relevant connected account.

You can access events through the [Retrieve Event API](docs.stripe.com/api/events#retrieve_event) for 30 days.

Defined Under Namespace

Classes: Data, Reason, Request

Constant Summary collapse

OBJECT_NAME =
"event"

Constants inherited from StripeObject

StripeObject::RESERVED_FIELD_NAMES

Instance Attribute Summary collapse

Attributes inherited from APIResource

#save_with_parent

Attributes inherited from StripeObject

#last_response

Class Method Summary collapse

Methods included from APIOperations::List

list

Methods inherited from APIResource

class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource

Methods included from APIOperations::Request

included

Methods inherited from StripeObject

#==, #[], #[]=, #_get_inner_class_type, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, field_encodings, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values

Constructor Details

This class inherits a constructor from Stripe::StripeObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject

Instance Attribute Details

#accountObject (readonly)

The connected account that originates the event.



122
123
124
# File 'lib/stripe/resources/event.rb', line 122

def 
  @account
end

#api_versionObject (readonly)

The Stripe API version used to render ‘data` when the event was created. The contents of `data` never change, so this value remains static regardless of the API version currently in use. This property is populated only for events created on or after October 31, 2014.



124
125
126
# File 'lib/stripe/resources/event.rb', line 124

def api_version
  @api_version
end

#contextObject (readonly)

Authentication context needed to fetch the event or related object.



126
127
128
# File 'lib/stripe/resources/event.rb', line 126

def context
  @context
end

#createdObject (readonly)

Time at which the object was created. Measured in seconds since the Unix epoch.



128
129
130
# File 'lib/stripe/resources/event.rb', line 128

def created
  @created
end

#dataObject (readonly)

Attribute for field data



130
131
132
# File 'lib/stripe/resources/event.rb', line 130

def data
  @data
end

#idObject (readonly)

Unique identifier for the object.



132
133
134
# File 'lib/stripe/resources/event.rb', line 132

def id
  @id
end

#livemodeObject (readonly)

If the object exists in live mode, the value is ‘true`. If the object exists in test mode, the value is `false`.



134
135
136
# File 'lib/stripe/resources/event.rb', line 134

def livemode
  @livemode
end

#objectObject (readonly)

String representing the object’s type. Objects of the same type share the same value.



136
137
138
# File 'lib/stripe/resources/event.rb', line 136

def object
  @object
end

#pending_webhooksObject (readonly)

Number of webhooks that haven’t been successfully delivered (for example, to return a 20x response) to the URLs you specify.



138
139
140
# File 'lib/stripe/resources/event.rb', line 138

def pending_webhooks
  @pending_webhooks
end

#reasonObject (readonly)

Information about the action that causes the event. Only present when the event is triggered by an API request or an [Automation](docs.stripe.com/billing/automations) action.



140
141
142
# File 'lib/stripe/resources/event.rb', line 140

def reason
  @reason
end

#requestObject (readonly)

Information on the API request that triggers the event.



142
143
144
# File 'lib/stripe/resources/event.rb', line 142

def request
  @request
end

#typeObject (readonly)

Description of the event (for example, ‘invoice.created` or `charge.refunded`).



144
145
146
# File 'lib/stripe/resources/event.rb', line 144

def type
  @type
end

Class Method Details

.field_remappingsObject



155
156
157
# File 'lib/stripe/resources/event.rb', line 155

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



151
152
153
# File 'lib/stripe/resources/event.rb', line 151

def self.inner_class_types
  @inner_class_types = { data: Data, reason: Reason, request: Request }
end

.list(params = {}, opts = {}) ⇒ Object

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](docs.stripe.com/api/events/object) api_version attribute (not according to your current Stripe API version or Stripe-Version header).



147
148
149
# File 'lib/stripe/resources/event.rb', line 147

def self.list(params = {}, opts = {})
  request_stripe_object(method: :get, path: "/v1/events", params: params, opts: opts)
end

.object_nameObject



27
28
29
# File 'lib/stripe/resources/event.rb', line 27

def self.object_name
  "event"
end