Thanks that code works perfectly, I tested it with the following and it created my contact, "SAMAccountName" isn't a required field for contacts, all they really seem to need is the "dn" and "objectClass" fields.
in reply to Re: Adding a list of contacts to Exchange Address book.
in thread Adding a list of contacts to Exchange Address book.
my $ldap_prov = "server";
my $ldap = Net::LDAP->new($ldap_prov) || die;
print ("\nUsername for connection: ");
my $username = <STDIN>;
print ("\nPassword: ");
my $password = <STDIN>;
my $bind = $ldap->bind($user, password => $password, $version => 3);
my $contact = Net::LDAP::Entry->new();
my $name = "Bob Smith";
my $email = 'email@example.com';
"cn=$name,ou=Website External Contacts,"
$contact->add(objectClass => 'contact');
$contact->add(name => $name);
$contact->add(displayName => $name);
$contact->add(mail => $email);
$contact->add(targetAddress => "SMTP:$email");
my $result = $contact->update($ldap);