Developer Guide

The Developer Guide provides resources for developers who want to perform advanced functions or build applications that integrate with Moogsoft AIOps.

If you want to build a new integration or create a custom reporting dashboard, this guide outlines how you can expose API endpoints to invoke various actions and functionality.

You can use the following APIs and modules:

  • Graze API: Main API that can create, retrieve, and update data in Moogsoft AIOps.

  • Stats API: API that you can use to retrieve statistics from Moogsoft AIOps for reporting and dashboards.

  • Moobot modules: You can create bots to perform automated tasks and expose functions in different Moolets.

  • Programmatic LAM: You can use this custom polling LAM to accept API calls and parse the responses into Moogsoft AIOps events.

You can also use these APIs to perform tasks such as Situation enrichment. See Enrichment for more information.

Graze API

You can use the Graze API to perform actions including the following:

  • Assign and de-assign alerts.

  • Create and close Situations.

  • Add processes and services.

  • Create and update SAML realms.

  • Create and delete maintenance windows.

The Graze API is useful if you want to perform repeated actions. For example, sending repeated cURL commands using a script. For example, you can create a ticketing integration to enable bi-directional communication between Moogsoft AIOps and a ticketing system. See Integrations for available ticketing integrations in Moogsoft AIOps.

An integration can raise and close Moogsoft AIOps alerts in line with ticketing events, assign users and replicate comments. For all available endpoints see Graze API.

Stats API

You can use the Stats API to retrieve statistics about:

  • Your Moogsoft AIOps system's performance.

  • Teams' performance.

  • Individual users' performance.

You can use this statistical data to populate dashboards. For example, you can use call getNewEventsPerSituationsStats to see the noise reduction from events to Situations for your Moogsoft AIOps system.

These endpoints have been designed and optimized for Grafana. See Stats API for all available endpoints. See the Grafana Setup Tutorial for more installation and configuration instructions.

Moobot modules

You can create and configure Moobot modules to perform automated tasks and expose functions including:

  • Access external databases.

  • Access an external RESTful API via HTTP.

  • Read configuration files within LAMbots and Moobots.

  • Build a key value dictionary shared across Moobots.

  • Query and manipulate entities in the Moogsoft AIOps databases. See MoogDb V2 for all available methods.

  • Send an email in response to events occurring in Moogsoft AIOps.

For more information see Moobot Modules.

Programmatic LAM

The Programmatic LAM is a custom polling LAM. It is an advanced version of the REST Client LAM. The REST Client LAM accepts a single API call and parses the responses it receives into Moogsoft AIOps events. The Programmatic LAM can accept multiple calls but you must define the processing yourself in the LAMbot using JavaScript.

For more information see Programmatic LAM.