---
name: "Catmandu::Importer::LDAP"
section: "3pm"
platform: "linux"
package: "libcatmandu-ldap-perl"
version: "0.0105-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Catmandu::Importer::LDAP"
---

# Catmandu::Importer::LDAP(3pm)

Package that imports LDAP directories

## NAME

Catmandu::Importer::LDAP - Package that imports LDAP directories

## SYNOPSIS

```
    # From the command line
    # Anonymous bind to find all 'Patrick's
    $ catmandu convert LDAP \
            --host ldaps://ldaps.ugent.be \
            --search-filter '(givenName=Patrick)' \
            --search-base 'dc=ugent, dc=be' to YAML
    # From Perl
    use Catmandu;
    my $importer = Catmandu->importer('LDAP',
                         host          => 'ldaps://ldaps.ugent.be' ,
                         search_filter => '(givenName=Patrick)' ,
                         search_base   => 'dc=ugent, dc=be'
                    );
    my $exporter = Catmandu->exporter('YAML');
    $exporter->add_many($importer);
    $exporter->commit;
```

## CONFIGURATION

- host

  The LDAP host to connect to

- base

  The base to bind to (if not specified it is an anonymous bind)

- password

  The password needed for the bind

- search\_base

  The DN that is the base object entry relative to which the search is to be performed.

- search\_filter

  One or more search filters. E.g.

  ```
     (givenName=Patrick)    # search Patrick
     (&(givenName=Patrick)(postalCode=9000))  # search Patrick AND postalcode=9000
     (|)(givenName=Patrick)(postalCode=9000)) # search Patrick OR postcalcode=9000
  ```

## METHODS

Every Catmandu::Importer is a Catmandu::Iterable all its methods are inherited. The methods are not idempotent: LDAP streams can only be read once.

## SEE ALSO

Catmandu , Catmandu::Importer , Catmandu::Iterable
