WWW::LogicBoxes::Contact::CA - Representation of Domain Contact for .ca Domains


    use strict;
    use warnings;

    use WWW::LogicBoxes;
    use WWW::LogicBoxes::Customer;
    use WWW::LogicBoxes::Contact::CA;
    use WWW::LogicBoxes::Contact::CA::Agreement;

    my $api       = WWW::LogicBoxes->new( ... );
    my $agreement = $api->get_ca_registrant_contact();

    my $customer  = WWW::LogicBoxes::Customer->new( ... ); # Valid LogicBoxes Customer

    my $contact = WWW::LogicBoxes::Contact::CA->new(
        id           => 42,
        name         => 'Edsger Dijkstra',
        company      => 'University of Texas at Austin',
        email        => '',
        address1     => 'University of Texas',
        address2     => '42 Main St',
        city         => 'Austin',
        state        => 'Texas',
        country      => 'US',
        zipcode      => '78713',
        phone_number => '18005551212',
        fax_number   => '18005551212',
        customer_id  => $customer->id,

        cpr               => 'RES',
        agreement_version => $agreement->version,




Representation of a LogicBoxes domain contact for .ca TLD domains. The .ca TLD is special in that specific CPR and Agreement data must be provided. For details on the agreement that customers must accept please see WWW::LogicBoxes::Contact::CA::Agreement.



The name has special restrictions based on if the CPR provided is for Individuals or Non Individuals. Please see for a full listing of key words that must or must not be present.

Also, the name of a CA Contact can not be changed! If you really need to change it, you'll have to create a whole new WWW::LogicBoxes::Contact::CA with the desired information, replace it on any domain that uses the old contact, and then delete the old contact.


Similiar to nexus_data for .us domains, the CPR is a specialized code that describes the registrant contact. It must take on one of the following values (original source

CPR For Individuals

ABO - Aboriginal Peoples (individuals or groups) indigenous to Canada
CCT - Canadian citizen
RES - Permanent Resident of Canada

CPR For Non Individuals

NOTE For Non Individual CPRs the company name MUST be "N/A".

ASS Canadian Unincorporated Association
CCO Corporation (Canada or Canadian province or territory)
EDU Canadian Educational institution
GOV Government or government entity in Canada
HOP Canadian Hospital
INB Indian Band recognized by the Indian Act of Canada
LAM Canadian Library, Archive or Museum
MAJ Her Majesty the Queen
OMK Official mark registered in Canada
PLT Canadian Political Party
PRT Partnership Registered in Canada
TDM Trade-mark registered in Canada (by a non-Canadian owner)
TRD Canadian Trade Union
TRS Trust established in Canada

The cpr can not be changed once the contact is created.


The version of the CA Registrant Agreement the customer is accepting (retrieved via "get_ca_registrant_agreement" in WWW::LogicBoxes::Role::Command::Contact which returns a WWW::LogicBoxes::Contact::CA::Agreement). This value must be specified when creating a new contact but is never returned by the API.

Offers a predicate of has_agreement_version.