---
name: "Net::EPP::Frame::Command::Update::Domain"
section: "3pm"
platform: "linux"
package: "libnet-epp-perl"
version: "0.28-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::EPP::Frame::Command::Update::Domain"
---

# Net::EPP::Frame::Command::Update::Domain(3pm)

an instance of Net::EPP::Frame::Command::Update for domain names.

## NAME

Net::EPP::Frame::Command::Update::Domain - an instance of Net::EPP::Frame::Command::Update for domain names.

## SYNOPSIS

```
        use Net::EPP::Frame::Command::Update::Domain;
        use strict;
        my $info = Net::EPP::Frame::Command::Update::Domain->new;
        $info->setDomain('example.tld');
        print $info->toString(1);
```

This results in an XML document like this:

```
        <?xml version="1.0" encoding="UTF-8"?>
        <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
          epp-1.0.xsd">
            <command>
              <update>
                <domain:update
                  xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
                  xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
                  domain-1.0.xsd">
                    <domain:name>example-1.tldE<lt>/domain:name>
                </domain:update>
              </update>
              <clTRID>0cf1b8f7e14547d26f03b7641660c641d9e79f45</clTRIDE<gt>
            </command>
        </epp>
```

## OBJECT HIERARCHY

```
    L<XML::LibXML::Node>
    +----L<XML::LibXML::Document>
        +----L<Net::EPP::Frame>
            +----L<Net::EPP::Frame::Command>
                +----L<Net::EPP::Frame::Command::Update>
                    +----L<Net::EPP::Frame::Command::Update::Domain>
```

## METHODS

```
        $frame->setDomain($domain_name);
```

This specifies the domain name to be updated.

```
        $frame->addStatus($type, $info);
```

Add a status of `$type` with the optional extra `$info`.

```
        $frame->remStatus($type);
```

Remove a status of `$type`.

```
        $frame->addContact($type, $contact);
```

Add a contact of `$type`.

```
        $frame->remContact($type, $contact);
```

Remove a contact of `$type`.

```
        $frame->chgAuthinfo($auth);
```

Change the authinfo.

```
        $frame->chgRegistrant($registrant);
```

Change the authinfo.

```
        $frame->addNS('ns0.example.com'); # host object mode
        $frame->addNS({'name' => 'ns0.example.com', 'addrs' => [ { 'addr' => '127.0.0.1', 'type' => 4 } ] }); # host attribute mode
```

```
        $frame->remNS('ns0.example.com'); # host object mode
        $frame->remNS({'name' => 'ns0.example.com', 'addrs' => [ { 'addr' => '127.0.0.1', 'type' => 4 } ] }); # host attribute mode
```

### DNSSEC methods

### TTL Extension

```
    $frame->chgTTLs({
        NS => 3600,
        DS => 900,
    });
```

Specify TTLs for DNS records above the zone cut. The server must support the TTL extension.
