> For the complete documentation index, see [llms.txt](https://docs.harmony.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.harmony.io/integrations/mdm/ninjaone-ninjarmm.md).

# NinjaOne (NinjaRMM)

The NinjaOne (NinjaRMM) integration allows you to connect your NinjaOne environment as an MDM source within Harmony's asset management platform. Once configured, Harmony automatically syncs device and asset data from NinjaOne, giving you unified visibility across all your managed endpoints alongside any other MDM sources you have connected.

### Prerequisites

Before setting up the integration, make sure you have:

* An active NinjaOne (NinjaRMM) account with devices enrolled
* Sufficient permissions in NinjaOne to generate API credentials
* Access to the Integrations settings in your Harmony account

### Creating API credentials in NinjaOne

1. In NinjaOne, go to **Administration** > **Apps** > **API**, open the **Client App IDs** tab, and click **Add**.
2. Set **Application Platform** to **API Services (machine-to-machine)** and enter a name.
3. Under **Scopes**, select **Monitoring**. Harmony only reads data, so no other scope is needed.
4. Under **Allowed Grant Types**, select **Client Credentials**.
5. Save the app and copy the **Client ID** and **Client Secret**. The client secret is shown only once.

### Connecting NinjaOne to Harmony

To add NinjaOne as an MDM source:

1. In Harmony, navigate to **Settings** and open the **Integrations** section.
2. Find **NinjaOne** under **MDM** (or search for it by name) and click its card. If a NinjaOne instance is already connected, click **+ Create instance**.
3. Enter the following:
   * **Instance name** (required) - a name for this connection
   * **Base URL** - the address you use to sign in to NinjaOne, including `https://` (for example, `https://app.ninjarmm.com` or `https://eu.ninjarmm.com`)
   * **Client ID** - the client ID of the API app (a legacy API Access Key ID also works)
   * **Client secret** - the app's client secret (or the legacy Secret Access Key)
4. Click **Connect**.

Once connected, Harmony will begin pulling in your asset inventory from NinjaOne automatically.

### How the Sync Works

After the integration is active, Harmony performs automatic syncs to keep your asset data up to date. Device and endpoint information sourced from NinjaOne is merged into your unified asset inventory alongside data from any other connected MDM sources. This means you can manage and review all your endpoints from a single place without switching between tools.

### What Gets Synced

The following data is imported from your NinjaOne environment:

* **Devices** - All endpoints managed within NinjaOne, including desktops, laptops, and servers
* **Asset details** - Device attributes such as name, operating system, hardware information, and status

### Viewing Your NinjaOne Assets

Once the sync is running, your NinjaOne devices appear in the Harmony asset management platform alongside assets from your other MDM sources. You can filter, search, and manage these assets using the same workflows you use for all other connected sources.

### Troubleshooting

If your NinjaOne assets are not appearing in Harmony, check the following:

* Confirm that the API credentials you entered are correct and have not expired.
* Verify that the credentials have the necessary permissions in NinjaOne to read device and asset data.
* Check in **Settings** > **Integrations** that the NinjaOne instance is still connected.
* If the issue persists, or the credentials changed, delete the NinjaOne instance and connect it again with the current credentials. The credentials of a connected NinjaOne instance cannot be edited.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.harmony.io/integrations/mdm/ninjaone-ninjarmm.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
