New Relic · Arazzo Workflow

New Relic Provision Alerting Stack

Version 1.0.0

Create a policy, attach a NRQL condition, and wire a notification channel.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalysisAnalyticsAPMDevOpsInfrastructureMonitoringObservabilityPerformancePlatformArazzoWorkflows

Provider

new-relic

Workflows

provision-alerting-stack
Stand up policy, NRQL condition, and channel association together.
Chains policy creation, NRQL condition creation, channel creation, and channel association so a single run produces a fully wired alerting setup.
4 steps inputs: channelName, channelType, conditionName, incidentPreference, policyName outputs: channelId, conditionId, policyId
1
createPolicy
postAlertsPolicies
Create the alert policy and capture its generated id.
2
createNrqlCondition
postAlertsNrqlConditionsPoliciesPolicyId
Attach a NRQL alert condition to the new policy.
3
createChannel
postAlertsChannels
Create the notification channel that will receive policy notifications.
4
associateChannel
putAlertsPolicyChannels
Associate the channel with the policy so violations are routed to the new channel, completing the alerting stack.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: New Relic Provision Alerting Stack
  summary: Create a policy, attach a NRQL condition, and wire a notification channel.
  description: >-
    A complete greenfield alerting setup in one pass. The workflow creates an
    alert policy, attaches a NRQL alert condition to it, creates a notification
    channel, and finally associates that channel with the policy so the new
    policy both evaluates a signal and notifies a destination. Every step spells
    out its request inline so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: newRelicApi
  url: ../openapi/new-relic-openapi.yml
  type: openapi
workflows:
- workflowId: provision-alerting-stack
  summary: Stand up policy, NRQL condition, and channel association together.
  description: >-
    Chains policy creation, NRQL condition creation, channel creation, and
    channel association so a single run produces a fully wired alerting setup.
  inputs:
    type: object
    required:
    - policyName
    - incidentPreference
    - conditionName
    - channelName
    - channelType
    properties:
      policyName:
        type: string
        description: The name of the new alert policy.
      incidentPreference:
        type: string
        description: Incident rollup strategy (PER_POLICY, PER_CONDITION, PER_CONDITION_AND_TARGET).
      conditionName:
        type: string
        description: A title for the NRQL alert condition.
      channelName:
        type: string
        description: The name of the new notification channel.
      channelType:
        type: string
        description: The channel type (e.g. email, slack, webhook, pagerduty).
  steps:
  - stepId: createPolicy
    description: Create the alert policy and capture its generated id.
    operationId: postAlertsPolicies
    requestBody:
      contentType: application/json
      payload:
        policy:
          name: $inputs.policyName
          incident_preference: $inputs.incidentPreference
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      policyId: $response.body#/policy/id
  - stepId: createNrqlCondition
    description: Attach a NRQL alert condition to the new policy.
    operationId: postAlertsNrqlConditionsPoliciesPolicyId
    parameters:
    - name: policy_id
      in: path
      value: $steps.createPolicy.outputs.policyId
    requestBody:
      contentType: application/json
      payload:
        nrql_condition:
          name: $inputs.conditionName
          enabled: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      conditionId: $response.body#/nrql_condition/id
  - stepId: createChannel
    description: Create the notification channel that will receive policy notifications.
    operationId: postAlertsChannels
    requestBody:
      contentType: application/json
      payload:
        channel:
          name: $inputs.channelName
          type: $inputs.channelType
          configuration: {}
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      channelId: $response.body#/channel/id
  - stepId: associateChannel
    description: >-
      Associate the channel with the policy so violations are routed to the new
      channel, completing the alerting stack.
    operationId: putAlertsPolicyChannels
    parameters:
    - name: policy_id
      in: query
      value: $steps.createPolicy.outputs.policyId
    - name: channel_ids
      in: query
      value: $steps.createChannel.outputs.channelId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      associatedPolicyId: $response.body#/policy/id
  outputs:
    policyId: $steps.createPolicy.outputs.policyId
    conditionId: $steps.createNrqlCondition.outputs.conditionId
    channelId: $steps.createChannel.outputs.channelId

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/new-relic-provision-alerting-stack-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.