NAME

WWW::LogicBoxes::Role::Command::Contact - Contact Related Operations

SYNOPSIS

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Customer;
    use WWW::LogicBoxes::Contact;

    my $customer = WWW::LogicBoxes::Customer->new( ... );
    my $contact  = WWW::LogicBoxes::Contact->new( ... );

    # Creation
    my $logic_boxes = WWW::LogicBoxes->new( ... );
    $logic_boxes->create_contact( contact => $contact );

    # Retrieval
    my $retrieved_contact = $logic_boxes->get_contact_by_id( $contact->id );

    # Update
    # UPDATE IS OBSOLETE AND NO LONGER SUPPORTED! ( See POD )

    # Deletion
    $logic_boxes->delete_contact_by_id( $contact->id );

    # CA Registrant Agreement
    my $agreement = $logic_boxes->get_ca_registrant_agreement();

REQURIES

submit

DESCRIPTION

Implements contact related operations with the LogicBoxes's API.

METHODS

create_contact

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Customer;
    use WWW::LogicBoxes::Contact;

    my $customer = WWW::LogicBoxes::Customer->new( ... );
    my $contact  = WWW::LogicBoxes::Contact->new( ... );

    my $logic_boxes = WWW::LogicBoxes->new( ... );
    $logic_boxes->create_contact( contact => $contact );

    print 'New contact id: ' . $contact->id . "\n";

Given a WWW::LogicBoxes::Contact or a HashRef that can be coerced into a WWW::LogicBoxes::Contact, creates the specified contact with LogicBoxes.

get_contact_by_id

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Contact;

    my $logic_boxes = WWW::LogicBoxes->new( ... );
    my $contact     = $logic_boxes->get_contact_by_id( 42 );

Given an Integer ID, will return an instance of WWW::LogicBoxes::Contact (or one of it's subclass for specialized contacts). Returns undef if there is no matching contact with the specified id.

update_contact

    OBSOLETE!

On 2016-12-01, a new ICANN Inter Registrar Transfer Policy went into effect. LogicBoxes is complying with this by not permitting modification of contacts any longer.

Instead, if you wish to update a contact, you should do the following:

1. Create a New Contact - create_contact
2. Assign That Contact To The Domain - update_domain_contacts
3. (Optionally) Delete the previous contact after the changes are approved - delete_contact_by_id

delete_contact_by_id

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Contact;

    my $logic_boxes = WWW::LogicBoxes->new( ... );
    $logic_boxes->delete_contact_by_id( 42 );

Given an Integer ID, will delete the contact with LogicBoxes.

This method will croak if the contact is in use (assigned to a domain).

get_ca_registrant_agreement

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Contact;

    my $logic_boxes = WWW::LogicBoxes->new( ... );
    my $agreement = $logic_boxes->get_ca_registrant_agreement();

Accepts no arguments, returns an instance of WWW::LogicBoxes::Contact::CA::Agreement that describes the currently active and required CA Registrant Agreement.

Note Registrants are required to accept this agreement in order to register a .ca domain.