NinjaOne - IT Glue to NinjaOne Documentation Migration

This scripts provides the ability to migrate from IT Glue to NinjaOne Documentation via an automatic migration.

This is an unofficial script and not supported by NinjaOne. For problems please log an issue on Github or visit the NinjaOne Community Discord http://discord.gg/ninjaone

This script is based off my original IT Glue to Hudu migration script which had many improvements from Mendy Green (https://www.risingtidegroup.net/) which have been incorporated into this script where appropriate.

Requirements

  1. You must have NinjaOne Documentation enabled and NinjaOne IT Asset Management enabled if you wish to migrate configurations which do not already existing in NinjaOne as devices. ( NinjaOne account managers can enable Asset Management)

  2. An IT Glue subscription with API access

  3. A full downloaded export of your IT Glue account including passwords.

  4. PowerShell 7

Getting Started

The machine you use for the migration will need to store your passwords and data in an unencrypted format during the migration. Make sure this is a secure machine and using something such as Bitlocker to keep your data secure during the migration process.

  1. Make sure you have setup Organizations, Locations and devices in NinjaOne for any of the configurations you wish to have linked to NinjaOne devices. Configurations that are not found will be created as Unmanaged Devices. Organizations and Locations that don't exist will also be created.

  2. Obtain an API Key from NinjaOne, create a Web Application with Monitoring, Management scopes, set a Redirect URI of http://localhost:9193/ and enable allowed grant types of 'Authorization code' and 'Refresh token'

    1. Browse to Administration -> Apps -> API

    2. Click Add client app

    3. Select 'Wev (PHP, Java, .Net Core, etc. )

    4. Enter a name such as IT Glue Migration

    5. Enter a Redirect URI of http://localhost:9193/ make sure to include the trailing /

    6. Tick 'Monitoring' and ' Management' in the Scopes section.

    7. Tick 'Authorization code' and 'Refresh Token' under Allowed grant types.

    8. Add the application and make note of the client_id and client_secret.

  3. Obtain an API key from IT Glue with password access.

    1. Browse to Admin -> API Keys

    2. Click the + button

    3. Enter a name

    4. Tick password access

    5. Click generate API Key

    6. Make a note of the API Key.

  4. Export IT Glue Data

    1. Go to Admin -> Export Data

    2. Choose 'Entire account'

    3. Do not include activity logs

    4. Download the export and extract the contents onto a secure machine.

  5. Download or clone the repository to your migration machine. https://github.com/lwhitelock/ITGlue-NinjaOne-Migration

  6. Run ./ITGlue-NinjaOne-Migration.ps1

  7. Follow the instructions to set your settings.

  8. Follow the instructions to select what will import.

Post migration actions / notes

  • There will be a manual actions log of items that were not able to be migrated and will require you to work through.

  • Logs and settings for the migration process are stored in %AppData%\NinjaOneMigration

    • If you wish to rerun a section of the migration delete the associated .json file from the MigrationsLogs file.

    • Once the migration is complete these files should be securely deleted as they will contain all your passwords and data.

    • If something goes wrong with the migration these files provide all the details of what was migrated to and where, so can be reviewed.

IT Glue Item
NinjaOne Item
Can be re-run?

Organizations

Organizations

Yes - Matched on name. No Data updated

Locations

Locations

Yes - Matched on name. No Data updated

Domains

Domains - Apps and Services Document

Yes - Matched on name. No Data updated

Configurations

Devices

Yes - Matched on name. No Data updated

Contacts

Contacts

Yes - Matched on name. No Data updated

Asset Types

Apps and Services Template

Yes - Layouts will have new fields added, none removed

Assets

Apps and Services Documents

Yes - Apps and Services Documents will be matched on name and updated

Articles

Knowledge Base Articles

No - Re-running will cause duplicate KB Articles

Passwords

Passwords - Apps and Services Document

No - Will fail to create conflicting names.

Checklists are not able to be migrated as IT Glue do not include them in exports or via the Public API

Please see below for detailed information on what will be migrated and limitations.

Organizations

IT Glue Organizations will be migrated to NinjaOne organizations. The following fields will be migrated:

  • Name

  • Description

    • The first 1000 characters of the description in IT Glue will be migrated only

  • Primary location if set in IT Glue

    • See Locations section for more details on what is migrated.

Future Enhancements (no ETA)

  • Allow the mapping of additional data such as quick notes and alerts to NinjaOne Organization custom fields

Locations

IT Glue Locations will be migrated to NinjaOne Locations. The following fields will be migrated:

  • Name

  • Address

    • Address fields in IT Glue will be merged into the address field in NinjaOne, For example address1 address2, state, etc.

  • Descriptions

    • The first 250 characters of the description will be migrated into NinjaOne

Future Enhancements (No ETA)

  • Allow the mapping of additional data such as notes to NinjaOne Location custom fields

Domains

Please note NinjaOne does not currently support creating Cloud Monitors via the API, due to this domains will be created as Apps and Services documents in NinjaOne. For monitoring cloud monitors will need to be manually created for them.

The following fields will be migrated:

  • Name

  • Notes

Future enhancements (No ETA)

  • Run a one time Domain report utilising the CIPP domain checks.

  • Provide a script that will utilise these documents to perform ongoing monitoring.

  • Move to cloud monitors once an API is available.

Configurations

IT Glue Configurations will be matched to existing NinjaOne devices. It is recommended to have pre-created devices in NinjaOne via monitoring them with an agent or NMS.

Configurations will be matched by Name to System Name or Display Name, inside a matched organization.

The migration tool can create devices from configurations as Unmanaged Devices, if NinjaOne IT Asset Management is enabled and Unmanaged device roles are created.

The following fields will be migrated when unmanaged devices are created:

  • Name

  • Serial Number

  • Purchased At -> Warranty Start

  • Warranty expires at -> Warranty End

Future enhancements (no ETA)

  • Map additional fields to custom field values

  • Update details on existing devices in NinjaOne if not present

  • Map values to core Asset Fields in NinjaOne once released (10.0)

Contacts

IT Glue Contacts will be matched via email address against Technicians and End-Users. It will not match against Contacts.

Items being migrated will be created as End-Users with no role. Invitations will not be sent to end users when added.

The following fields will be migrated when contacts are created:

  • First name

  • Last name

  • First email address

  • First phone number

Asset Types

Flexible asset types will be migrated to NinjaOne Apps and Services Document Templates.

The following field types will be migrated:

IT Glue Field Type
NinjaOne Field Type

Checkbox

Checkbox

Date

Date

Number - No decimal places

Integer

Number - With decimal places

Decimal

Select

Dropdown

Text

Text

Textbox

WYSIWYG

Upload

Attachment1

Tag - Users

Not supported

Tag - Checklists

Not supported

Tag - Checklist Templates

Not supported

Tag - Contacts

Not supported

Tag - Configurations

Device multi-select

Tag - Documents

Not supported

Tag - Domains

Support coming with NinjaOne release 11.02

Tag - Passwords

Support coming with NinjaOne release 11.02

Tag - Locations

Location multi-select

Tag - Organizations

Organization multi-select

Tag - SSL Certificates

Not Supported

Tag - Tickets

Not Supported

Tag - Flexible Assets

Support coming with NinjaOne release 11.02

Percent

Integer

Password

Secure

  1. NinjaOne supports the following file types jpg, jpeg, png, gif, cab, txt, log, pdf, csv, mp3, eml, dot, wbk, doc, docx, rtf, xls, xlsx, ods, ppt, pptx, pps, ppsx, sldx, vsd, vsdx, xml, html, zip, rar, tar. For other types you can zip them. NinjaOne also only supports a single item to an attachment fields so will only automatically migrate the first supported item. Additional items can be uploaded to related items.

  2. For unsupported fields, NinjaOne will be releasing an Apps and Services dropdown field in 11.0 which will extend support for more fields.

Future Enhancements (No ETA)

  • Optional link to unsupported items via WYSWYG fields by using an html link.

  • Optional add unsupported items to related items.

  • Upload additional files to related items.

  • Automatically zip unsupported types.

  • Add support for additional types with the new field NinjaOne is releasing.

Knowledge Base Articles

Knowledge base articles will be imported to to NinjaOne. If an internal company has been set the articles there will be migrated to the Global Knowledge Base in NinjaOne, all others will be migrated to their organization.

Images must have a format of jpg, jpeg, png or gif to be embedded in articles.

There may be formatting issues based on differences in NinjaOne and IT Glue's HTML engines.

Future Enhancements (No ETA)

  • Upload attached files

  • Create relations automatically

  • Rewrite default styles to improve layout in NinjaOne

Passwords

Passwords embedded into assets will be migrated to secure fields on Apps and Services Documents itself.

All other passwords will be migrated to a new Apps and Services template called 'Passwords'

The following fields will be imported:

  • Name

  • Notes -> NinjaOne Description Field

  • Category -> List of categories will be populated by the ones currently in use in IT Glue

  • Username

  • Password

  • OTP Secret -> The OTP secret will be imported to a NinjaOne Secure Field

  • URL

Future Enhancements (No ETA)

  • Add TOTP secret to a secure related item to generate TOTP codes.

  • Add relations.

  • Convert OTP Secret fields to TOTP codes when the TOTP field type is released in 11.0

Last updated