naftiko: 1.0.0-alpha2 info: label: Novu API — Channel Connections description: 'Notifications — Channel Connections. 5 operations. Lead operation: List All Channel Connections. Self-contained Naftiko capability covering one Novu business surface.' tags: - Novu - Notifications - Channel Connections created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: NOVU_API_KEY: NOVU_API_KEY capability: consumes: - type: http namespace: novu-channel-connections baseUri: https://api.novu.co description: Novu REST API — Channel Connections business capability. Self-contained, no shared references. authentication: type: apikey key: Authorization value: '{{env.NOVU_API_KEY}}' placement: header resources: - name: v1-channel-connections path: /v1/channel-connections operations: - name: ChannelConnectionsController_listChannelConnections method: GET description: Novu List All Channel Connections inputParameters: - name: after in: query type: string required: false description: Cursor for pagination indicating the starting point after which to fetch results. - name: before in: query type: string required: false description: Cursor for pagination indicating the ending point before which to fetch results. - name: limit in: query type: number required: false description: Limit the number of items to return (max 100) - name: orderDirection in: query type: string required: false description: Direction of sorting - name: orderBy in: query type: string required: false description: Field to order by - name: includeCursor in: query type: boolean required: false description: Include cursor item in response - name: subscriberId in: query type: string required: false description: The subscriber ID to filter results by - name: channel in: query type: string required: false description: Filter by channel type (email, sms, push, chat, etc.). - name: providerId in: query type: string required: false description: Filter by provider identifier (e.g., sendgrid, twilio, slack, etc.). - name: integrationIdentifier in: query type: string required: false description: Filter by integration identifier. - name: contextKeys in: query type: array required: false description: 'Filter by exact context keys, order insensitive (format: "type:id")' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ChannelConnectionsController_createChannelConnection method: POST description: Novu Create a Channel Connection inputParameters: - name: body in: body type: object required: true description: Request body payload outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v1-channel-connections-identifier path: /v1/channel-connections/{identifier} operations: - name: ChannelConnectionsController_getChannelConnectionByIdentifier method: GET description: Novu Retrieve a Channel Connection inputParameters: - name: identifier in: path type: string required: true description: The unique identifier of the channel connection outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ChannelConnectionsController_updateChannelConnection method: PATCH description: Novu Update a Channel Connection inputParameters: - name: identifier in: path type: string required: true description: The unique identifier of the channel connection - name: body in: body type: object required: true description: Request body payload outputRawFormat: json outputParameters: - name: result type: object value: $. - name: ChannelConnectionsController_deleteChannelConnection method: DELETE description: Novu Delete a Channel Connection inputParameters: - name: identifier in: path type: string required: true description: The unique identifier of the channel connection outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: novu-channel-connections-rest port: 8080 description: REST adapter for Novu API — Channel Connections. One Spectral-compliant resource per consumed operation. resources: - path: /v1/channel-connections name: v1-channel-connections description: REST surface for /v1/channel-connections. operations: - method: GET name: ChannelConnectionsController_listChannelConnections description: Novu List All Channel Connections call: novu-channel-connections.ChannelConnectionsController_listChannelConnections with: after: rest.after before: rest.before limit: rest.limit orderDirection: rest.orderDirection orderBy: rest.orderBy includeCursor: rest.includeCursor subscriberId: rest.subscriberId channel: rest.channel providerId: rest.providerId integrationIdentifier: rest.integrationIdentifier contextKeys: rest.contextKeys outputParameters: - type: object mapping: $. - method: POST name: ChannelConnectionsController_createChannelConnection description: Novu Create a Channel Connection call: novu-channel-connections.ChannelConnectionsController_createChannelConnection with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/channel-connections/{identifier} name: v1-channel-connections-identifier description: REST surface for /v1/channel-connections/{identifier}. operations: - method: GET name: ChannelConnectionsController_getChannelConnectionByIdentifier description: Novu Retrieve a Channel Connection call: novu-channel-connections.ChannelConnectionsController_getChannelConnectionByIdentifier with: identifier: rest.identifier outputParameters: - type: object mapping: $. - method: PATCH name: ChannelConnectionsController_updateChannelConnection description: Novu Update a Channel Connection call: novu-channel-connections.ChannelConnectionsController_updateChannelConnection with: identifier: rest.identifier body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: ChannelConnectionsController_deleteChannelConnection description: Novu Delete a Channel Connection call: novu-channel-connections.ChannelConnectionsController_deleteChannelConnection with: identifier: rest.identifier outputParameters: - type: object mapping: $. - type: mcp namespace: novu-channel-connections-mcp port: 9090 transport: http description: MCP adapter for Novu API — Channel Connections. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-channel-connections description: Novu List All Channel Connections hints: readOnly: true destructive: false idempotent: true call: novu-channel-connections.ChannelConnectionsController_listChannelConnections with: after: tools.after before: tools.before limit: tools.limit orderDirection: tools.orderDirection orderBy: tools.orderBy includeCursor: tools.includeCursor subscriberId: tools.subscriberId channel: tools.channel providerId: tools.providerId integrationIdentifier: tools.integrationIdentifier contextKeys: tools.contextKeys outputParameters: - type: object mapping: $. - name: create-channel-connection description: Novu Create a Channel Connection hints: readOnly: false destructive: false idempotent: false call: novu-channel-connections.ChannelConnectionsController_createChannelConnection with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-channel-connection description: Novu Retrieve a Channel Connection hints: readOnly: true destructive: false idempotent: true call: novu-channel-connections.ChannelConnectionsController_getChannelConnectionByIdentifier with: identifier: tools.identifier outputParameters: - type: object mapping: $. - name: update-channel-connection description: Novu Update a Channel Connection hints: readOnly: false destructive: false idempotent: true call: novu-channel-connections.ChannelConnectionsController_updateChannelConnection with: identifier: tools.identifier body: tools.body outputParameters: - type: object mapping: $. - name: delete-channel-connection description: Novu Delete a Channel Connection hints: readOnly: false destructive: true idempotent: true call: novu-channel-connections.ChannelConnectionsController_deleteChannelConnection with: identifier: tools.identifier outputParameters: - type: object mapping: $.