Novu · Arazzo Workflow

Novu Provision a Delivery Integration and Make It Primary

Version 1.0.0

Create a channel integration, promote it to primary for its channel, and confirm it is active.

1 workflow 1 source API 1 provider
View Spec View on GitHub NotificationMessagingIn-AppEmailSMSPushChatWorkflowsOpen-SourceSubscribersTopicsInboxWorkflow OrchestrationMulti-ChannelDigestMCPFrameworkReactArazzoWorkflows

Provider

novu

Workflows

provision-integration-and-set-primary
Create an integration, set it as primary, then list active integrations.
Creates a delivery integration with credentials, marks it primary for its channel, and verifies it appears among the active integrations.
3 steps inputs: channel, credentials, identifier, name, providerId outputs: activeIntegrations, integrationId
1
createIntegration
Create the integration for the current environment with its credentials. Setting active true causes Novu to validate the credentials.
2
setPrimary
Promote the new integration to primary for its channel so it becomes the default delivery route for that channel in the environment.
3
listActive
List the active integrations to confirm the newly created integration is active and serving as primary for its channel.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Novu Provision a Delivery Integration and Make It Primary
  summary: Create a channel integration, promote it to primary for its channel, and confirm it is active.
  description: >-
    Sets up the delivery provider that Novu uses to send a channel. The workflow
    creates an integration (for example an email or SMS provider) with its
    credentials, promotes that integration to primary for its channel so it
    becomes the default delivery route, and lists the active integrations to
    confirm the new primary is in place. 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: integrationsApi
  url: ../openapi/novu-integrations-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-integration-and-set-primary
  summary: Create an integration, set it as primary, then list active integrations.
  description: >-
    Creates a delivery integration with credentials, marks it primary for its
    channel, and verifies it appears among the active integrations.
  inputs:
    type: object
    required:
    - name
    - providerId
    - channel
    properties:
      name:
        type: string
        description: Display name of the integration.
      identifier:
        type: string
        description: Unique identifier for the integration.
      providerId:
        type: string
        description: The provider id (e.g. "sendgrid", "twilio").
      channel:
        type: string
        description: The channel type (in_app, email, sms, chat, push).
      credentials:
        type: object
        description: Provider-specific credentials for the integration.
  steps:
  - stepId: createIntegration
    description: >-
      Create the integration for the current environment with its credentials.
      Setting active true causes Novu to validate the credentials.
    operationId: IntegrationsController_createIntegration
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.name
        identifier: $inputs.identifier
        providerId: $inputs.providerId
        channel: $inputs.channel
        credentials: $inputs.credentials
        active: true
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      integrationId: $response.body#/data/_id
      channel: $response.body#/data/channel
  - stepId: setPrimary
    description: >-
      Promote the new integration to primary for its channel so it becomes the
      default delivery route for that channel in the environment.
    operationId: IntegrationsController_setIntegrationAsPrimary
    parameters:
    - name: integrationId
      in: path
      value: $steps.createIntegration.outputs.integrationId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      integration: $response.body#/data
  - stepId: listActive
    description: >-
      List the active integrations to confirm the newly created integration is
      active and serving as primary for its channel.
    operationId: IntegrationsController_getActiveIntegrations
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      activeIntegrations: $response.body
  outputs:
    integrationId: $steps.createIntegration.outputs.integrationId
    activeIntegrations: $steps.listActive.outputs.activeIntegrations

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/novu-provision-integration-and-set-primary-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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