Welcome to Adaxes SDK
Welcome to Adaxes SDK
This SDK includes API references, code samples, and other documentation to help you customize Adaxes to better fit your business processes, or integrate it with third-party applications. To get started, check out the APIs available in Adaxes, and what they let you accomplish, as their purpose is quite different.
Create custom scripts and integrate them into business rules, scheduled tasks, and custom commands to extend the built-in capabilities of Adaxes. For example, your user provisioning workflow can be complemented by a script that will automatically create the required accounts in third-party systems for the new user. For details, see Server-side scripting.
Create your own applications, user interfaces, or scripts that will perform operations in your directory through Adaxes. The operations will be processed by the Adaxes service, which allows your apps to benefit from Adaxes functionality like business rules and property patterns. For example, your app only needs to send a request to create a user, and Adaxes will pick up from there and execute the provisioning workflow – create a mailbox, assign Microsoft 365 licenses, add the user to groups, etc.
All operations performed interactively in Adaxes Administration console can also be performed using scripts. This means you can automate the creation and modification of any configuration object (scheduled task, property pattern, business unit, etc.). For example, a script can compare a list of values allowed by a property pattern with the data from a CSV file, and update the property pattern if there is a discrepancy.
Adaxes offers four APIs, each serving its own purpose:
- ADSI provider – acts as an API layer behind other APIs, but can be also accessed directly to perform any task within the Adaxes ecosystem.
- REST API – leverages the HTTP protocol for easy-to-build integrations that can be crafted using almost any programming language.
- PowerShell module – lets you perform directory operations through Adaxes using the command line.
- SPML provider – enables integration with SPML-based provisioning systems.
The ADSI Provider is the main programming interface for Adaxes. It is a set of Component Object Model (COM) interfaces and objects that you can use within scripts and custom applications to work with your directory and Adaxes. Adaxes ADSI objects can be accessed and manipulated by any language that supports COM, such as PowerShell, C#, C++, or Java.
All Adaxes clients, including the Administration console, the Web interface, and the REST API use the ADSI Provider to manipulate directory objects and Adaxes configuration. The ADSI Provider translates client requests into .NET Remoting calls and sends them to the Adaxes service. Upon receiving an operation request from a client, the Adaxes service performs the requested operation in your directory or in the Adaxes backend.
For details about using ADSI provider, see Writing ADSI scripts.
The REST API is a flexible interface that allows you to send HTTP requests to access and modify your directory via Adaxes. Besides the standard directory operations like user modification or group membership management, you can also access some of the Adaxes-specific features. For example, you can retrieve members of business units, or execute custom commands. The purpose of the REST API is to enable easy integrations with third party systems or your custom applications, as you can use virtually any programming language to make API calls. For details about using the REST API, see REST API Overview.
Adaxes PowerShell Module is a set of PowerShell cmdlets designed to provide a command-line interface for directory management. Using the cmdlets included in the module, you can create, update and delete directory objects, manage group memberships, reset passwords, search objects, etc.
Operations on directory objects can be performed either via the Adaxes service, or by accessing Active Directory domain controllers directly. When using the Adaxes service as a proxy, you benefit from Adaxes features like automation, workflow rules, data validation policies, audit, and reporting. For details about using the PowerShell module, see PowerShell Module Overview.
The SPML provider enables SPML-compliant applications to communicate with your directory via the SPML 2.0 protocol. The provider transforms SPML requests sent by these applications into directory operations or data retrieval queries. The SPML provider can access your directory via Adaxes or directly connect to Active Directory domain controllers. In the direct access mode, Adaxes functionality (business rules, property patterns, etc.) is bypassed. The SPML provider is an alternative legacy integration method for provisioning systems that support only SPML.