Class: Pago::V2026_04::Models::BenefitCustomCreate
- Defined in:
- lib/pago/v2026_04/models.rb,
sig/pago/v2026_04/generated.rbs
Overview
Schema to create a benefit of type custom.
Constant Summary collapse
- JSON_KEYS =
{ metadata: "metadata", type: "type", description: "description", organization_id: "organization_id", visibility: "visibility", properties: "properties" }.freeze
- REQUIRED_KEYS =
["type", "description", "properties"].freeze
Instance Attribute Summary collapse
-
#description ⇒ String
readonly
The description of the benefit.
-
#metadata ⇒ Hash{String => String, Integer, Float, Boolean}
readonly
Key-value object allowing you to store additional information.
-
#organization_id ⇒ String?
readonly
The ID of the organization owning the benefit.
- #properties ⇒ Models::BenefitCustomCreateProperties readonly
- #type ⇒ String readonly
-
#visibility ⇒ String?
readonly
The visibility of the benefit in the customer portal.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(metadata: ::Pago::UNSET, type:, description:, organization_id: ::Pago::UNSET, visibility: ::Pago::UNSET, properties:) ⇒ BenefitCustomCreate
constructor
A new instance of BenefitCustomCreate.
Methods inherited from Model
#==, #[], #field_set?, #hash, #inspect, json_keys, required_json_keys, #to_json, #to_json_hash, wrap_raw
Constructor Details
#initialize(metadata: ::Pago::UNSET, type:, description:, organization_id: ::Pago::UNSET, visibility: ::Pago::UNSET, properties:) ⇒ BenefitCustomCreate
Returns a new instance of BenefitCustomCreate.
2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 |
# File 'lib/pago/v2026_04/models.rb', line 2145 def initialize( metadata: ::Pago::UNSET, type:, description:, organization_id: ::Pago::UNSET, visibility: ::Pago::UNSET, properties: ) super() assign(:metadata, ) assign(:type, type) assign(:description, description) assign(:organization_id, organization_id) assign(:visibility, visibility) assign(:properties, properties) end |
Instance Attribute Details
#description ⇒ String (readonly)
The description of the benefit. Will be displayed on products having this benefit.
2132 2133 2134 |
# File 'lib/pago/v2026_04/models.rb', line 2132 def description @description end |
#metadata ⇒ Hash{String => String, Integer, Float, Boolean} (readonly)
Key-value object allowing you to store additional information.
The key must be a string with a maximum length of 40 characters. The value must be either:
- A string with a maximum length of 500 characters
- An integer
- A floating-point number
- A boolean
You can store up to 50 key-value pairs.
2125 2126 2127 |
# File 'lib/pago/v2026_04/models.rb', line 2125 def @metadata end |
#organization_id ⇒ String? (readonly)
The ID of the organization owning the benefit. Required unless you use an organization token.
2136 2137 2138 |
# File 'lib/pago/v2026_04/models.rb', line 2136 def organization_id @organization_id end |
#properties ⇒ Models::BenefitCustomCreateProperties (readonly)
2143 2144 2145 |
# File 'lib/pago/v2026_04/models.rb', line 2143 def properties @properties end |
#type ⇒ String (readonly)
2128 2129 2130 |
# File 'lib/pago/v2026_04/models.rb', line 2128 def type @type end |
#visibility ⇒ String? (readonly)
The visibility of the benefit in the customer portal.
2140 2141 2142 |
# File 'lib/pago/v2026_04/models.rb', line 2140 def visibility @visibility end |
Class Method Details
.from_json(data) ⇒ BenefitCustomCreate?
2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 |
# File 'lib/pago/v2026_04/models.rb', line 2164 def self.from_json(data) data = ::JSON.parse(data) if data.is_a?(String) data = ::Pago::Serde.object(data) return nil if data.nil? wrap_raw( new( metadata: (data.key?("metadata") ? data["metadata"] : ::Pago::UNSET), type: (data.key?("type") ? data["type"] : ::Pago::UNSET), description: (data.key?("description") ? data["description"] : ::Pago::UNSET), organization_id: (data.key?("organization_id") ? data["organization_id"] : ::Pago::UNSET), visibility: (data.key?("visibility") ? data["visibility"] : ::Pago::UNSET), properties: (data.key?("properties") ? Models::BenefitCustomCreateProperties.from_json(data["properties"]) : ::Pago::UNSET) ), data ) end |