Skip to main content

NinjaOne RMM Integration

Deepser provides a dedicated module for integrating with NinjaOne RMM. Through flow configuration, you can synchronize organizations, locations, devices, and activities between both platforms to streamline your IT management workflows.

The integration enables the following functionalities:

  • Download all Organizations listed in NinjaOne RMM
  • Download all Locations listed in NinjaOne RMM
  • Download all Devices listed in NinjaOne RMM
  • Download the latest Activities created in NinjaOne RMM
  • Receive new Activities created in NinjaOne RMM in real-time
  • Create or Update an Organization
  • Create or Update a Location
  • Create or Update a Device

Below is a summary of the available actions on the flow side regarding the integration:

Enable NinjaOne RMM Integration on Deepser

To enable the integration module, navigate to the Deepser Backend menu at System > Configurations > IntegrationsConfigurations, select and enable NinjaOne, then Save.

Once the integration is enabled in the menu, you will see the new item.

Organization

An "organization" in NinjaOne RMM represents a logical division within the platform, designed to group devices, users, and configurations associated with a specific client, department, or any organizational unit.

Within Deepser, in the Integration > NinjaOne > Organization section, you will find the organizations created in NinjaOne RMM and synchronized via the integration.

Below are the main fields provided and synchronized in Deepser:

FieldDefinition
Organization IdThe unique identifier automatically assigned by NinjaOne RMM to the organization.
NameThe descriptive name of the organization.
DescriptionA more detailed description of the organization.
User DataAdditional data related to the organization, such as contact information, specific notes, or other customized metadata.
Node Approval ModeDefines the method by which devices (or "nodes") are approved for inclusion within the organization.
TagsLabels or keywords assigned to the organization to facilitate classification, search, and grouping.
FieldsCustom fields associated with the organization, allowing additional tailored information to be stored and managed.

With specific configurations, you can link Organizations with other similar entities in Deepser, such as "Account" or "Company."

Location

A location in NinjaOne RMM represents a logical or physical grouping used to organize devices and resources within a specific area of an organization.

In Deepser, under the Integration > NinjaOne > Location section, you can find the locations that were created in NinjaOne RMM and synchronized through the integration.

Below are the main fields provided and synchronized in Deepser:

FieldDefinition
Location IdThe unique identifier of the location within the system.
OrganizationThe organization to which the location belongs.
NameThe descriptive name of the location.
AddressThe physical address of the location (such as street, city, postal code, country, etc.).
DescriptionAdditional details and descriptive notes about the location.
User DataAdditional and customized data.
TagsLabels or keywords used to categorize the location.
FieldsCustom fields associated with the location, allowing tailored information specific to the location to be stored and managed.

With specific configurations, you can link Locations with other similar entities in Deepser, such as "CI" (Configuration Items) of the "Location" class.

Device

A device in NinjaOne RMM refers to any endpoint (physical or virtual) managed and monitored by the platform.

In Deepser, under the Integration > NinjaOne > Device section, you will find the devices created in NinjaOne RMM and synchronized via the integration.

Below are the main fields provided and synchronized in Deepser:

FieldDefinition
Device IdUnique identifier assigned to each device within the system.
Parent DeviceThe ID of the "parent" device to which the current device belongs.
OrganizationThe organization (logical division or client) the device is associated with.
AddressThe physical address of the location (e.g., street, city, postal code, country, etc.).
LocationThe site or location (physical or logical) where the device is located.
Device TypeThe hardware type of the device.
Node ClassA general classification of the device at the "node" level.
Node RoleThe operational role the device plays within the infrastructure.
Role PolicyThe set of rules associated with the device's role.
PolicyThe configurations, rules, or automations applied to the device.
Approval StatusThe approval status of the device within the system.
OfflineThe device's connectivity status, indicating whether the device is currently offline.
Display NameThe name displayed in the NinjaOne RMM user interface to identify the device.
System NameThe operating system name or internal asset name as recorded by the system.
DNS NameThe domain name associated with the device, useful for network resolutions and DNS-level identification.
Netbios NameThe NetBIOS name (typical in Windows environments) used to identify the device on the local network.
CreatedThe date and time the device was registered.
Last ContactThe last time the device communicated with the NinjaOne RMM server.
Last UpdateThe date and time of the last update to the device's data or configuration.
User DataAdditional or customized data associated with the device.
TagsTags or keywords assigned to the device.
FieldsCustom fields associated with the device to extend the basic information.
Maintenance StatusWhether the device is currently under maintenance or scheduled for planned interventions.
Maintenance StartThe start date and time of the scheduled maintenance window for the device.
Maintenance EndThe end date and time of the maintenance window, after which the device returns to a normal operational state.
IP AddressesList of IP addresses assigned to the device.
MAC AddressesList of MAC addresses associated with the device's network interfaces.
Public IPThe public IP address associated with the device.
NotesAnnotations or comments related to the device.
DisksInformation related to the device's physical or virtual disks, including details like capacity, status, and configuration.
Operating SystemsThe operating system installed on the device.

With specific configurations, you can link Devices with other similar entities in Deepser, such as "CI" (Configuration Items) of the "Device" class.

Activity

An activity in NinjaOne RMM represents an event logged in the system, such as the execution of a script, software update, remote action, status change, or error report.

Within Deepser, under the Integration > NinjaOne > Activity section, you can find activities created in NinjaOne RMM and synchronized through the integration.

Here are the main fields provided and synchronized in Deepser:

