Channel Connections

Update a channel connection

Update an existing channel connection by its unique identifier.

patch/v1/channel-connections/{identifier}

Path parameters

identifierstring required

The unique identifier of the channel connection

Headers

idempotency-keystring

A header for idempotency purposes

Request body

Example request

{
  "workspace": {
    "id": "T123456",
    "name": "Acme HQ",
    "botUserId": "U0123456789"
  },
  "auth": {
    "accessToken": "Workspace access token",
    "refreshToken": "Workspace refresh token",
    "expiresAt": "2026-06-15T12:00:00.000Z",
    "refreshTokenExpiresAt": "2026-09-15T12:00:00.000Z"
  }
}

Response

OK

identifierstring required

The unique identifier of the channel endpoint.

channel'in_app' | 'email' | 'sms' | 'chat' | 'push' | 'tool' nullable required

The channel type (email, sms, push, chat, etc.).

providerId'anypost' | 'emailjs' | 'mailgun' | 'mailjet' | 'mandrill' | 'nodemailer' | 'postmark' | 'sendgrid' | 'sendinblue' | 'ses' | 'netcore' | 'infobip-email' | 'resend' | 'plunk' | 'mailersend' | 'mailtrap' | 'clickatell' | 'outlook365' | 'novu-email' | 'sparkpost' | 'email-webhook' | 'braze' | 'novu-email-agent' | 'nexmo' | 'plivo' | 'sms77' | 'sms-central' | 'sns' | 'telnyx' | 'twilio' | 'gupshup' | 'firetext' | 'infobip-sms' | 'burst-sms' | 'bulk-sms' | 'isend-sms' | 'forty-six-elks' | 'kannel' | 'maqsam' | 'termii' | 'africas-talking' | 'novu-sms' | 'sendchamp' | 'generic-sms' | 'clicksend' | 'bandwidth' | 'messagebird' | 'simpletexting' | 'azure-sms' | 'ring-central' | 'brevo-sms' | 'eazy-sms' | 'mobishastra' | 'afro-message' | 'unifonic' | 'smsmode' | 'imedia' | 'sinch' | 'isendpro-sms' | 'cm-telecom' | 'ruach-sms' | 'fcm' | 'apns' | 'expo' | 'one-signal' | 'pushpad' | 'push-webhook' | 'pusher-beams' | 'appio' | 'novu' | 'slack' | 'discord' | 'msteams' | 'webex-messaging' | 'mattermost' | 'ryver' | 'zulip' | 'grafana-on-call' | 'getstream' | 'rocket-chat' | 'whatsapp-business' | 'line' | 'chat-webhook' | 'novu-slack' | 'telegram' | 'sendblue' | 'novu-web-chat' | 'anthropic' | 'novu-anthropic' | 'anthropic-aws' | 'pagerduty' | 'opsgenie' | 'grafana' | 'tool-webhook' nullable required

The provider identifier (e.g., sendgrid, twilio, slack, etc.).

integrationIdentifierstring nullable required

The identifier of the integration to use for this channel endpoint.

subscriberIdstring nullable required

The subscriber ID to which the channel connection is linked

contextKeysstring[] required

The context of the channel connection

createdAtstring required

The timestamp indicating when the channel endpoint was created, in ISO 8601 format.

updatedAtstring required

The timestamp indicating when the channel endpoint was last updated, in ISO 8601 format.

Example response

{
  "providerId": "slack",
  "integrationIdentifier": "slack-prod",
  "subscriberId": "subscriber-123",
  "contextKeys": [
    "tenant:org-123",
    "region:us-east-1"
  ],
  "workspace": {
    "id": "T123456",
    "name": "Acme HQ",
    "botUserId": "U0123456789"
  },
  "auth": {
    "accessToken": "Workspace access token",
    "refreshToken": "Workspace refresh token",
    "expiresAt": "2026-06-15T12:00:00.000Z",
    "refreshTokenExpiresAt": "2026-09-15T12:00:00.000Z"
  }
}

Changes

Changed in 5 of the 12 revisions of this API.1310

  • 24e82408dec711See the full diff
    • added the new novu-web-chat enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • removed the novu-agent-chat enum value from the providerId response property for the response status 200

      response-property-enum-value-removed

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • c2b2fa0d5d4811See the full diff
    • added the new novu-agent-chat enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • removed the novu-web-chat enum value from the providerId response property for the response status 200

      response-property-enum-value-removed

    • added the new grafana enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new novu-web-chat enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • ab1c5d528f9712See the full diff
    • added the new ruach-sms enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new optional request property workspace/botUserId

      new-optional-request-property

    • added the optional property workspace/botUserId to the response with the 200 status

      response-optional-property-added

  • c69777f6018486See the full diff
    • added the new anypost enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new line enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new opsgenie enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new pagerduty enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new sendblue enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new tool enum value to the channel response property for the response status 200

      response-property-enum-value-added

    • added the new tool-webhook enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new webex-messaging enum value to the providerId response property for the response status 200

      response-property-enum-value-added

    • added the new optional request property auth/expiresAt

      new-optional-request-property

    • added the new optional request property auth/refreshToken

      new-optional-request-property

    • added the new optional request property auth/refreshTokenExpiresAt

      new-optional-request-property

    • added the optional property auth/expiresAt to the response with the 200 status

      response-optional-property-added

    • added the optional property auth/refreshToken to the response with the 200 status

      response-optional-property-added

    • added the optional property auth/refreshTokenExpiresAt to the response with the 200 status

      response-optional-property-added