NVIDIA Run:ai NotificationChannels API
Notification Channels are the medium through which notifications are sent.
Notification Channels are the medium through which notifications are sent.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/runai-notificationchannels-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
openapi: 3.2.0
info:
version: latest
description: '# Introduction
The NVIDIA Run:ai Control-Plane API reference is a guide that provides an easy-to-use programming interface for adding various tasks to your application, including workload submission, resource management, and administrative operations.
NVIDIA Run:ai APIs are accessed using *bearer tokens*. To obtain a token, you need to create a **Service account** through the NVIDIA Run:ai user interface.
To create a service account, in your UI, go to Access → Service Accounts (for organization-level service accounts) or User settings → Access Keys (for user access keys), and create a new one.
After you have created a new service account, you will need to assign it access rules.
To assign access rules to the service account, see [Create access rules](https://run-ai-docs.nvidia.com/saas/infrastructure-setup/authentication/accessrules#create-or-delete-rules).
Make sure you assign the correct rules to your service account. Use the [Roles](https://run-ai-docs.nvidia.com/saas/infrastructure-setup/authentication/roles) to assign the correct access rules.
To get your access token, follow the instructions in [Request a token](https://run-ai-docs.nvidia.com/saas/reference/api/rest-auth/#request-an-api-token).
'
title: NVIDIA Run:ai Access Keys Notification Channels API
x-logo:
url: https://api.redocly.com/registry/raw/runai-xq8/saas/latest/public/runai-logo-api.png
altText: NVIDIA Run:ai
href: https://run.ai
license:
name: NVIDIA Run:ai
url: https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-software-license-agreement/
servers:
- url: https://app.run.ai
security:
- bearerAuth: []
tags:
- name: NotificationChannels
description: Notification Channels are the medium through which notifications are sent.
paths:
/api/v1/notification-channels:
get:
tags:
- NotificationChannels
operationId: getNotificationChannels
summary: Get supported Notification Channels
description: Get supported Notification Channels
responses:
'200':
description: Notification Channel types
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/NotificationChannelMeta'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
post:
tags:
- NotificationChannels
operationId: createNotificationChannelConfig
summary: Create configuration of notification channel
description: Create configuration of notification channel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationChannel'
responses:
'200':
description: Notification Channel config created
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'409':
$ref: '#/components/responses/409Conflict'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
/api/v1/notification-channels/slack/create-app:
post:
tags:
- NotificationChannels
operationId: createSlackApp
summary: Create Slack app
description: Create Slack app
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSlackAppRequestBody'
responses:
'200':
description: Created Slack app response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSlackAppResponse'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
/api/v1/notification-channels/{name}:
parameters:
- $ref: '#/components/parameters/NotificationChannelName'
get:
tags:
- NotificationChannels
operationId: getNotificationChannelConfig
summary: Get configuration of notification channel
description: Get configuration of notification channel
responses:
'200':
description: Notification channel config
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationChannelResponse'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
patch:
tags:
- NotificationChannels
operationId: patchNotificationChannelConfig
summary: Patch configuration of Notification Channel
description: Patch configuration of Notification Channel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationChannelForPatch'
responses:
'200':
description: Notification Channel config patched
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
put:
tags:
- NotificationChannels
operationId: updateNotificationChannelConfig
summary: Update configuration of Notification Channel
description: Update configuration of Notification Channel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationChannel'
responses:
'200':
description: Notification Channel config updated
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
delete:
tags:
- NotificationChannels
operationId: deleteNotificationChannelConfig
summary: Delete configuration of Notification Channel
description: Delete configuration of Notification Channel
responses:
'204':
description: Notification Channel config deleted
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
/api/v1/validate-notification-channel:
post:
tags:
- NotificationChannels
operationId: validateNotificationChannel
summary: Validate configuration of Notification Channel
description: Validate configuration of Notification Channel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotificationChannelForValidate'
responses:
'200':
description: Notification Channel validity
content:
application/json:
schema:
example: true
type: boolean
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
'409':
$ref: '#/components/responses/409Conflict'
'500':
$ref: '#/components/responses/500InternalServerError'
'501':
$ref: '#/components/responses/501NotImplemented'
'503':
$ref: '#/components/responses/503ServiceUnavailable'
components:
schemas:
NotificationChannelType:
type: string
enum:
- email
- slack
default: email
NotificationChannelForPatch:
type: object
properties:
type:
$ref: '#/components/schemas/NotificationChannelType'
config:
allOf:
- $ref: '#/components/schemas/NotificationChannelConfig'
example:
username: email@gmail.com
password: 123456
smtpHost: smtp.gmail.com
from: email@gmail.com
subject: My subject
CreateSlackAppRequestBody:
type: object
required:
- accessToken
properties:
accessToken:
type: string
description: The access token required for creating slack app
example:
accessToken: REDACTED_SLACK_TOKEN
NotificationChannelConfig:
type: object
allOf:
- $ref: '#/components/schemas/EmailNotificationChannelConfig'
- $ref: '#/components/schemas/SlackNotificationChannelConfig'
CreateSlackAppResponse:
type: object
required:
- slackAppUrl
properties:
slackAppUrl:
type: string
example:
slackAppUrl: https://api.slack.com/apps/A089PHD5S0Q
EmailNotificationChannelConfig:
type: object
properties:
username:
type: string
password:
type: string
smtpHost:
type: string
from:
type: string
smtpPort:
type: integer
default: 587
authType:
$ref: '#/components/schemas/EmailAuthType'
smtpTlsEnabled:
type:
- boolean
- 'null'
recipients:
type: array
items:
type: string
default: []
fromDisplayName:
type: string
default: Run:ai
directNotifications:
type:
- boolean
- 'null'
useAttachments:
type:
- boolean
- 'null'
subject:
type: string
default: Run:ai notification - {{ .category }} {{ .reason }}
example:
username: email@gmail.com
password: 123456
smtpHost: smtp.gmail.com
from: email@gmail.com
subject: My subject
SlackNotificationChannelConfig:
type: object
properties:
recipients:
type: array
items:
type: string
default: []
directNotifications:
type:
- boolean
- 'null'
apiToken:
type: string
example:
apiToken: <your_api_token>
EmailAuthType:
type: string
enum:
- auth_login
- auth_plain
- auth_none
- ''
default: auth_login
NotificationChannelForValidate:
type: object
required:
- type
- config
allOf:
- $ref: '#/components/schemas/NotificationChannelForPatch'
NotificationChannel:
type: object
required:
- type
- config
allOf:
- $ref: '#/components/schemas/NotificationChannelForPatch'
NotificationChannelResponse:
type: object
required:
- type
- config
- name
allOf:
- $ref: '#/components/schemas/NotificationChannel'
- type: object
properties:
name:
type: string
NotificationChannelMeta:
type: object
required:
- name
- type
properties:
name:
type: string
type:
type: string
enum:
- email
- slack
default: email
example:
name: my-email
type: email
Error:
required:
- code
- message
properties:
code:
type: integer
minimum: 100
maximum: 599
message:
type: string
details:
type: string
example:
code: 400
message: Bad request - Resource should have a name
responses:
400BadRequest:
description: Bad request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 400
message: Required parameter is missing
403Forbidden:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 403
message: You do not have sufficient permissions.
501NotImplemented:
description: unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 501
message: Not implemented
409Conflict:
description: The specified resource already exists
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 409
message: Resource with this name already exists
503ServiceUnavailable:
description: unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 503
message: Please try again in few minutes.
401Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 401
message: Issuer is not familiar.
500InternalServerError:
description: unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 500
message: Something went wrong.
404NotFound:
description: The specified resource was not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
code: 404
message: Resource id not found.
parameters:
NotificationChannelName:
name: name
in: path
description: Notification Channel name
required: true
schema:
type: string
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: Bearer authentication
x-tagGroups:
- name: Organizations
tags:
- Clusters
- Departments
- Reports
- NodePools
- Nodes
- Projects
- Tenant
- Logo
- Researcher Command Line Interface
- Researcher Command Line Interface Deprecated
- Administrator Command Line Interface
- Network Topologies
- name: Authentication and Authorization
tags:
- Access Keys
- Access rules
- Permissions
- Applications
- Service Accounts
- Roles
- Tokens
- Users
- User Applications
- Idps
- Me
- Settings
- Org unit
- name: Audit
tags:
- AuditLogs
- name: Datavolumes
tags:
- Datavolumes
- name: Workloads
tags:
- Events
- Pods
- Workloads
- Workloads V2
- NVIDIA NIM
- Workspaces
- Trainings
- Inferences
- Revisions
- Distributed
- Workloads batch
- Workload properties
- Workload templates
- Distributed Inferences
- name: Workload assets
tags:
- Compute
- Credentials
- Datasources
- Environment
- Storage Classes
- Storage Class Configuration
- Git
- HostPath
- NFS
- PVC
- Registry
- S3
- ConfigMap
- Secret
- Template
- name: Policies
tags:
- Policy
- name: Notifications
tags:
- Notification State
- Notification Types
- NotificationChannels
- Subscriptions
- name: AI Applications
tags:
- AI Applications