Skip to main content

Manage notification channels

After creating notification channels, you can list, inspect, update, and delete them through the UI, CLI, or API.

List channels

Retrieve all notification channels configured for a given resource (NRN).

Go to Platform settings > Notifications > Channels to see all configured channels. You can filter by resource using the NRN selector at the top.

You can optionally filter by channel type by adding the type parameter:

np notification channel list \
--nrn "organization=1:account=2:namespace=3" \
--type "slack"

The response includes a paginated list of channels with their IDs, types, sources, NRNs, and configurations.

Read a channel

Retrieve the full details of a specific channel by its ID.

Go to Platform settings > Notifications > Channels and click on a channel to view its details, including its configuration, filters, and source.

Update a channel

Modify an existing channel's configuration, filters, source, or NRN scope. Use the PATCH endpoint with only the fields you want to change.

Go to Platform settings > Notifications > Channels, click on the channel you want to modify, update the fields, and click Save.

Common updates

Change which Slack channel receives notifications:

{
"configuration": {
"channels": ["new-slack-channel-name"]
}
}

Broaden the NRN scope from application-level to namespace-level:

{
"nrn": "organization=1:account=2:namespace=3"
}

Add a source to an existing channel:

{
"source": ["approval", "audit"]
}
note

The source field replaces the entire array. Include all sources you want the channel to listen to, not just the new one.

Delete a channel

Remove a notification channel permanently.

Go to Platform settings > Notifications > Channels, click on the channel, and click Delete.

warning

Deleting a channel is permanent and cannot be undone. Any events that would have been routed to this channel will no longer be delivered.

Troubleshooting

Notifications aren't arriving

  1. Check the source. Make sure the channel's source matches the type of event you expect. For example, deployment approvals require "source": ["approval"], not "source": ["audit"]. See Sources & actions for the full reference.
  2. Check the NRN scope. If the channel is scoped to a specific application but the event happens at the namespace level, the channel won't receive it. Try broadening the NRN to the namespace or organization level.
  3. Check the filters. Overly restrictive filters can silently drop events. Remove the filters field temporarily to confirm the channel works, then add filters back one at a time.
  4. For Slack channels: Verify that the nullplatform Slack app is invited to the target Slack channel. Use /invite @nullplatform in Slack.
  5. Verify delivery using notification events. Go to Platform settings > Notifications > Events or use the List events API to see whether the event was generated and its delivery status.

Getting too many notifications

  1. Add filters to narrow which events reach the channel. For example, filter by action ("action": "deployment:create") or by namespace ("details.namespace.slug": "production").
  2. Narrow the NRN from organization-level to account or namespace-level to reduce the event scope.
  3. Split into multiple channels if different teams need different subsets. Each team gets a channel with its own NRN and filters.

Webhook returns errors

  1. Verify the URL is correct and reachable from the internet.
  2. Check authorization headers. If your endpoint requires authentication, make sure the token or API key in the channel's headers configuration is valid and not expired.
  3. Test with resend. Use the Resend endpoint to replay a notification event to your webhook and inspect the result. See Notification events for details.

Agent channel not triggering

  1. Confirm the agent is running and connected to nullplatform. The agent must be online and reachable.
  2. Check the API key. The api_key in the channel configuration must have the correct permissions.
  3. Verify the selector. The selector tags on the channel must match the tags assigned to your agent. For example, if the channel specifies "selector": { "environment": "production" }, the agent must have the environment=production tag.
  4. Check the command path. The cmdline in the channel configuration must point to a valid executable on the agent's machine.

Next steps