Dynamic Product Groups and Alert Types


🚧

Under construction and subject to changes

Overview

This specification defines the technical requirements for implementing dynamic Product Groups and Alert Types on a per-account basis within the MSPCentric Alerts feature. It outlines the responsibilities for both MSPCentric and integrated vendors.

Background

The MSPCentric Alerts feature categorizes alerts based on products or services, enabling:

  • Intelligent alert routing and information aggregation
  • Partner-specific alert rule creation through dropdown UI controls
  • Custom PSA automation workflows tailored to partner needs

The Challenge: Partners may purchase 10 products from a vendor offering 100+ total products. Displaying all products creates UI clutter and poor user experience.

The Solution: A dynamic filtering system that shows partners only their purchased products and relevant alert types.

Architecture

Data Hierarchy

Partner
└── Product Groups (filtered by purchases)
    └── Alert Types (specific to each group)

Authentication & Caching

  • Vendor endpoints use existing API authentication methods
  • Product Groups are cached for 15 minutes per partner session
  • Subsequent requests during the session are served from cache

Vendor Requirements

Vendors must provide:

  1. Product Group Mapping - Knowledge of which products/services each partner has purchased
  2. Categorization Schema - A defined list of product groups covering all offerings
  3. Alert Type Taxonomy - Alert types mapped hierarchically to product groups
  4. API Endpoint - An endpoint returning partner-specific product groups and alert types
  5. Master List - Complete product group catalog for validation purposes
  6. Consistent Authentication - Same auth mechanism as existing API integration

MSPCentric Responsibilities

MSPCentric will:

  1. Provide the recommended endpoint schema and payload format
  2. Implement the fetching and caching mechanism
  3. Call the vendor endpoint during rule creation
  4. Validate incoming alerts against the master product group list
  5. Collaborate with vendors on custom implementations if needed

API Specification

Endpoint

GET /product-groups

Authentication

Use your existing API authentication scheme. MSPCentric will use the same credentials configured for your integration, allowing you to identify the requesting partner.

Response Schema

{
  "productGroups": [
    {
      "productGroup": "string",
      "alertTypes": ["string"]
    }
  ]
}

Example Response

{
  "productGroups": [
    {
      "productGroup": "Backup Services",
      "alertTypes": [
        "Backup Failed",
        "Backup Completed",
        "Storage Threshold Exceeded"
      ]
    },
    {
      "productGroup": "Security Monitoring",
      "alertTypes": [
        "Threat Detected",
        "Policy Violation",
        "Scan Completed"
      ]
    }
  ]
}
Alternative Implementations

If you have an existing endpoint that meets the following criteria, we can adapt to your implementation:

  • Returns partner-specific product groups
  • Maps alert types to product groups
  • Meets performance requirements (see Performance Considerations)
  • Uses your standard authentication

Contact the MSPCentric integration team to discuss custom implementations.

Implementation Flow

1. Client → MSPCentric: Request rule creation data
2. MSPCentric → PSA: Fetch PSA-specific data
3. PSA → MSPCentric: Return PSA data
4. MSPCentric → Vendor API: Fetch product groups (authenticated)
5. Vendor API → MSPCentric: Return partner-specific product groups
6. MSPCentric: Cache product groups (15 min TTL)
7. MSPCentric → Client: Return formatted rule data
8. Subsequent requests: Served from cache (within TTL)

Performance Considerations

Critical Requirement: The endpoint is called during runtime as partners create alert rules. Response times directly impact user experience.

Recommendations:

  • Target response time: < 500ms
  • Implement server-side caching where appropriate
  • Optimize database queries for partner-product lookups
  • Consider CDN or edge caching for static product catalogs

MSPCentric Optimization:

  • 15-minute cache per partner session
  • Minimizes API calls during rule creation workflow
  • Cache invalidation on partner product changes (future enhancement)

Validation

MSPCentric validates incoming alerts against the vendor-provided master product group list to ensure:

  • No alerts are suppressed due to misconfiguration
  • Product group names match expected values
  • Alert types exist within defined product groups

Glossary

TermDefinition
Product GroupA high-level category representing a group of related products or services offered by a vendor
Alert TypeA specific type of alert that can be generated, always associated with a parent Product Group
PartnerAn MSP customer using the MSPCentric platform
Master ListComplete catalog of all possible product groups, used for validation

Support

For questions or assistance with implementation, contact the MSPCentric integration team.