> For the complete documentation index, see [llms.txt](https://docs.amitysolutions.com/ekoai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.amitysolutions.com/ekoai/getting-started/eko/eko-ad-sync/introduction-to-eko-ad-sync/what-is-eko-ad-sync.md).

# What is Eko AD Sync?

Eko AD Sync refers to the integration solution provided by Amity Solutions that connects your organization's on-premises user management system, typically Microsoft Active Directory, with the cloud-hosted Eko application.

## 1. Definition and Core Components

Eko Active Directory Connector (EkoADC) is Amity Solutions’ proprietary software designed specifically for user integration with Microsoft Active Directory. EkoADC is used for two primary functions: user synchronization and authentication.

EkoADC is configured to work with Active Directory or any other Lightweight Directory Access Protocol (LDAP) compatible identity management systems. It runs on a securely hardened Ubuntu image and can be installed either on-premise or on the cloud.

A secondary component involved in the process is the Eko Identity Management API (EkoIDMAPI), which is an Eko custom API that works in conjunction with EkoADC to integrate external user accounts.

<figure><img src="https://114949873-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkGjT4d6YfxBhnPZQPQSC%2Fuploads%2FAlqFeVtTCLz26WYZSpZU%2Fc6bad67428949b2b463efa5317c2988.jpeg?alt=media&amp;token=5b4f10ad-54f3-416f-8dd4-aee712e429f8" alt=""><figcaption></figcaption></figure>

## 2. Core Functionality

Eko AD Sync facilitates two crucial processes for managing users in the Eko app:

### 2.1 User Synchronization (Provisioning)

User synchronization involves the creation, updating, and deletion of user accounts in Eko. EkoADC is responsible for fetching user data from the customer’s directory service, such as Active Directory, using the LDAP protocol.

Synchronization supports various provisioning actions, including:

* Insert, Update, Delete, Upsert, and Upload mass users.
* Disabling user accounts.

In addition to syncing directly from Active Directory, EkoADC also supports user synchronization from a source file, such as a Comma Separated Value (CSV) file from an HR system, typically delivered via FTP/SFTP. This file-based method is primarily recommended for updating user profiles, as user authentication still requires a directory software that supports LDAP.

The EkoADC also enables more advanced features, such as Avatar sync and a Password generator.

### 2.2 User Authentication

EkoADC enables users to log into the Eko Application using the credentials stored in their Active Directory.

The authentication process works as follows:

1. When a user logs into Eko, the user account information (username and password) is passed from the EkoIDMAPI to the EkoADC via HTTPS.
2. Upon receiving the user account details, EkoADC performs an LDAP binding with the Active Directory for verification.
3. If the user is successfully authenticated, EkoADC sends the result back to EkoIDMAPI.

## 3. Key Benefit

A significant benefit of implementing Eko AD Sync is that Eko automatically creates your company’s directory on the application, which removes the need to manually add coworkers. This ensures that user data, including associated information like group memberships, is automatically maintained and up-to-date across your organization and the Eko platform.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.amitysolutions.com/ekoai/getting-started/eko/eko-ad-sync/introduction-to-eko-ad-sync/what-is-eko-ad-sync.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
