> For the complete documentation index, see [llms.txt](https://docs.rewst.help/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rewst.help/rewst-documentation/documentation/integrations/integration-guides/nable-integration-setup.md).

# N-able N-central integration

{% hint style="warning" %}
**N-central Required Version**

The new REST API endpoints are only available on N-central with a version of 2023.9 or above. Contact your N-able Representative to be upgraded where applicable.

&#x20;If you’re new to integrations in Rewst, read through our introductory integration documentation [here](https://docs.rewst.help/documentation/integrations).
{% endhint %}

{% hint style="info" %}
&#x20;If you’re new to integrations in Rewst, read through our introductory integration documentation [here](https://docs.rewst.help/documentation/integrations).
{% endhint %}

## What does the N-able N-central integration do?

Our N-able N-central integration allows MSPs to seamlessly interact with N-central's powerful RMM capabilities through Rewst, facilitating device management, task automation, and efficient operational workflows.

### Integration use cases

* Automatically synchronize device and customer data with your Rewst workflows.
* Execute and manage scheduled tasks directly from Rewst.
* Run automated Powershell scripts remotely to maintain and configure devices.

## Integration prerequisites

* N-able N-central version 2023.9 or above
* A dedicated API user created in N-able N-central
* A JSON web token from N-able N-central
* Powershell scripts configured for API access in N-able N-central
* Defined organization variables in Rewst

## Set up the N-able N-central integration

Set up steps in N-able N-central

1. Navigate to **Administration > User Management > Users**.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/VtRreT1r9jztgUhG2VZf/CleanShot%202025-03-31%20at%2019.03.55@2x.jpg)
2. Click **Create User** to create a new user specifically for API access. Name the user something that will easily identify its purpose.
3. Assign appropriate permissions required for your automations On the **Access Groups and Roles** tabs.
   1. **Roles**: Create a role under **user management > roles** for a full API user. Name it administrator and set all the properties to manage. A reference sheet can be found here under [N-able API user permissions](https://documentation.n-able.com/N-central/userguide/Content/User_Management/Role%20Based%20Permissions/role_based_permissions_API_user.htm).
   2. **Access Groups**: Set this to **All**.
4. Click the **User Details** tab. Click **User Information**.
5. Check **MFA Not Required** to on.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/myNHdUMv4mk7FNhLVEa2/Screenshot%202025-03-31%20at%2010.54.36%E2%80%AFAM.png)
6. Click into the **API Access** tab.
7. Check **API Only User** to on.
8. Click **Save**.
9. Click **Generate JSON Web Token**.
10. Securely copy the generated API key. You’ll need this information for the next setup steps in Rewst.

<figure><img src="https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/ESOqQZVXFQDo1bcVV2t9/CleanShot%202025-03-31%20at%2019.06.38@2x.jpg" alt=""><figcaption></figcaption></figure>

### Set up steps in Rewst

1. Navigate to **Integrations** in the left side menu of your Rewst platform.
2. In the Integrations page, search for the `N-able N-central` integration.
3. Click on the integration tile to launch the configuration setup dialog.
4. Choose from either Production or Demo Mode for the setup of your integration:
   1. **Production**: Connect with real credentials for live data
   2. **Demo Mode**: Explore the integration with simulated mock responses
5. Click **Next: Configure and Authenticate**.
6. Select **+ Create New Credential from the Credential** drop-down selector.
7. Enter the information copied from N-able N-central into the relevant fields:
   1. **Base URL -** N-able N-central hostname, for example `rewst.n-able.com`.
   2. **API Key** - The JSON web token you previously generated
8. Click **Save Credential**.
9. Click **Next: Confirm**.
10. Click **Install Integration**. The integration will now appear in the top Connected section of your Integrations page.&#x20;
11. Click on the installed integration. Scroll down to the Org Mappings section of the configuration page and complete organization mapping as needed.

### Run Powershell via RMM: Script setup

To run Powershell on devices via the RMM, you must create the script in your N-able repository and enable its access for use over the API, as per N-able security policies.

{% hint style="info" %}
To complete all the needed script setup steps in N-able N-central, you'll need to be assigned their Default Administrator Role.
{% endhint %}

1. Navigate to **Configuration > Scheduled Tasks > Script/Software Repository** in N-able.
2. Click **Add > Scripting**.\
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/2VF5LqEav4XFXhWQtJ4B/Screenshot%202025-07-24%20at%2012.07.14%E2%80%AFPM.png)
3. Name the script `Rewst (Powershell)`.
4. Enter `Executes Powershell sent via API from Rewst` into the **Description** field.
5. Download the provided PS1 file from the bottom of this instruction section. Update your Powershell script's `$rewst_base_url` variable to match your Rewst Instance URL, using the table provided at the bottom of this section. You can identify which instance you are on by referencing the URL you use to access Rewst. The content of the **Command Line Parameters** field will automatically populate when you upload the file.\
   Example of correct base URL: `https://engine.rewst.io/webhooks/custom/action`
