BumblebeeBumblebee

NinjaOne

Overview

The NinjaOne integration enables automated management of organizations, devices, contacts, alerts, and policies through Bumblebee workflows. Streamline your RMM operations with direct access to NinjaOne data.

Prerequisites & Setup

Before setting up the NinjaOne integration, you need:

  • An active NinjaOne account with API access
  • Client ID and Client Secret from a NinjaOne API application
  • Your NinjaOne API base URL

Create API Credentials in NinjaOne

  1. Log in to your NinjaOne instance
  2. Navigate to Administration > Apps > API
  3. Click Add to create a new API application
  4. Configure the application:
    • Application Platform: Web (server-to-server)
    • Grant Type: Client Credentials
  5. Copy the Client ID and Client Secret
  6. Note your API Base URL (e.g., https://app.ninjarmm.com)

Configure in Bumblebee

  1. Go to the Integrations page in Bumblebee
  2. Select NinjaOne
  3. Enter:
    • Client ID
    • Client Secret
    • API Base URL
  4. Click Test Connection
  5. Save the configuration

Available Tools

Organizations

  • list_organizations - List all organizations with their id, name, description, and approval mode
  • get_organization - Get full organization details including locations and policy assignments. Required: organization_id (int)
  • create_organization - Create a new organization. Required: name (str). Optional: node_approval_mode (str: "AUTOMATIC", "MANUAL", "REJECT"), description (str)
  • update_organization - Update an existing organization. Required: organization_id (int). Optional: name (str), description (str), node_approval_mode (str)
  • list_organization_devices - List all devices belonging to an organization. Required: organization_id (int)

Locations

  • list_locations - List all locations across all organizations
  • list_organization_locations - List locations for a specific organization. Required: organization_id (int)
  • create_location - Create a new location within an organization. Required: organization_id (int), name (str). Optional: description (str)
  • update_location - Update an existing location. Required: organization_id (int), location_id (int). Optional: name (str), description (str)

Devices

  • list_devices - List devices with detailed information. Optional: device_filter (str), page_size (int), after (int)
  • get_device - Get a single device with full details including system info, OS, and network configuration. Required: device_id (int)
  • update_device - Update a device. Required: device_id (int). Optional: display_name (str), description (str)

Contacts

  • list_contacts - List all contacts across all organizations
  • get_contact - Get a single contact by ID. Required: contact_id (int)
  • create_contact - Create a new contact. Required: organization_id (int), first_name (str), last_name (str). Optional: email (str), phone (str)
  • update_contact - Update an existing contact. Required: contact_id (int). Optional: first_name (str), last_name (str), email (str), phone (str)

End Users

  • list_end_users - List all end users (client employees with portal access) across all organizations
  • get_end_user - Get a single end user by ID. Required: end_user_id (int)
  • create_end_user - Create a new end user. Required: organization_id (int), first_name (str), last_name (str), email (str)

Alerts

  • list_alerts - List active alerts. Optional: device_filter (str), lang (str)
  • reset_alert - Reset (acknowledge/dismiss) an alert. Required: alert_uid (str)

Activities

  • list_activities - List activity log entries. Optional: class_type (str: "SYSTEM", "DEVICE", "USER", "ALL"), older_than (int), newer_than (int), page_size (int)

Policies & Groups

  • list_policies - List all policies with their name, description, and node class
  • list_groups - List all device groups with name, description, and device count

Automation

  • list_scripts - List available automation scripts. Optional: language (str: "native", "powershell", "batch", "vbscript", "shell_script", "python"), page_size (int)