Integrations

Integrations allow Nirofy to both ingest telemetry from your infrastructure and dispatch alerts to the platforms your team already uses. Nirofy distinguishes between Ingestion Sources (inbound data) and Notification Channels (outbound alerts).

Ingestion Sources

Ingestion Sources are the external systems that provide the raw logs, metrics, and deployment events that Nirofy analyzes. These are managed via the Integrations section in the Dashboard.

SourceStatusDescription
AWS CloudWatch✅ ReadyAutomated CloudFormation stack to forward logs and metrics.
GCP Cloud Logging🛠️ BetaZero-touch ingestion for Google Cloud Platform.
Prometheus✅ ReadyPull metrics directly from Prometheus exporters or Pushgateway.
Custom / API✅ ReadyUse our Ingestion API to send data from any source.

Notification Channels

Notification Channels allow Nirofy to correlate and dispatch alerts when an incident is detected and diagnosed.

ChannelTypePrimary Use Case
SlackGeneric/EnvPosts messages to channels via incoming webhooks.
DiscordMulti-tenantSends rich embeds with severity, description, and dashboard links.
EmailEnv-onlyDispatches SMTP alerts to one or more recipients.
JiraMulti-tenant (Encrypted)Creates tickets for HIGH and CRITICAL incidents.
WebhookMulti-tenantPOSTs a full JSON payload to any HTTP endpoint.

GitHub

Nirofy also supports a GitHub App-based review and fix flow for code changes.

Use the GitHub card in /console/integrations to:

  • Install the GitHub App on the exact repos you want Nirofy to touch.
  • Review and save the repo allowlist from the install callback page.
  • Create draft fix PRs from the console using the allowlisted repos.

The app flow is preferred over legacy token setup because it keeps repo scope explicit and matches GitHub's install model.

PR review can run through the built-in reviewer or a PR-Agent wrapper service. Set CODE_REVIEW_PROVIDER=pr-agent and PR_AGENT_SERVICE_URL on core-platform to route GitHub PR reviews to PR-Agent while preserving Nirofy's GitHub App installation, repository allowlist, run history, and dashboard integration.

Creating the GitHub App

In GitHub, create a new App from your organization or account settings:

  1. Open GitHub Settings → Developer settings → GitHub Apps.
  2. Create a new app for Nirofy.
  3. Set the app's connect URL to /console/integrations/github/install.
  4. Configure permissions for the automation surface you want to use.
  5. Install the app on the target organization and select the repos you want Nirofy to manage.
  6. Copy the app ID and private key into the backend environment as GITHUB_APP_ID and GITHUB_APP_PRIVATE_KEY.

After install, GitHub redirects back to Nirofy with an installation_id. Nirofy then loads the installation repo list and lets you save the repo allowlist.

Use the minimum GitHub App permissions needed for review and fix automation:

  • Read: actions, discussions, members, metadata
  • Read and write: checks, code, commit statuses, issues, pull requests

Keep repo selection narrow when you install the app. The app only needs access to the repositories you want Nirofy to review and open draft fix PRs against.

Configuration

All integrations are configured via the Console → Integrations page (/console/integrations). The older /console/settings/integrations path redirects to the new location for compatibility.

Ingestion Sources

Connect AWS CloudWatch or GCP Cloud Logging to forward logs and metrics into Nirofy for analysis. See the individual integration guides for detailed setup instructions.

Notification Channels

Configure where incident alerts should be delivered:

ChannelSetupUse Case
SlackIncoming webhookReal-time incident awareness in team channels
DiscordServer webhookRich embeds with severity and Dashboard links
JiraEncrypted credentialsTicket creation for HIGH/CRITICAL incidents
PagerDutyEvents API v2Route high-urgency incidents to on-call rotations
DatadogEvents APIPush incidents into Datadog Event Explorer
GrafanaAnnotations APIWrite incident markers into Grafana dashboards
WebhookCustom endpointCustom integrations, paging systems, internal tools
EmailComing soonSMTP alerts to distribution lists

GitHub App Setup

If you are using GitHub, the install callback should redirect to:

/console/integrations/github/install?installation_id=<id>

From there, you can confirm the repo allowlist and save the integration configuration.

After setup, use the Create fix PR action in the dashboard integrations page to open a draft bug-fix PR from a bug report.

All notification channel credentials are encrypted at rest in the platform vault. Configuration is workspace-scoped (Org Config), allowing granular per-team alerting without infrastructure changes.

See the Notification Channels Setup Guide for detailed step-by-step instructions.

API Flow

When the incidents module in core-platform processes an event:

  1. Diagnosis: AI analyzes the incident.
  2. Dispatch: ProcessEventUseCase calls the registered integration services.
  3. Notification: the notifications module in core-platform executes dispatch (Slack/Discord/Email/Webhook/PagerDuty/Datadog/Grafana).
  4. Jira: the incidents module in core-platform creates/updates Jira tickets and adds comments using the stored (encrypted) Jira integration config.

Troubleshooting

  • Test Connections: Use the "Test" button in the Dashboard for each integration to verify connectivity instantly through core-platform.
  • Service Logs: Check docker logs core-platform for backend integration and dispatch errors.
  • Payload Inspection: Use a tool like Webhook.site as a destination for the Generic Webhook integration to see exactly what Nirofy is sending.

Console Experience

The Integrations page is designed as a first-class operations surface rather than a nested settings form. Use it when you need to:

  • Connect or review ingestion sources.
  • Verify organization-level notification wiring.
  • Run smoke tests before enabling alerts for a team.
  • Keep integration setup distinct from profile, billing, and team administration tasks.

Best Practices

  1. Tiered Alerting: Use Discord/Slack for real-time noise and Jira only for actionable HIGH/CRITICAL incidents.
  2. Secure Webhooks: Always use https for generic webhook endpoints.
  3. Dedicated Recipient: For email alerts, use a distribution list or a shared inbox (e.g., ops-alerts@company.com).