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.
| Source | Status | Description |
|---|---|---|
| AWS CloudWatch | ✅ Ready | Automated CloudFormation stack to forward logs and metrics. |
| GCP Cloud Logging | 🛠️ Beta | Zero-touch ingestion for Google Cloud Platform. |
| Prometheus | ✅ Ready | Pull metrics directly from Prometheus exporters or Pushgateway. |
| Custom / API | ✅ Ready | Use 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.
| Channel | Type | Primary Use Case |
|---|---|---|
| Slack | Generic/Env | Posts messages to channels via incoming webhooks. |
| Discord | Multi-tenant | Sends rich embeds with severity, description, and dashboard links. |
| Env-only | Dispatches SMTP alerts to one or more recipients. | |
| Jira | Multi-tenant (Encrypted) | Creates tickets for HIGH and CRITICAL incidents. |
| Webhook | Multi-tenant | POSTs 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:
- Open GitHub Settings → Developer settings → GitHub Apps.
- Create a new app for Nirofy.
- Set the app's connect URL to
/console/integrations/github/install. - Configure permissions for the automation surface you want to use.
- Install the app on the target organization and select the repos you want Nirofy to manage.
- Copy the app ID and private key into the backend environment as
GITHUB_APP_IDandGITHUB_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.
Recommended Permissions
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:
| Channel | Setup | Use Case |
|---|---|---|
| Slack | Incoming webhook | Real-time incident awareness in team channels |
| Discord | Server webhook | Rich embeds with severity and Dashboard links |
| Jira | Encrypted credentials | Ticket creation for HIGH/CRITICAL incidents |
| PagerDuty | Events API v2 | Route high-urgency incidents to on-call rotations |
| Datadog | Events API | Push incidents into Datadog Event Explorer |
| Grafana | Annotations API | Write incident markers into Grafana dashboards |
| Webhook | Custom endpoint | Custom integrations, paging systems, internal tools |
| Coming soon | SMTP 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:
- Diagnosis: AI analyzes the incident.
- Dispatch:
ProcessEventUseCasecalls the registered integration services. - Notification: the notifications module in
core-platformexecutes dispatch (Slack/Discord/Email/Webhook/PagerDuty/Datadog/Grafana). - Jira: the incidents module in
core-platformcreates/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-platformfor 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
- Tiered Alerting: Use Discord/Slack for real-time noise and Jira only for actionable HIGH/CRITICAL incidents.
- Secure Webhooks: Always use
httpsfor generic webhook endpoints. - Dedicated Recipient: For email alerts, use a distribution list or a shared inbox (e.g.,
ops-alerts@company.com).