Class: Stripe::Entitlements::Feature

Inherits:
APIResource show all
Extended by:
APIOperations::Create, APIOperations::List
Includes:
APIOperations::Save
Defined in:
lib/stripe/resources/entitlements/feature.rb

Overview

A feature represents a monetizable ability or functionality in your system. Features can be assigned to products, and when those products are purchased, Stripe will create an entitlement to the feature for the purchasing customer.

Constant Summary collapse

OBJECT_NAME =
"entitlements.feature"

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::Create

create

Methods included from APIOperations::List

list

Methods included from APIOperations::Save

included, #save

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?, #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

#activeObject (readonly)

Inactive features cannot be attached to new products and will not be returned from the features list endpoint.



19
20
21
# File 'lib/stripe/resources/entitlements/feature.rb', line 19

def active
  @active
end

#idObject (readonly)

Unique identifier for the object.



21
22
23
# File 'lib/stripe/resources/entitlements/feature.rb', line 21

def id
  @id
end

#livemodeObject (readonly)

Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.



23
24
25
# File 'lib/stripe/resources/entitlements/feature.rb', line 23

def livemode
  @livemode
end

#lookup_keyObject (readonly)

A unique key you provide as your own system identifier. This may be up to 80 characters.



25
26
27
# File 'lib/stripe/resources/entitlements/feature.rb', line 25

def lookup_key
  @lookup_key
end

#metadataObject (readonly)

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.



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

def 
  @metadata
end

#nameObject (readonly)

The feature’s name, for your own purpose, not meant to be displayable to the customer.



29
30
31
# File 'lib/stripe/resources/entitlements/feature.rb', line 29

def name
  @name
end

#objectObject (readonly)

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



31
32
33
# File 'lib/stripe/resources/entitlements/feature.rb', line 31

def object
  @object
end

Class Method Details

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

Creates a feature



34
35
36
37
38
39
40
41
# File 'lib/stripe/resources/entitlements/feature.rb', line 34

def self.create(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: "/v1/entitlements/features",
    params: params,
    opts: opts
  )
end

.field_remappingsObject



67
68
69
# File 'lib/stripe/resources/entitlements/feature.rb', line 67

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



63
64
65
# File 'lib/stripe/resources/entitlements/feature.rb', line 63

def self.inner_class_types
  @inner_class_types = {}
end

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

Retrieve a list of features



44
45
46
47
48
49
50
51
# File 'lib/stripe/resources/entitlements/feature.rb', line 44

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

.object_nameObject



14
15
16
# File 'lib/stripe/resources/entitlements/feature.rb', line 14

def self.object_name
  "entitlements.feature"
end

.update(id, params = {}, opts = {}) ⇒ Object

Update a feature’s metadata or permanently deactivate it.



54
55
56
57
58
59
60
61
# File 'lib/stripe/resources/entitlements/feature.rb', line 54

def self.update(id, params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/entitlements/features/%<id>s", { id: CGI.escape(id) }),
    params: params,
    opts: opts
  )
end