Class: Pago::V2026_04::Models::CustomFieldCreateDate

Inherits:
Model
  • Object
show all
Defined in:
lib/pago/v2026_04/models.rb,
sig/pago/v2026_04/generated.rbs

Overview

Schema to create a custom field of type date.

Constant Summary collapse

JSON_KEYS =

Returns:

  • (Hash[Symbol, String])
{
  metadata: "metadata",
  type: "type",
  slug: "slug",
  name: "name",
  organization_id: "organization_id",
  properties: "properties"
}.freeze
REQUIRED_KEYS =

Returns:

  • (Array[String])
["type", "slug", "name", "properties"].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

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:, slug:, name:, organization_id: ::Pago::UNSET, properties:) ⇒ CustomFieldCreateDate

Returns a new instance of CustomFieldCreateDate.

Parameters:

  • metadata: (Hash[String, untyped], nil) (defaults to: ::Pago::UNSET)
  • type: (String)
  • slug: (String)
  • name: (String)
  • organization_id: (String, nil) (defaults to: ::Pago::UNSET)
  • properties: (Models::CustomFieldDateProperties)


13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
# File 'lib/pago/v2026_04/models.rb', line 13412

def initialize(
  metadata: ::Pago::UNSET,
  type:,
  slug:,
  name:,
  organization_id: ::Pago::UNSET,
  properties:
)
  super()
  assign(:metadata, )
  assign(:type, type)
  assign(:slug, slug)
  assign(:name, name)
  assign(:organization_id, organization_id)
  assign(:properties, properties)
end

Instance Attribute Details

#metadataHash{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.

Returns:

  • (Hash{String => String, Integer, Float, Boolean})


13392
13393
13394
# File 'lib/pago/v2026_04/models.rb', line 13392

def 
  @metadata
end

#nameString (readonly)

Name of the custom field.

Returns:

  • (String)


13403
13404
13405
# File 'lib/pago/v2026_04/models.rb', line 13403

def name
  @name
end

#organization_idString? (readonly)

The ID of the organization owning the custom field. Required unless you use an organization token.

Returns:

  • (String, nil)


13407
13408
13409
# File 'lib/pago/v2026_04/models.rb', line 13407

def organization_id
  @organization_id
end

#propertiesModels::CustomFieldDateProperties (readonly)



13410
13411
13412
# File 'lib/pago/v2026_04/models.rb', line 13410

def properties
  @properties
end

#slugString (readonly)

Identifier of the custom field. It'll be used as key when storing the value. Must be unique across the organization.It can only contain ASCII letters, numbers and hyphens.

Returns:

  • (String)


13399
13400
13401
# File 'lib/pago/v2026_04/models.rb', line 13399

def slug
  @slug
end

#typeString (readonly)

Returns:

  • (String)


13395
13396
13397
# File 'lib/pago/v2026_04/models.rb', line 13395

def type
  @type
end

Class Method Details

.from_json(data) ⇒ CustomFieldCreateDate?

Parameters:

  • data (Hash, String, nil)

Returns:



13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
# File 'lib/pago/v2026_04/models.rb', line 13431

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),
      slug: (data.key?("slug") ? data["slug"] : ::Pago::UNSET),
      name: (data.key?("name") ? data["name"] : ::Pago::UNSET),
      organization_id: (data.key?("organization_id") ? data["organization_id"] : ::Pago::UNSET),
      properties: (data.key?("properties") ? Models::CustomFieldDateProperties.from_json(data["properties"]) : ::Pago::UNSET)
    ),
    data
  )
end