Net::RDAP::Object(3p)

NAME
Net::RDAP::Object - a module representing an RDAP object.

DESCRIPTION
RDAP responses contain one or more RDAP objects: typically the response itself corresponds to an RDAP object, but RDAP objects can contain other RDAP objects (such as the entities and nameservers associated with a domain name).

Net::RDAP::Object represents such objects, whether top-level or embedded. It inherits from Net::RDAP::Base so has all the methods available to that module.

METHODS

  RDAP Conformance
    @conformance = $response->conformance;

Returns an array of strings, each providing a hint as to the specifications used (by the server) in the construction of the response.

This method will return "undef" unless called on the top-most object in a response.

  Notices
    @notices = $response->notices;

Returns a (potentially empty) array of Net::RDAP::Notice objects.

The array will always be empty unless called on the top-most object in a response.

  Object Class
    $class = $object->class;

Returns a string containing the "class name" of this object (i.e., one of: "ip network", "entity", "nameserver", "autnum" or "domain").

  Handle
    $handle = $object->handle;

Returns a string containing the "handle" of the object.

  Status
    @status = $object->status;

Returns a (potentially empty) array of state identifiers. The possible values are defined by bn IANA registry; see:

•   <https://www.iana.org/assignments/rdap-json-values/rdap-json-values.xhtml>

  Remarks
    @remarks = $object->remarks;

Returns a (potentially empty) array of Net::RDAP::Remark objects.

  Events
    @events = $object->events;

Returns a (potentially empty) array of Net::RDAP::Event objects.

    $event = $object->event($action);

Returns the first Net::RDAP::Event object whose "action" property matches $action (or "undef" if no such event is found).

  Port-43 Whois Server
    $port43 = $object->port43;

Returns a Net::DNS::Domain object containing the name of the legacy port-43 whois server for this object.

  Public IDs
    @ids = $object->ids;

Returns a (potentially empty) array of Net::RDAP::ID objects.

  Entities
    @entities = $object->entities;

Returns a (potentially empty) array of Net::RDAP::Object::Entity objects.

    $entity = $object->entity($role);

Returns the first Net::RDAP::Object::Entity object whose "roles" property contains $role (or "undef" if no such entity is found).

    $registrant = $object->registrant;

Alias for "$object->entity('registrant')".

    $registrar = $object->registrar;

Alias for "$object->entity('registrar')".

  Redactions
    @redactions = $object->redactions;

If the server supports RFC 9537 <https://www.rfc-editor.org/rfc/rfc9537.html>, then this method will return an array of Net::RDAP::Redaction objects corresponding to the fields listed in the "redacted" property of the object.

TTL values
        $ttl = $domain->dns_ttl("NS");
        $ttl = $host->dns_ttl("AAAA");

If the server supports draft-ietf-regext-rdap-ttl-extension <https://datatracker.ietf.org/doc/draft-ietf-regext-rdap-ttl-extension/>, this method returns a number representing the Time-To-Live (TTL) (in seconds) of the DNS record(s) of the specified type that are published in the DNS for the given domain or nameserver object. Returns "undef" if the server does not support this extension, or if no values are available for the given type. Not applicable to entities.

        @types = $domain_or_host->dns_ttl_types;

Returns a list of the DNS record types for which TTL values are available.

        @types = $domain_or_host->dns_ttl_remarks;

Returns a list of Net::RDAP::Remark objects relating to the TTL values of the object.

Extensions
        $object->has_extension($extn);

This method returns true if the RDAP extension identied by $extn is present in the "rdapConformance" property. This method only works on the topmost object of a response.

COPYRIGHT
Copyright 2018-2023 CentralNic Ltd, 2024-2026 Gavin Brown. For licensing information, please see the "LICENSE" file in the Net::RDAP distribution.