6. Click **Browse** to upload the edited file into N-able N-central.
7. Click **Ok**.
8. Navigate to **Configuration > Scheduled Tasks > Script/Software Repository.**<br>

   <figure><img src="https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/aRP5vexzFNxyd7A64b2O/image.png" alt=""><figcaption></figcaption></figure>
9. Enable **API Access** for the script.
10. Note the **Repository ID**.
11. In Rewst, [create an organization variable](/rewst-documentation/documentation/automations/organization-variables.md#manually-add-a-new-organization-variable) named `nable_rewst_powershell_script_id` with the Repository ID as its value. Set this organization variable as default.&#x20;

| Rewst URL        | Base URL            |
| ---------------- | ------------------- |
| app.rewst.io     | engine.rewst.io     |
| app.pdx.rewst.io | engine.pdx.rewst.io |
| app.eu.rewst.io  | engine.eu.rewst.io  |
| app.rewst.eu     | engine.rewst.eu     |
| app.rewst.asia   | engine.rewst.asia   |

{% file src="/files/rbZFApF3Ne9Uq1zFlxWe" %}

{% hint style="info" %}
The org variable is only currently required as there is no way to search for a script with the existing API endpoints.
{% endhint %}

## Use custom PowerShell scripts with your RMM integration

If you're writing custom PowerShell scripts to use and be run with your RMM integration, you'll need to manually add webhook calls. Any custom script will time out if used without first adding the webhook calls. The use of standard built-in Rewst scripts with your RMM does not require you to add the calls.

* The webhook calls everyone doing this custom scripting should use will always be as follows.

```

### Send all the data back to RewstyRewst ###



$postData = $PS_Results | ConvertTo-Json
Invoke-RestMethod -Method 'Post' -Uri $post_url -Body $postData -ContentType 'application/json; 
charset=utf-8'
```

1. Navigate to **Automation > Workflows** in Rewst.
2. Create a new workflow and name it with something short and descriptive, such as `Test N-able Integration`.
3. Add the action **List Agents** to the workflow builder canvas, by dragging it from the left pane.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/wa2QpCNGhdbOuSFduJfa/CleanShot%202025-03-31%20at%2019.28.49.jpg)
4. Add a trigger to your test workflow by clicking <img src="https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/QqkxN2Sbl2mLh6h1ko4L/Screenshot%202025-02-21%20at%2011.13.39%E2%80%AFAM.png" alt="" data-size="line">. Name your trigger whatever you’d like.
5. Click into the trigger’s settings.
6. Toggle **Enabled** to on.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/FKCctFoReJEJdzZ3f60x/CleanShot%202025-03-31%20at%2019.29.17.jpg)
7. Set the Trigger Type to **Core - Always Pass**.
8. Click ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/MR1BOijVNLbjNGOt41BX/Screenshot%202025-03-13%20at%206.14.27%E2%80%AFPM.png) next to **Integration Overrides**. Add **N-able N-central** as your integration override.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/bGu9aagcRsyrIp2wdp1Y/CleanShot%202025-03-31%20at%2019.29.51.jpg)
9. In the **Activate Trigger To Run For** section, keep **Selected Organization** toggled on. Toggle **All current and future managed organizations** on, or choose just one or individually selected organizations from the **Organizations** drop-down selector.\
   \
   ![](https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/omeIF21pZ7WsFTwJFrOd/CleanShot%202025-03-31%20at%2019.30.35.jpg)
10. Click **Submit** to save your trigger.
11. Click **Publish** to save your changes.
12. Click Test to run your workflow. Note that this will bring up a drop-down selector to choosing organizations.
13. Select your MSP level.
14. Click **Test** and confirm that the execution finishes without errors.\ <br>

    <figure><img src="https://content.gitbook.com/content/h0G0em3PH6aDfPoI5XpN/blobs/eFKctvyCtH5e6NqsoANK/CleanShot%202025-03-31%20at%2019.31.20.jpg" alt=""><figcaption></figcaption></figure>
15. If the test for your MSP is successful, do the same test again. At this point in your steps, select a client organization instead, and ensure that it finishes with no errors.

{% hint style="success" %}
Got an idea for a new Integration? Rewst is constantly adding new integrations to our integrations page. Submit your idea or upvote existing ideas here in our [Canny feedback collector](https://rewst.canny.io/integrations).
{% endhint %}

## Current limitations

There is currently no way to identify a domain controller via the N-able REST API. You must manually set the hostname of the preferred DC. Do this using the organization variable form that was discussed during your onboarding. The end result will be an organizational variable called **preferred\_domain\_controller** and a value of the hostname of that client's DC.


---

# 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.rewst.help/rewst-documentation/documentation/integrations/integration-guides/nable-integration-setup.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.
