Class: GandiV5::Domain::Availability

Inherits:
Object
  • Object
show all
Includes:
GandiV5::Data
Defined in:
lib/gandi_v5/domain/availability.rb,
lib/gandi_v5/domain/availability/tax.rb,
lib/gandi_v5/domain/availability/product.rb,
lib/gandi_v5/domain/availability/product/price.rb,
lib/gandi_v5/domain/availability/product/period.rb

Overview

Information about the availabillity of processes on a domain.

Defined Under Namespace

Classes: Product, Tax

Instance Attribute Summary collapse

Class Method Summary collapse

Methods included from GandiV5::Data

#from_gandi, included, #initialize, #to_gandi, #to_h, #values_at

Instance Attribute Details

#currencyString (readonly)

Returns:

  • (String)


14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/gandi_v5/domain/availability.rb', line 14

class Availability
  include GandiV5::Data

  members :currency, :grid
  member :products, converter: GandiV5::Domain::Availability::Product, array: true
  member :taxes, converter: GandiV5::Domain::Availability::Tax, array: true

  # Check domain availability and pricing.
  # @see https://api.gandi.net/docs/domains#get-v5-domain-check
  # @param fqdn [String, #to_s] the fully qualified domain name to check.
  # @param country [String, #to_s] (optional)
  #   ISO country code for which taxes are to be applied.
  # @param currency [String, #to_s] (optional) request price for a specific ISO currency code.
  # @param duration_unit [String, #to_s] (optional) define the unit for max_duration.
  # @param extension [String, #to_s] (optional) query a specific extension for product options.
  # @param grid [String, #to_s] (optional) request price for a specific rate.
  # @param lang [String, #to_s] (optional) language code.
  # @param max_duration [Integer, #to_s] (optional)
  #   set a limit on the duration range for returned prices.
  # @param period [String, #to_s] (optional) specific registration period to query.
  # @param processes [Array<:create, :renew, :transfer etc.>] (optional default [:create])
  #   list of at least 1 process for which pricing is to be made.
  # @param sharing_id [String, #to_s] (optional)
  #   organization for which the pricing is to be made.
  # @return [GandiV5::Domain::Availability]
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
  def self.fetch(fqdn, **options)
    _response, data = GandiV5.get("#{BASE}domain/check", params: { name: fqdn }.merge(options))
    GandiV5::Domain::Availability.from_gandi data
  end
end

#gridString (readonly)

Returns:

  • (String)


14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/gandi_v5/domain/availability.rb', line 14

class Availability
  include GandiV5::Data

  members :currency, :grid
  member :products, converter: GandiV5::Domain::Availability::Product, array: true
  member :taxes, converter: GandiV5::Domain::Availability::Tax, array: true

  # Check domain availability and pricing.
  # @see https://api.gandi.net/docs/domains#get-v5-domain-check
  # @param fqdn [String, #to_s] the fully qualified domain name to check.
  # @param country [String, #to_s] (optional)
  #   ISO country code for which taxes are to be applied.
  # @param currency [String, #to_s] (optional) request price for a specific ISO currency code.
  # @param duration_unit [String, #to_s] (optional) define the unit for max_duration.
  # @param extension [String, #to_s] (optional) query a specific extension for product options.
  # @param grid [String, #to_s] (optional) request price for a specific rate.
  # @param lang [String, #to_s] (optional) language code.
  # @param max_duration [Integer, #to_s] (optional)
  #   set a limit on the duration range for returned prices.
  # @param period [String, #to_s] (optional) specific registration period to query.
  # @param processes [Array<:create, :renew, :transfer etc.>] (optional default [:create])
  #   list of at least 1 process for which pricing is to be made.
  # @param sharing_id [String, #to_s] (optional)
  #   organization for which the pricing is to be made.
  # @return [GandiV5::Domain::Availability]
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
  def self.fetch(fqdn, **options)
    _response, data = GandiV5.get("#{BASE}domain/check", params: { name: fqdn }.merge(options))
    GandiV5::Domain::Availability.from_gandi data
  end
end

#productsArrav<GandiV5::Domain::Availability::Product> (readonly)



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/gandi_v5/domain/availability.rb', line 14

