Software Development Kit (SDK) Release Notes
Table of Contents
Overview

The Matrix42 Software Development Kit (SDK) provides powerful tools (Power Shell libraries and .NET libraries) to communicate with Empirum.
Customers, partners, and software vendors can integrate Empirum into existing processes and products or extend its enormous capabilities to perfectly fit into their enterprises.
The Matrix42 Software Development Kit (SDK) for Client Management includes everything needed to access the power of the platform from other systems:
- Power Shell Cmd Lets offer easy to use access to Empirum via scripting
- .NET based API (Application Programming Interface) DLL’s allows powerful programming with all .NET compatible programming languages
System Requirements
In general, the SDK can be used with all currently supported Empirum versions.
Client:
- Any 64-bit Windows operating system that supports at least Windows Power Shell 4.0.
Download Windows Power Shell 4.0 and Other Quick Reference Guides from Official Microsoft Download Center - The SDK client must be able to communicate with the Empirum-API over the configured port (e.g. port 9200).
The usage of the Empirum SDK is only for Empirum Administrators with EMP_ADMIN role or 'db_owner'.
New features and changes
SDK Version 1.3.17 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.16 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.15 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.13 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.12 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.11 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.10 contains the following changes and new functionalities:
| Feature Enhancements |
|---|
|
SDK Version 1.3.9 contains the following changes and new functionalities:
| Security Enhancements |
|---|
|
| Feature Enhancements |
|---|
|
Installation
- Start Empirum DBUtil and setup the Empirum-API service.
- Activate your preferred protocol HTTP (e.g. port 9200) or TCP (e.g. port 9100) and set the security (Encrypted/Not encrypted) for the communication channel.
- Apply all settings and restart the Empirum-API service to run with the new settings.
- Install the Empirum SDK Windows Installer package on the computer you want to run the SDK.
The installation of the SDK on the Empirum Master Server is not necessary.
After the installation, you will find the following folder structures:
| Description | Path |
|---|---|
| Power Shell module | \Windows\system32\Windows Power Shell\v1.0\Modules\Matrix42.SDK.Empirum.Power Shell |
| .NET library | .\Program Files\Matrix42\SDK\Empirum |
| Documentation | .\Program Files\Matrix42\SDK\Empirum\Documentation |
| Power Shell sample scripts | .\Program Files\Matrix42\SDK\Empirum\Samples |
All activities are available in any Power Shell host on the machine because the installer extends the module path. When uninstalling these changes will be reverted as well.
You can either use the Empirum Power Shell SDK console that will be created by the installation process in the start menu. It is also possible to use any other Power Shell console or Power Shell editor.
To see how it works you can try the sample script - Getting Started.ps1.
To run this script in your environment just add/replace the credentials in the header of the script and let it run.
Please be sure, that you run all scripts with elevated rights, if UAC is activated.
All sample scripts are using unencrypted passwords. In a productive environment, we strongly recommend encrypted AES256 passwords. Please use the tool Emp Crypt.exe which will be shipped as a part of Empirum. You can find it on your Empirum Master Server in the folder \Empirum\Add Ons\Encrypter. Please use the /AES256 parameter for the password.
To connect to the Empirum-API use an Empirum user (SQL or Windows user) which is member of the role EMP_SERVICES.
Available Commandlets
You can get the list of all available cmdlets by typing:Get-Command -Module Matrix42.SDK.Empirum.Power Shell
You can get the help for each cmdlet by typing:Get-Help <Cmdlet> -Full
For a complete cmdlet overview, see also the HTML documentation.
Start > All Programs > Matrix42 SDK > Empirum Power Shell SDK Documentation
Audit
All actions except the Get- and Find- functions will be audited.
You can view the audit entries in the EMC > Management > Audit > Services > Empirum API/SDK.
Troubleshooting
- Please be sure the Empirum-API service is running (Empirum Interface Hosting Service).
- Check the Empirum-API log file ehost.log in C:\Program Data\Matrix42\Logs\Empirum API on your Empirum Master Server for errors.
- Check the port availability from the client to the server.
Supported Power Shell Cmdlets (Empirum Version)
| Power Shell Cmdlets | >= 21.0.3 |
|---|---|
| Add-Empirum Computer To Group | |
| Add-Empirum Package To Group | |
| Close-Matrix42Service Connection | |
| Export-Empirum Package | |
| Find-Empirum Computer | |
| Find-Empirum Group | |
| Find-Empirum Package | |
| Get-Empirum Backend Task Status | |
| Get-Empirum Boot Configuration | |
| Get-Empirum Boot Configuration | |
| Get-Empirum Distributioncommands | |
| Get-Empirum Package State | |
| Get-Empirum Property | |
| Import-Empirum Package | |
| Invoke-Empirum Computer Activation | |
| Invoke-Empirum Computer Deactivation | |
| Invoke-Empirum Computer End Of Life | |
| Invoke-Empirum Group Activation | |
| Invoke-Empirum Group Deactivation | |
| Invoke-Empirum Package Reinstallation |
|
| New-Empirum Boot Configuration | |
| New-Empirum Boot Configuration | |
| New-Empirum Computer | |
| New-Empirum Group | |
| Remove-Empirum Package (Supports Software packages, Agent Templates, Boot Configurations and Variable Configurations) |
|
| Open-Matrix42Service Connection | |
| Remove-Empirum Computer | |
| Remove-Empirum Computer From Group | |
| Remove-Empirum Group | |
| Remove-Empirum Package From Group | |
| Set-Empirum Boot Configuration | |
| Set-Empirum Distributioncommands | |
| Set-Empirum Property |
|
| Start-Hash Generation |
= Functionality available
![]()
= Functionality not available
Supported Audit Functionality (Empirum Version)
| >= 21.0.3 | |
|---|---|
| Audit |
EAI – Power Shell Cmdlets Mapping
| EAI Functions | Power Shell Cmdlets |
|---|---|
| Activate Client In Software Group | Invoke-Empirum Computer Activation |
| Activate Client_OS | Invoke-Empirum Computer Activation |
| Activate Client_SW | Invoke-Empirum Computer Activation |
| Activate Client_SWOS | Invoke-Empirum Computer Activation |
| Activate Config Group_OS | Invoke-Empirum Group Activation |
| Activate Config Group_SW | Invoke-Empirum Group Activation |
| Activate Config Group_SWOS | Invoke-Empirum Group Activatio |
| Activate Software Group | Invoke-Empirum Group Activation |
| Activate User | |
| Assign Client To Config Group | Add-Empirum Computer To Group |
| Assign Client To Config Group And Activate_OS | Add-Empirum Computer To Group + Invoke-Empirum Computer Activation |
| Assign Client To Config Group And Activate_SW | Add-Empirum Computer To Group + Invoke-Empirum Computer Activation |
| Assign Client To Config Group And Activate_SWOS | Add-Empirum Computer To Group + Invoke-Empirum Computer Activation |
| Assign Client To Software Group | Add-Empirum Computer To Group |
| Assign Empirum Server To Client | Set-Empirum Property |
| Assign Empirum Server To Config Group | Set-Empirum Property |
| Assign Patch Management Class To Config Group | Add-Empirum Package To Group |
| Assign PXETo Config Group | Add-Empirum Package To Group |
| Assign Software Class To Client |
Multiple steps neccessary:
|
| Assign Software Class To Client And Activate_SW |
Multiple steps neccessary:
|
| Assign Software Class To Config Group | Add-Empirum Package To Group |
| Assign Software To Client |
Multiple steps neccessary:
|
| Assign Software To Client And Activate_SW |
Multiple steps neccessary:
|
| Assign User To Config Group | |
| Clone Client | Please use the script Clone Computer.ps1 |
| Create Client | New-Empirum Computer |
| Create Config Group | New-Empirum Group |
| Create User | |
| Deactivate Client_OS | Invoke-Empirum Computer De Activation |
| Deactivate Client_SW | Invoke-Empirum Computer De Activation |
| Deactivate Client_SWOS | Invoke-Empirum Computer De Activation |
| Deactivate Config Group_OS | Invoke-Empirum Group De Activation |
| Deactivate Config Group_SW | Invoke-Empirum Group De Activation |
| Deactivate Config Group_SWOS | Invoke-Empirum Group De Activation |
| Deactivate User | |
| Delete All Empirum Server From Client | Set-Empirum Property |
| Delete Client From Config Group | Remove-Empirum Computer From Group |
| Delete Client From DB | Remove-Empirum Computer |
| Delete Client From Sw Group | Remove-Empirum Computer From Group |
| Delete Config Group | Remove-Empirum Group |
| Delete Empirum Server From Client | Set-Empirum Property |
| Delete Empirum Server From Config Group | Set-Empirum Property |
| Delete Patch Management Group From Config Group | Remove-Empirum Package From Group |
| Delete PXEFrom Config Group | Remove-Empirum Package From Group |
| Delete Software Class From Config Group | Remove-Empirum Package From Group |
| Delete Software From Config Group | Remove-Empirum Package From Group |
| Delete Software From DB | |
| Delete Software Group From DB | |
| Delete User From Config Group | |
| Delete User From DB | |
| Delete Variable Value From Config Group | Set-Empirum Property |
| Delete Variable Value From User | |
| Delete Variable Value On Client | Set-Empirum Property |
| Generate Package Hash | Start-Hash Generation |
| Reinstall Software | Invoke-Empirum Package Reinstallation |
| Set Config Group Distribution Commands | Set-Empirum Distribution Commands |
| Set Group Rights | |
| Set Software Class Distribution Commands | Set-Empirum Distribution Commands |
| Set Software Distribution Commands | Set-Empirum Distribution Commands |
| Set Software Group Distribution Commands | Set-Empirum Distribution Commands |
| Set Variable Value On Client | Set-Empirum Property |
| Set Variable Value On Config Group | Set-Empirum Property |
| Set Variable Value On User | |
| Uninstall Software From Client | Set-Empirum Distribution Commands |