FieldDefinition
Activity IdUnique identifier of the activity in the system.
DeviceThe device on which the activity was performed.
Activity TimeDate and time when the activity occurred.
SeveritySeverity of the activity, indicating the importance or urgency of the event.
PriorityPriority assigned to the activity, useful for determining the order of management.
Series UidIdentifier of the series of related activities, useful for tracking operations composed of multiple steps.
Activity TypeType of activity, such as "Script Execution," "Software Installation," or "Remote Session."
Status CodeNumerical code representing the activity's state, such as completed or failed.
StatusTextual description of the activity's state, e.g., "Success" or "Failed."
Activity ResultResult of the activity, providing details on the outcome.
Source Config UidIdentifier of the source configuration that generated the activity, such as a policy or a trigger.
Source NameName of the source that originated the activity.
SubjectObject or title of the activity, useful for quick identification.
UserUser who executed or initiated the activity.
MessageMessage associated with the activity, providing additional details or descriptions.
TypeCategory of the activity, such as "Automated" or "Manual."
DataAdditional data related to the activity, which may include specific parameters or detailed results.

With specific configurations, you can link Activities with other similar entities in Deepser, such as "Service Operations".

Connection and OAuth Client Configuration

To proceed with the integration setup, you need to create a new connection and an OAuth client.

Navigate to System > Integration > NinjaOne > Connection and click the "Add Connection" button.

The Connection Configuration screen will open:

The following information is required:

FieldDefinition
NameSet a custom name for the connection
OAuth ClientSelect the OAuth client to be used for the connection with NinjaOne RMM. By clicking the "+" icon below, a window will open to create a new OAuth client. The fields related to this form are described in the next table.
StatusEnables or disables the connection

For the creation of a new OAuth Client, the following information is required:

FieldDefinition
Redirect UriOAuth Client URI generated by Deepser, required by the NinjaOne RMM app. The URI will be generated and displayed after the first creation.
NameSet a custom name for the OAuth Client.
StatusField to enable or disable the OAuth client.
ProviderSelect "NinjaOne RMM."
DomainSelect the domain of your "NinjaOne RMM" instance. For installations in Europe, the standard domain is EMEA.
Client IDEnter the Client ID generated by the NinjaOne RMM app.
Client SecretEnter the Client Secret generated by the NinjaOne RMM app.

The creation of the app in NinjaOne RMM is described in the following section.

NinjaOne RMM API Configuration

On NinjaOne RMM, navigate to Administration > Apps > API.

From the API screen, click "Add" and the following screen will open:

Select the "Web (PHP, Java, .Net Core, etc.)" option.

Fill in the form with the following information:

  • The Redirect URI of Deepser's OAuth Client.
  • The Scopes needed.
  • Authorization Code and Refresh Token as Allowed Grant Types.

Below is an example configuration:

By clicking the Save button in the upper right corner, NinjaOne RMM will generate the Client Secret.

Copy this value and enter it in the Client Secret field of Deepser's OAuth Client.

warning

Make sure to copy and save the Client Secret value. It will no longer be available once you leave this page.

Click the Close button, and you will return to the Administration / Apps / API screen.

From there, copy the Client ID generated by NinjaOne RMM and paste it into the Client ID field of Deepser's OAuth Client.

Below is an example configuration of a Deepser OAuth Client:

Click the Validate button in the Deepser OAuth Client form.

In the screen that opens, click Authorize:

If the authentication returns the message "Client was successfully authorized", the NinjaOne RMM Client is correctly configured and ready to be used within a Connection.

Download Data from NinjaOne RMM

To retrieve all objects in NinjaOne RMM and create them in Deepser, you use a dedicated flow that handles the creation and/or updating of Organization, Location, Device, and Activity. These flows are typically used during the initial setup phase to establish a working foundation, but you can also use them to retrieve information from NinjaOne RMM on an ongoing basis.

Proceed with creating a new Flow:

  1. First, configure a trigger by setting the automatic execution of the flow once per day:

  1. By clicking the "+" icon, proceed to configure a node to download all organizations via: Action > Integration > NinjaOne > Download Multiple > Organizations:

Once the action has been added, select the previously configured connection to NinjaOne:

  1. Once the Organizations have been retrieved, you can proceed to iterate through them. Add a new node by clicking the "+" button, then select Logic > Foreach:

Select the collection of organizations created earlier (from the right-hand menu):

Finally, based on each Organization obtained through Foreach, retrieve the Locations and Devices associated with each Organization.

  1. Additionally, you can retrieve part of the Activities as a historical record. To do this, you need to iterate through the Devices:

Then retrieve the latest 200 Activities associated with each Device.

The complete flow will look as follows:

The flow handles the creation and updating of objects retrieved from NinjaOne RMM in Deepser, including Organizations, Locations, Devices, and Activities.

The example flow automatically executes every day at 8:00 AM (you can modify this parameter in the Trigger settings).

You can manually run the flow by clicking the Run Now button in the Trigger section of the flow.

Important Notes
  • For the nodes in rows 1, 3, 4, and 6, ensure that the selected Connection is the one you configured earlier.
  • Node 6 retrieves the latest 200 Activities (alerts) generated for each Device. It is recommended to keep this node only for the first execution of the flow. Future Activities created in NinjaOne will also be created in Deepser through an additional flow. Alternatively, you may choose to remove this node (along with Node 5).
  • Enable the flow once it has been imported.