class Availability
  include GandiV5::Data

  members :currency, :grid
  member :products, converter: GandiV5::Domain::Availability::Product, array: true
  member :taxes, converter: GandiV5::Domain::Availability::Tax, array: true

  # Check domain availability and pricing.
  # @see https://api.gandi.net/docs/domains#get-v5-domain-check
  # @param fqdn [String, #to_s] the fully qualified domain name to check.
  # @param country [String, #to_s] (optional)
  #   ISO country code for which taxes are to be applied.
  # @param currency [String, #to_s] (optional) request price for a specific ISO currency code.
  # @param duration_unit [String, #to_s] (optional) define the unit for max_duration.
  # @param extension [String, #to_s] (optional) query a specific extension for product options.
  # @param grid [String, #to_s] (optional) request price for a specific rate.
  # @param lang [String, #to_s] (optional) language code.
  # @param max_duration [Integer, #to_s] (optional)
  #   set a limit on the duration range for returned prices.
  # @param period [String, #to_s] (optional) specific registration period to query.
  # @param processes [Array<:create, :renew, :transfer etc.>] (optional default [:create])
  #   list of at least 1 process for which pricing is to be made.
  # @param sharing_id [String, #to_s] (optional)
  #   organization for which the pricing is to be made.
  # @return [GandiV5::Domain::Availability]
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
  def self.fetch(fqdn, **options)
    _response, data = GandiV5.get("#{BASE}domain/check", params: { name: fqdn }.merge(options))
    GandiV5::Domain::Availability.from_gandi data
  end
end

#taxesArray<GandiV5::Domain::Availability::Tax> (readonly)



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/gandi_v5/domain/availability.rb', line 14

class Availability
  include GandiV5::Data

  members :currency, :grid
  member :products, converter: GandiV5::Domain::Availability::Product, array: true
  member :taxes, converter: GandiV5::Domain::Availability::Tax, array: true

  # Check domain availability and pricing.
  # @see https://api.gandi.net/docs/domains#get-v5-domain-check
  # @param fqdn [String, #to_s] the fully qualified domain name to check.
  # @param country [String, #to_s] (optional)
  #   ISO country code for which taxes are to be applied.
  # @param currency [String, #to_s] (optional) request price for a specific ISO currency code.
  # @param duration_unit [String, #to_s] (optional) define the unit for max_duration.
  # @param extension [String, #to_s] (optional) query a specific extension for product options.
  # @param grid [String, #to_s] (optional) request price for a specific rate.
  # @param lang [String, #to_s] (optional) language code.
  # @param max_duration [Integer, #to_s] (optional)
  #   set a limit on the duration range for returned prices.
  # @param period [String, #to_s] (optional) specific registration period to query.
  # @param processes [Array<:create, :renew, :transfer etc.>] (optional default [:create])
  #   list of at least 1 process for which pricing is to be made.
  # @param sharing_id [String, #to_s] (optional)
  #   organization for which the pricing is to be made.
  # @return [GandiV5::Domain::Availability]
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
  def self.fetch(fqdn, **options)
    _response, data = GandiV5.get("#{BASE}domain/check", params: { name: fqdn }.merge(options))
    GandiV5::Domain::Availability.from_gandi data
  end
end

Class Method Details

.fetch(fqdn, **options) ⇒ GandiV5::Domain::Availability

Check domain availability and pricing.

Parameters:

  • fqdn (String, #to_s)

    the fully qualified domain name to check.

  • country (String, #to_s)

    (optional) ISO country code for which taxes are to be applied.

  • currency (String, #to_s)

    (optional) request price for a specific ISO currency code.

  • duration_unit (String, #to_s)

    (optional) define the unit for max_duration.

  • extension (String, #to_s)

    (optional) query a specific extension for product options.

  • grid (String, #to_s)

    (optional) request price for a specific rate.

  • lang (String, #to_s)

    (optional) language code.

  • max_duration (Integer, #to_s)

    (optional) set a limit on the duration range for returned prices.

  • period (String, #to_s)

    (optional) specific registration period to query.

  • processes (Array<:create, :renew, :transfer etc.>)

    (optional default [:create]) list of at least 1 process for which pricing is to be made.

  • sharing_id (String, #to_s)

    (optional) organization for which the pricing is to be made.

Returns:

Raises:

See Also:



40
41
42
43
# File 'lib/gandi_v5/domain/availability.rb', line 40

def self.fetch(fqdn, **options)
  _response, data = GandiV5.get("#{BASE}domain/check", params: { name: fqdn }.merge(options))
  GandiV5::Domain::Availability.from_gandi data
end