Update an existing channel endpoint by its unique identifier.
PATCH
/
v1
/
channel-endpoints
/
{identifier}
Go
package main
import(
"context"
"github.com/novuhq/novu-go/v3"
"github.com/novuhq/novu-go/v3/models/components"
"log"
)
func main() {
ctx := context.Background()
s := v3.New(
v3.WithSecurity("YOUR_SECRET_KEY_HERE"),
)
res, err := s.ChannelEndpoints.Update(ctx, "<value>", components.UpdateChannelEndpointRequestDto{
Endpoint: components.CreateUpdateChannelEndpointRequestDtoEndpointSlackUserEndpointDto(
components.SlackUserEndpointDto{
UserID: "U123456789",
},
),
}, nil)
if err != nil {
log.Fatal(err)
}
if res.GetChannelEndpointResponseDto != nil {
switch res.GetChannelEndpointResponseDto.Endpoint.Type {
case components.EndpointTypeSlackChannelEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.SlackChannelEndpointDto is populated
case components.EndpointTypeSlackUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.SlackUserEndpointDto is populated
case components.EndpointTypeWebhookEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebhookEndpointDto is populated
case components.EndpointTypePhoneEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.PhoneEndpointDto is populated
case components.EndpointTypeMsTeamsChannelEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.MsTeamsChannelEndpointDto is populated
case components.EndpointTypeMsTeamsUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.MsTeamsUserEndpointDto is populated
case components.EndpointTypeTelegramChatEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.TelegramChatEndpointDto is populated
case components.EndpointTypeWebexRoomEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebexRoomEndpointDto is populated
case components.EndpointTypeWebexPersonEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebexPersonEndpointDto is populated
case components.EndpointTypeLineUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.LineUserEndpointDto is populated
case components.EndpointTypePagerDutyServiceEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.PagerDutyServiceEndpointDto is populated
case components.EndpointTypeOpsgenieIntegrationEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.OpsgenieIntegrationEndpointDto is populated
case components.EndpointTypeGrafanaOnCallIntegrationEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.GrafanaOnCallIntegrationEndpointDto is populated
case components.EndpointTypeToolWebhookEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.ToolWebhookEndpointDto is populated
}
}
}
import { Novu } from "@novu/api";
const novu = new Novu({
secretKey: "YOUR_SECRET_KEY_HERE",
});
async function run() {
const result = await novu.channelEndpoints.update({
endpoint: {
userId: "U123456789",
},
}, "<value>");
console.log(result);
}
run();
using Novu;
using Novu.Models.Components;
var sdk = new NovuSDK(secretKey: "YOUR_SECRET_KEY_HERE");
var res = await sdk.ChannelEndpoints.UpdateAsync(
identifier: "<value>",
updateChannelEndpointRequestDto: new UpdateChannelEndpointRequestDto() {
Endpoint = UpdateChannelEndpointRequestDtoEndpoint.CreateSlackUserEndpointDto(
new SlackUserEndpointDto() {
UserId = "U123456789",
}
),
}
);
// handle response
declare(strict_types=1);
require 'vendor/autoload.php';
use novu;
use novu\Models\Components;
$sdk = novu\Novu::builder()
->setSecurity(
'YOUR_SECRET_KEY_HERE'
)
->build();
$updateChannelEndpointRequestDto = new Components\UpdateChannelEndpointRequestDto(
endpoint: new Components\SlackUserEndpointDto(
userId: 'U123456789',
),
);
$response = $sdk->channelEndpoints->update(
identifier: '<value>',
updateChannelEndpointRequestDto: $updateChannelEndpointRequestDto
);
if ($response->getChannelEndpointResponseDto !== null) {
// handle response
}
from novu_py import Novu
with Novu(
secret_key="YOUR_SECRET_KEY_HERE",
) as novu:
res = novu.channel_endpoints.update(identifier="<value>", update_channel_endpoint_request_dto={
"endpoint": {
"user_id": "U123456789",
},
})
# Handle response
print(res)
Update an existing channel endpoint. Pass only the fields you want to change inside endpoint (and optional top-level fields such as context where supported).
package main
import(
"context"
"github.com/novuhq/novu-go/v3"
"github.com/novuhq/novu-go/v3/models/components"
"log"
)
func main() {
ctx := context.Background()
s := v3.New(
v3.WithSecurity("YOUR_SECRET_KEY_HERE"),
)
res, err := s.ChannelEndpoints.Update(ctx, "<value>", components.UpdateChannelEndpointRequestDto{
Endpoint: components.CreateUpdateChannelEndpointRequestDtoEndpointSlackUserEndpointDto(
components.SlackUserEndpointDto{
UserID: "U123456789",
},
),
}, nil)
if err != nil {
log.Fatal(err)
}
if res.GetChannelEndpointResponseDto != nil {
switch res.GetChannelEndpointResponseDto.Endpoint.Type {
case components.EndpointTypeSlackChannelEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.SlackChannelEndpointDto is populated
case components.EndpointTypeSlackUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.SlackUserEndpointDto is populated
case components.EndpointTypeWebhookEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebhookEndpointDto is populated
case components.EndpointTypePhoneEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.PhoneEndpointDto is populated
case components.EndpointTypeMsTeamsChannelEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.MsTeamsChannelEndpointDto is populated
case components.EndpointTypeMsTeamsUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.MsTeamsUserEndpointDto is populated
case components.EndpointTypeTelegramChatEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.TelegramChatEndpointDto is populated
case components.EndpointTypeWebexRoomEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebexRoomEndpointDto is populated
case components.EndpointTypeWebexPersonEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.WebexPersonEndpointDto is populated
case components.EndpointTypeLineUserEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.LineUserEndpointDto is populated
case components.EndpointTypePagerDutyServiceEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.PagerDutyServiceEndpointDto is populated
case components.EndpointTypeOpsgenieIntegrationEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.OpsgenieIntegrationEndpointDto is populated
case components.EndpointTypeGrafanaOnCallIntegrationEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.GrafanaOnCallIntegrationEndpointDto is populated
case components.EndpointTypeToolWebhookEndpointDto:
// res.GetChannelEndpointResponseDto.Endpoint.ToolWebhookEndpointDto is populated
}
}
}
import { Novu } from "@novu/api";
const novu = new Novu({
secretKey: "YOUR_SECRET_KEY_HERE",
});
async function run() {
const result = await novu.channelEndpoints.update({
endpoint: {
userId: "U123456789",
},
}, "<value>");
console.log(result);
}
run();
using Novu;
using Novu.Models.Components;
var sdk = new NovuSDK(secretKey: "YOUR_SECRET_KEY_HERE");
var res = await sdk.ChannelEndpoints.UpdateAsync(
identifier: "<value>",
updateChannelEndpointRequestDto: new UpdateChannelEndpointRequestDto() {
Endpoint = UpdateChannelEndpointRequestDtoEndpoint.CreateSlackUserEndpointDto(
new SlackUserEndpointDto() {
UserId = "U123456789",
}
),
}
);
// handle response
declare(strict_types=1);
require 'vendor/autoload.php';
use novu;
use novu\Models\Components;
$sdk = novu\Novu::builder()
->setSecurity(
'YOUR_SECRET_KEY_HERE'
)
->build();
$updateChannelEndpointRequestDto = new Components\UpdateChannelEndpointRequestDto(
endpoint: new Components\SlackUserEndpointDto(
userId: 'U123456789',
),
);
$response = $sdk->channelEndpoints->update(
identifier: '<value>',
updateChannelEndpointRequestDto: $updateChannelEndpointRequestDto
);
if ($response->getChannelEndpointResponseDto !== null) {
// handle response
}
from novu_py import Novu
with Novu(
secret_key="YOUR_SECRET_KEY_HERE",
) as novu:
res = novu.channel_endpoints.update(identifier="<value>", update_channel_endpoint_request_dto={
"endpoint": {
"user_id": "U123456789",
},
})
# Handle response
print(res)
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Novu","description":"The open-source notification infrastructure for agents and products. Send, receive, and track notifications across channels.","colors":{"primary":"#0e121b","light":"#FFFFFF","dark":"#FFFFFF"},"logo":{"light":"https://mintcdn.com/novu-c5de82d9/2Q_L4HxwUfLmJjB8/logo/light.svg?fit=max\u0026auto=format\u0026n=2Q_L4HxwUfLmJjB8\u0026q=85\u0026s=23e7050191303b6a0ac4a671dfed8df4","dark":"https://mintcdn.com/novu-c5de82d9/2Q_L4HxwUfLmJjB8/logo/dark.svg?fit=max\u0026auto=format\u0026n=2Q_L4HxwUfLmJjB8\u0026q=85\u0026s=bd7c54f6b7a7b5002ea7b525af3e169c","href":"https://docs.novu.co"},"favicon":"https://mintcdn.com/novu-c5de82d9/ZUl3xXp-4AASlrcI/favicon.svg?fit=max\u0026auto=format\u0026n=ZUl3xXp-4AASlrcI\u0026q=85\u0026s=b53c3afb6a8eaf11aff9db2c5d3f05a1","api":{"openapi":"https://spec.speakeasy.com/novu/novu/json-development-with-code-samples","examples":{"prefill":true}},"background":{},"navbar":{"links":[{"href":"https://novu.co/contact-us","label":"Contact Us"}],"primary":{"type":"button","label":"Get Started","href":"https://dashboard.novu.co/auth/sign-up"}},"footer":{"socials":{"x":"https://x.com/novuhq","github":"https://github.com/novuhq/novu","linkedin":"https://www.linkedin.com/company/novuco"},"links":[{"header":"Comparison","items":[{"label":"Novu vs Courier","href":"https://novu.co/comparison/courier"},{"label":"Novu vs Knock","href":"https://novu.co/comparison/knock"},{"label":"Novu vs MagicBell","href":"https://novu.co/comparison/magicbell"},{"label":"Novu vs SuprSend","href":"https://novu.co/comparison/suprsend"},{"label":"Novu vs In-house","href":"https://novu.co/comparison/building-in-house"}]},{"header":"Resources","items":[{"label":"Contact Support","href":"mailto:support@novu.co"},{"label":"Changelog","href":"https://go.novu.co/changelog?utm_source=docs_footer"},{"label":"Roadmap","href":"https://roadmap.novu.co/roadmap"},{"label":"Contact Sales","href":"https://novu.co/contact-us"},{"label":"Read llms.txt","href":"/llms.txt"}]}]},"seo":{"metatags":{"og:type":"website","twitter:card":"summary_large_image"},"indexing":"all"},"icons":{"library":"lucide"},"integrations":{"gtm":{"tagId":"GTM-KXMC4XP2"},"plausible":{"domain":"docs.novu.co"}},"contextual":{"options":["copy","view","cursor","claude","chatgpt","mcp","add-mcp"],"display":"header"},"thumbnails":{"appearance":"dark","background":"https://mintcdn.com/novu-c5de82d9/vncv7ET97M5-dM6d/images/og/og-image-docs-v2.jpg?fit=max\u0026auto=format\u0026n=vncv7ET97M5-dM6d\u0026q=85\u0026s=26b59f5c597b5b1bea44cbc57cad5e3a","fonts":{"family":"Inter"}},"interaction":{"drilldown":true},"styling":{"latex":false},"navigation":{"global":{"anchors":[]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"novu-c5de82d9","hasAudioNarration":false,"actualSubdomain":"novu-c5de82d9","customDomains":["docs.novu.co"],"gitSource":{"type":"github","owner":"novuhq","repo":"novu","deployBranch":"next","contentDirectory":"docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"collectionId":"313ea6a7-dc00-4182-b4a8-2d4cea7d9086","liveDeploymentHistoryId":"6ae2023c201cdb70a5227b24","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae2023c201cdb70a5227b24"},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"}},"buildId":"6ae2023c201cdb70a5227b24","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"Notify","count":217},{"language":"default","tag":"API Reference","count":160},{"language":"default","tag":"Resources","count":107},{"language":"default","tag":"Integrate Channels Providers","count":93},{"language":"default","tag":"Guides","count":86},{"language":"default","tag":"Data","count":63},{"language":"default","tag":"Getting Started","count":62},{"language":"default","tag":"Framework","count":52},{"language":"default","tag":"Agent Connect","count":41},{"language":"default","tag":"Sms","count":38}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@novu.co","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@media (min-width:1024px){#sidebar-content{width:16rem;min-width:16rem;max-width:16rem}}body:has(#home-content) nav[aria-label=Main] a[aria-current=location]{background:0 0!important;color:rgb(75 85 99)}html.dark body:has(#home-content) nav[aria-label=Main] a[aria-current=location]{color:rgb(156 163 175)}body:has(#home-content) nav[aria-label=Main] a[aria-current=location]:hover{background:rgb(3 7 18/.03)!important;color:rgb(17 24 39)}html.dark body:has(#home-content) nav[aria-label=Main] a[aria-current=location]:hover{background:rgb(255 255 255/.03)!important;color:rgb(229 231 235)}#home-content .hero-cards{margin-top:1.5rem}#home-content .card [data-component-part=card-image]{width:107.5%;max-width:none;margin:-3.75% -3.75% 0}"}],"page":{"pagePath":"api-reference/channel-endpoints/update-a-channel-endpoint","slug":"/api-reference/channel-endpoints/update-a-channel-endpoint","pageMetadata":{"title":"Update a channel endpoint","openapi":"PATCH /v1/channel-endpoints/{identifier}","description":"Update an existing channel endpoint by its unique identifier.","href":"/api-reference/channel-endpoints/update-a-channel-endpoint"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Update an existing channel endpoint by its unique identifier.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Update an existing channel endpoint. Pass only the fields you want to change inside `,_jsx(_components.code,{children:`endpoint`}),` (and optional top-level fields such as `,_jsx(_components.code,{children:`context`}),` where supported).`]}),`\n`,_jsxs(Heading,{level:`2`,id:`tool_webhook-variant`,children:[_jsx(_components.code,{children:`tool_webhook`}),` variant`]}),`\n`,_jsx(_components.p,{children:`Rotate a subscriber’s callback URL, headers, or HTTP method without recreating the endpoint:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -L`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` PATCH`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'https://api.novu.co/v1/channel-endpoints/\u003cENDPOINT_IDENTIFIER>'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`-H `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Content-Type: application/json'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`-H `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Authorization: ApiKey \u003cNOVU_SECRET_KEY>'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`-d `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"endpoint\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"url\": \"https://customer.example.com/hooks/novu-v2\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"headers\": { \"Authorization\": \"Bearer rotated-token\" },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"method\": \"POST\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`}'`})}),`\n`]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`endpoint.url`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string`})}),_jsxs(_components.td,{children:[`New destination URL (`,_jsx(_components.code,{children:`http:`}),` or `,_jsx(_components.code,{children:`https:`}),`). Re-encrypted on the linked connection.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`endpoint.headers`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`Record\u003cstring, string>`})}),_jsx(_components.td,{children:`Optional. Replaces the stored header map for this endpoint.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`endpoint.method`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`\"POST\" | \"PUT\" | \"PATCH\"`})}),_jsx(_components.td,{children:`Optional. New HTTP method override for this endpoint.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`The response re-hydrates the full wire shape (including decrypted `,_jsx(_components.code,{children:`url`}),`, `,_jsx(_components.code,{children:`headers`}),`, and `,_jsx(_components.code,{children:`method`}),`) from the linked channel connection.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update a channel endpoint","openapi":"PATCH /v1/channel-endpoints/{identifier}","description":"Update an existing channel endpoint by its unique identifier.","href":"/api-reference/channel-endpoints/update-a-channel-endpoint"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"tool_webhook variant","slug":"tool_webhook-variant","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"ChannelEndpointsController_updateChannelEndpoint","x-speakeasy-name-override":"update","summary":"Update a channel endpoint","description":"Update an existing channel endpoint by its unique identifier.","parameters":["b40c9879-ab34-458e-84d7-2eef495dc7fe","78ca3736-8264-48a3-9ade-531ebba98bc3"],"requestBody":"1bfd2d8a-2784-44da-b612-82eec10117e6","responses":{"200":"1bdd342a-9d97-4951-8f30-f15a04f6e905","400":"975fd0c4-9559-41db-9002-96cc41c95df6","401":"7112b99e-d224-4dbe-be44-048a6ac152b4","403":"444dfd48-5f0f-4f07-9003-f484ca13b33b","404":"e93cfb9e-1b36-4861-9bc3-61097090a3e6","405":"4ced8816-af56-4f7c-bf49-ea98818c25da","409":"cb40695c-344d-478d-9814-a62eb64ff170","413":"c00df5b2-a58d-4083-8567-1ce79a414b8a","414":"95c8fc31-865c-4b94-8f98-8014dabc1881","415":"a8f5dd12-abe2-4509-914e-d7f480302605","422":"4c389a7d-8b91-45a8-9468-329c6282deae","429":"cc10b6fa-7dea-41f4-8f6f-83cb8c494798","500":"15c070fa-3771-4f95-95de-e613edf7901b","503":"0d8eabaa-7447-42c6-863c-aea6375795d5"},"tags":["Channel Endpoints"],"security":["34b73042-fa81-492e-9294-03af0984e5ab","dd495747-d9c8-4433-97d1-9e645cd09505"],"x-codeSamples":[{"lang":"go","label":"Go","source":"package main\n\nimport(\n\t\"context\"\n\t\"github.com/novuhq/novu-go/v3\"\n\t\"github.com/novuhq/novu-go/v3/models/components\"\n\t\"log\"\n)\n\nfunc main() {\n ctx := context.Background()\n\n s := v3.New(\n v3.WithSecurity(\"YOUR_SECRET_KEY_HERE\"),\n )\n\n res, err := s.ChannelEndpoints.Update(ctx, \"\u003cvalue>\", components.UpdateChannelEndpointRequestDto{\n Endpoint: components.CreateUpdateChannelEndpointRequestDtoEndpointSlackUserEndpointDto(\n components.SlackUserEndpointDto{\n UserID: \"U123456789\",\n },\n ),\n }, nil)\n if err != nil {\n log.Fatal(err)\n }\n if res.GetChannelEndpointResponseDto != nil {\n switch res.GetChannelEndpointResponseDto.Endpoint.Type {\n case components.EndpointTypeSlackChannelEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.SlackChannelEndpointDto is populated\n case components.EndpointTypeSlackUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.SlackUserEndpointDto is populated\n case components.EndpointTypeWebhookEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebhookEndpointDto is populated\n case components.EndpointTypePhoneEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.PhoneEndpointDto is populated\n case components.EndpointTypeMsTeamsChannelEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.MsTeamsChannelEndpointDto is populated\n case components.EndpointTypeMsTeamsUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.MsTeamsUserEndpointDto is populated\n case components.EndpointTypeTelegramChatEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.TelegramChatEndpointDto is populated\n case components.EndpointTypeWebexRoomEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebexRoomEndpointDto is populated\n case components.EndpointTypeWebexPersonEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebexPersonEndpointDto is populated\n case components.EndpointTypeLineUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.LineUserEndpointDto is populated\n case components.EndpointTypePagerDutyServiceEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.PagerDutyServiceEndpointDto is populated\n case components.EndpointTypeOpsgenieIntegrationEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.OpsgenieIntegrationEndpointDto is populated\n case components.EndpointTypeGrafanaOnCallIntegrationEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.GrafanaOnCallIntegrationEndpointDto is populated\n case components.EndpointTypeToolWebhookEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.ToolWebhookEndpointDto is populated\n }\n\n }\n}"},{"lang":"typescript","label":"TypeScript","source":"import { Novu } from \"@novu/api\";\n\nconst novu = new Novu({\n secretKey: \"YOUR_SECRET_KEY_HERE\",\n});\n\nasync function run() {\n const result = await novu.channelEndpoints.update({\n endpoint: {\n userId: \"U123456789\",\n },\n }, \"\u003cvalue>\");\n\n console.log(result);\n}\n\nrun();"},{"lang":"csharp","label":"Csharp (SDK)","source":"using Novu;\nusing Novu.Models.Components;\n\nvar sdk = new NovuSDK(secretKey: \"YOUR_SECRET_KEY_HERE\");\n\nvar res = await sdk.ChannelEndpoints.UpdateAsync(\n identifier: \"\u003cvalue>\",\n updateChannelEndpointRequestDto: new UpdateChannelEndpointRequestDto() {\n Endpoint = UpdateChannelEndpointRequestDtoEndpoint.CreateSlackUserEndpointDto(\n new SlackUserEndpointDto() {\n UserId = \"U123456789\",\n }\n ),\n }\n);\n\n// handle response"},{"lang":"php","label":"PHP","source":"declare(strict_types=1);\n\nrequire 'vendor/autoload.php';\n\nuse novu;\nuse novu\\Models\\Components;\n\n$sdk = novu\\Novu::builder()\n ->setSecurity(\n 'YOUR_SECRET_KEY_HERE'\n )\n ->build();\n\n$updateChannelEndpointRequestDto = new Components\\UpdateChannelEndpointRequestDto(\n endpoint: new Components\\SlackUserEndpointDto(\n userId: 'U123456789',\n ),\n);\n\n$response = $sdk->channelEndpoints->update(\n identifier: '\u003cvalue>',\n updateChannelEndpointRequestDto: $updateChannelEndpointRequestDto\n\n);\n\nif ($response->getChannelEndpointResponseDto !== null) {\n // handle response\n}"},{"lang":"python","label":"Python","source":"from novu_py import Novu\n\n\nwith Novu(\n secret_key=\"YOUR_SECRET_KEY_HERE\",\n) as novu:\n\n res = novu.channel_endpoints.update(identifier=\"\u003cvalue>\", update_channel_endpoint_request_dto={\n \"endpoint\": {\n \"user_id\": \"U123456789\",\n },\n })\n\n # Handle response\n print(res)"}],"method":"patch","type":"path","servers":["29cc13d7-64c7-40f9-8a35-9c01537b78f4","7588375a-aa7e-462d-a5bf-d94b8564f985"],"path":"/v1/channel-endpoints/{identifier}","baseUrlOptions":["https://api.novu.co","https://eu.api.novu.co"],"title":"Update a channel endpoint","codeSamples":[{"label":"Go","lang":"go","source":"package main\n\nimport(\n\t\"context\"\n\t\"github.com/novuhq/novu-go/v3\"\n\t\"github.com/novuhq/novu-go/v3/models/components\"\n\t\"log\"\n)\n\nfunc main() {\n ctx := context.Background()\n\n s := v3.New(\n v3.WithSecurity(\"YOUR_SECRET_KEY_HERE\"),\n )\n\n res, err := s.ChannelEndpoints.Update(ctx, \"\u003cvalue>\", components.UpdateChannelEndpointRequestDto{\n Endpoint: components.CreateUpdateChannelEndpointRequestDtoEndpointSlackUserEndpointDto(\n components.SlackUserEndpointDto{\n UserID: \"U123456789\",\n },\n ),\n }, nil)\n if err != nil {\n log.Fatal(err)\n }\n if res.GetChannelEndpointResponseDto != nil {\n switch res.GetChannelEndpointResponseDto.Endpoint.Type {\n case components.EndpointTypeSlackChannelEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.SlackChannelEndpointDto is populated\n case components.EndpointTypeSlackUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.SlackUserEndpointDto is populated\n case components.EndpointTypeWebhookEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebhookEndpointDto is populated\n case components.EndpointTypePhoneEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.PhoneEndpointDto is populated\n case components.EndpointTypeMsTeamsChannelEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.MsTeamsChannelEndpointDto is populated\n case components.EndpointTypeMsTeamsUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.MsTeamsUserEndpointDto is populated\n case components.EndpointTypeTelegramChatEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.TelegramChatEndpointDto is populated\n case components.EndpointTypeWebexRoomEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebexRoomEndpointDto is populated\n case components.EndpointTypeWebexPersonEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.WebexPersonEndpointDto is populated\n case components.EndpointTypeLineUserEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.LineUserEndpointDto is populated\n case components.EndpointTypePagerDutyServiceEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.PagerDutyServiceEndpointDto is populated\n case components.EndpointTypeOpsgenieIntegrationEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.OpsgenieIntegrationEndpointDto is populated\n case components.EndpointTypeGrafanaOnCallIntegrationEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.GrafanaOnCallIntegrationEndpointDto is populated\n case components.EndpointTypeToolWebhookEndpointDto:\n // res.GetChannelEndpointResponseDto.Endpoint.ToolWebhookEndpointDto is populated\n }\n\n }\n}"},{"label":"TypeScript","lang":"typescript","source":"import { Novu } from \"@novu/api\";\n\nconst novu = new Novu({\n secretKey: \"YOUR_SECRET_KEY_HERE\",\n});\n\nasync function run() {\n const result = await novu.channelEndpoints.update({\n endpoint: {\n userId: \"U123456789\",\n },\n }, \"\u003cvalue>\");\n\n console.log(result);\n}\n\nrun();"},{"label":"Csharp (SDK)","lang":"csharp","source":"using Novu;\nusing Novu.Models.Components;\n\nvar sdk = new NovuSDK(secretKey: \"YOUR_SECRET_KEY_HERE\");\n\nvar res = await sdk.ChannelEndpoints.UpdateAsync(\n identifier: \"\u003cvalue>\",\n updateChannelEndpointRequestDto: new UpdateChannelEndpointRequestDto() {\n Endpoint = UpdateChannelEndpointRequestDtoEndpoint.CreateSlackUserEndpointDto(\n new SlackUserEndpointDto() {\n UserId = \"U123456789\",\n }\n ),\n }\n);\n\n// handle response"},{"label":"PHP","lang":"php","source":"declare(strict_types=1);\n\nrequire 'vendor/autoload.php';\n\nuse novu;\nuse novu\\Models\\Components;\n\n$sdk = novu\\Novu::builder()\n ->setSecurity(\n 'YOUR_SECRET_KEY_HERE'\n )\n ->build();\n\n$updateChannelEndpointRequestDto = new Components\\UpdateChannelEndpointRequestDto(\n endpoint: new Components\\SlackUserEndpointDto(\n userId: 'U123456789',\n ),\n);\n\n$response = $sdk->channelEndpoints->update(\n identifier: '\u003cvalue>',\n updateChannelEndpointRequestDto: $updateChannelEndpointRequestDto\n\n);\n\nif ($response->getChannelEndpointResponseDto !== null) {\n // handle response\n}"},{"label":"Python","lang":"python","source":"from novu_py import Novu\n\n\nwith Novu(\n secret_key=\"YOUR_SECRET_KEY_HERE\",\n) as novu:\n\n res = novu.channel_endpoints.update(identifier=\"\u003cvalue>\", update_channel_endpoint_request_dto={\n \"endpoint\": {\n \"user_id\": \"U123456789\",\n },\n })\n\n # Handle response\n print(res)"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.endpoint.oneOf.0.channelId":"C123456789"}]},"dependencies":{"parameters":{"b40c9879-ab34-458e-84d7-2eef495dc7fe":{"name":"identifier","required":true,"in":"path","description":"The unique identifier of the channel endpoint","schema":{"type":"string","isRequired":true,"description":"The unique identifier of the channel endpoint","uniqueKey":"","typeLabel":"string"}},"78ca3736-8264-48a3-9ade-531ebba98bc3":{"name":"idempotency-key","in":"header","description":"A header for idempotency purposes","required":false,"schema":{"type":"string","isRequired":false,"description":"A header for idempotency purposes","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"endpoint":{"oneOf":[{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["channelId"],"properties":{"channelId":{"type":"string","description":"Slack channel ID","example":"C123456789","isRequired":true,"uniqueKey":"endpoint.oneOf.0.channelId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.0","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["userId"],"properties":{"userId":{"type":"string","description":"Slack user ID","example":"U123456789","isRequired":true,"uniqueKey":"endpoint.oneOf.1.userId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.1","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["url"],"properties":{"url":{"type":"string","description":"Webhook URL","example":"https://example.com/webhook","isRequired":true,"uniqueKey":"endpoint.oneOf.2.url","typeLabel":"string"},"channel":{"type":"string","description":"Optional channel identifier","uniqueKey":"endpoint.oneOf.2.channel","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.2","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["phoneNumber"],"properties":{"phoneNumber":{"type":"string","description":"Phone number in E.164 format","example":"+1234567890","isRequired":true,"uniqueKey":"endpoint.oneOf.3.phoneNumber","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.3","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["roomId"],"properties":{"roomId":{"type":"string","description":"Webex room ID","example":"Y2lzY29zcGFyazovL3VzL1JPT00v...","isRequired":true,"uniqueKey":"endpoint.oneOf.4.roomId","typeLabel":"string"},"parentId":{"type":"string","description":"Optional Webex parent message ID for threaded replies","example":"Y2lzY29zcGFyazovL3VzL01FU1NBR0Uv...","uniqueKey":"endpoint.oneOf.4.parentId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.4","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","properties":{"personId":{"type":"string","description":"Webex person ID. Provide exactly one of personId or personEmail.","example":"Y2lzY29zcGFyazovL3VzL1BFT1BMRS8...","uniqueKey":"endpoint.oneOf.5.personId","typeLabel":"string"},"personEmail":{"type":"string","description":"Webex person email. Provide exactly one of personId or personEmail.","example":"user@example.com","uniqueKey":"endpoint.oneOf.5.personEmail","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.5","typeLabel":"object"},{"type":"object","description":"Updated endpoint data. The structure must match the existing channel endpoint type.","required":["url"],"properties":{"url":{"type":"string","description":"Destination webhook URL (often a per-subscriber capability URL). Encrypted at rest on the channel endpoint (`endpoint` field).","example":"https://example.com/tools/incoming","isRequired":true,"uniqueKey":"endpoint.oneOf.6.url","typeLabel":"string"},"headers":{"type":"object","description":"Optional headers (e.g. auth tokens) sent with every request to this webhook. Header values are encrypted at rest on the channel endpoint (`endpoint` field).","example":{"Authorization":"Bearer \u003ctoken>"},"uniqueKey":"endpoint.oneOf.6.headers","typeLabel":"object"},"method":{"type":"string","description":"Optional HTTP method override for this webhook. Defaults to the integration-level method.","enum":["POST","PUT","PATCH"],"example":"POST","uniqueKey":"endpoint.oneOf.6.method","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.6","typeLabel":"object"}],"isRequired":true,"uniqueKey":"endpoint","typeLabel":"object"}},"required":["endpoint"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"endpoint":{"channelId":"C123456789"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"1bdd342a-9d97-4951-8f30-f15a04f6e905":{"description":"OK","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"identifier":{"type":"string","description":"The unique identifier of the channel endpoint.","isRequired":true,"uniqueKey":"identifier","typeLabel":"string"},"channel":{"oneOf":[{"enum":["in_app","email","sms","chat","push","tool"],"type":"string","description":"The channel type (email, sms, push, chat, etc.).","isRequired":true,"uniqueKey":"channel.oneOf.0","typeLabel":"enum\u003cstring>"},{"enum":["in_app","email","sms","chat","push","tool"],"type":"null","description":"The channel type (email, sms, push, chat, etc.).","isRequired":true,"uniqueKey":"channel.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"channel","typeLabel":"enum\u003cstring> | null"},"providerId":{"oneOf":[{"type":"string","description":"The provider identifier (e.g., sendgrid, twilio, slack, etc.).","enum":["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"],"example":"slack","isRequired":true,"uniqueKey":"providerId.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The provider identifier (e.g., sendgrid, twilio, slack, etc.).","enum":["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"],"example":"slack","isRequired":true,"uniqueKey":"providerId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"providerId","typeLabel":"enum\u003cstring> | null"},"integrationIdentifier":{"oneOf":[{"type":"string","description":"The identifier of the integration to use for this channel endpoint.","example":"slack-prod","isRequired":true,"uniqueKey":"integrationIdentifier.oneOf.0","typeLabel":"string"},{"type":"null","description":"The identifier of the integration to use for this channel endpoint.","example":"slack-prod","isRequired":true,"uniqueKey":"integrationIdentifier.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"integrationIdentifier","typeLabel":"string | null"},"connectionIdentifier":{"oneOf":[{"type":"string","description":"The identifier of the channel connection used for this endpoint.","example":"slack-connection-abc123","isRequired":true,"uniqueKey":"connectionIdentifier.oneOf.0","typeLabel":"string"},{"type":"null","description":"The identifier of the channel connection used for this endpoint.","example":"slack-connection-abc123","isRequired":true,"uniqueKey":"connectionIdentifier.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"connectionIdentifier","typeLabel":"string | null"},"subscriberId":{"oneOf":[{"type":"string","description":"The subscriber ID to which the channel endpoint is linked","example":"subscriber-123","isRequired":true,"uniqueKey":"subscriberId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The subscriber ID to which the channel endpoint is linked","example":"subscriber-123","isRequired":true,"uniqueKey":"subscriberId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"subscriberId","typeLabel":"string | null"},"contextKeys":{"description":"The context of the channel connection","example":["tenant:org-123","region:us-east-1"],"type":"array","items":{"type":"string","uniqueKey":"contextKeys.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"contextKeys","typeLabel":"string[]"},"type":{"type":"string","description":"Type of channel endpoint","enum":["slack_channel","slack_user","webhook","phone","ms_teams_channel","ms_teams_user","telegram_chat","webex_room","webex_person","line_user","pagerduty_service","opsgenie_integration","grafana_oncall_integration","tool_webhook"],"example":"slack_channel","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"endpoint":{"oneOf":[{"type":"object","description":"Endpoint data specific to the channel type","required":["channelId"],"properties":{"channelId":{"type":"string","description":"Slack channel ID","example":"C123456789","isRequired":true,"uniqueKey":"endpoint.oneOf.0.channelId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.0","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["userId"],"properties":{"userId":{"type":"string","description":"Slack user ID","example":"U123456789","isRequired":true,"uniqueKey":"endpoint.oneOf.1.userId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.1","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["url"],"properties":{"url":{"type":"string","description":"Webhook URL","example":"https://example.com/webhook","isRequired":true,"uniqueKey":"endpoint.oneOf.2.url","typeLabel":"string"},"channel":{"type":"string","description":"Optional channel identifier","uniqueKey":"endpoint.oneOf.2.channel","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.2","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["phoneNumber"],"properties":{"phoneNumber":{"type":"string","description":"Phone number in E.164 format","example":"+1234567890","isRequired":true,"uniqueKey":"endpoint.oneOf.3.phoneNumber","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.3","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["teamId","channelId"],"properties":{"teamId":{"type":"string","description":"MS Teams team ID","example":"19:abc123...@thread.tacv2","isRequired":true,"uniqueKey":"endpoint.oneOf.4.teamId","typeLabel":"string"},"channelId":{"type":"string","description":"MS Teams channel ID","example":"19:def456...@thread.tacv2","isRequired":true,"uniqueKey":"endpoint.oneOf.4.channelId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.4","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["userId"],"properties":{"userId":{"type":"string","description":"MS Teams user ID","example":"29:1234567890abcdef","isRequired":true,"uniqueKey":"endpoint.oneOf.5.userId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.5","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["chatId"],"properties":{"chatId":{"type":"string","description":"Telegram chat ID","example":"123456789","isRequired":true,"uniqueKey":"endpoint.oneOf.6.chatId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.6","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["roomId"],"properties":{"roomId":{"type":"string","description":"Webex room ID","example":"Y2lzY29zcGFyazovL3VzL1JPT00v...","isRequired":true,"uniqueKey":"endpoint.oneOf.7.roomId","typeLabel":"string"},"parentId":{"type":"string","description":"Optional Webex parent message ID for threaded replies","example":"Y2lzY29zcGFyazovL3VzL01FU1NBR0Uv...","uniqueKey":"endpoint.oneOf.7.parentId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.7","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","properties":{"personId":{"type":"string","description":"Webex person ID. Provide exactly one of personId or personEmail.","example":"Y2lzY29zcGFyazovL3VzL1BFT1BMRS8...","uniqueKey":"endpoint.oneOf.8.personId","typeLabel":"string"},"personEmail":{"type":"string","description":"Webex person email. Provide exactly one of personId or personEmail.","example":"user@example.com","uniqueKey":"endpoint.oneOf.8.personEmail","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.8","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["userId"],"properties":{"userId":{"type":"string","description":"LINE user ID","example":"U1234567890abcdef","isRequired":true,"uniqueKey":"endpoint.oneOf.9.userId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.9","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["routingKey","region"],"properties":{"routingKey":{"type":"string","pattern":"/^[a-zA-Z0-9]{32}$/","description":"PagerDuty Events API v2 integration key (32-character alphanumeric string). Encrypted at rest on the channel endpoint (`endpoint` field).","example":"R0UTINGK3YEXAMPLE000000000000000","minLength":32,"maxLength":32,"isRequired":true,"uniqueKey":"endpoint.oneOf.10.routingKey","typeLabel":"string"},"region":{"type":"string","description":"PagerDuty account region — determines the events API data-center endpoint.","enum":["us","eu"],"example":"us","isRequired":true,"uniqueKey":"endpoint.oneOf.10.region","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.10","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["apiKey","region"],"properties":{"apiKey":{"type":"string","pattern":"OPSGENIE_API_KEY_PATTERN","description":"Opsgenie API integration key (GenieKey) in UUID format. Encrypted at rest on the channel endpoint (`endpoint` field).","example":"abcdefg-a25a-4652-883c-73703b12345","isRequired":true,"uniqueKey":"endpoint.oneOf.11.apiKey","typeLabel":"string"},"region":{"type":"string","description":"Opsgenie account region that determines the alert API data-center endpoint.","enum":["us","eu"],"example":"us","isRequired":true,"uniqueKey":"endpoint.oneOf.11.region","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.11","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["url"],"properties":{"url":{"type":"string","pattern":"GRAFANA_ONCALL_WEBHOOK_URL_PATTERN","description":"Grafana IRM/OnCall incoming-webhook (Formatted Webhook) integration URL. The routing secret is embedded in the URL path. Encrypted at rest on the channel endpoint (`endpoint` field).","example":"https://acme.grafana.net/integrations/v1/formatted_webhook/m12xmIjOcgwH74UF8CN4dk0Dh/","isRequired":true,"uniqueKey":"endpoint.oneOf.12.url","typeLabel":"string"},"authToken":{"type":"string","description":"Optional Grafana service account bearer token, required when the integration enforces authenticated ingestion. Encrypted at rest on the channel endpoint (`endpoint` field).","example":"glsa_abc123...","uniqueKey":"endpoint.oneOf.12.authToken","typeLabel":"string"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.12","typeLabel":"object"},{"type":"object","description":"Endpoint data specific to the channel type","required":["url"],"properties":{"url":{"type":"string","description":"Destination webhook URL (often a per-subscriber capability URL). Encrypted at rest on the channel endpoint (`endpoint` field).","example":"https://example.com/tools/incoming","isRequired":true,"uniqueKey":"endpoint.oneOf.13.url","typeLabel":"string"},"headers":{"type":"object","description":"Optional headers (e.g. auth tokens) sent with every request to this webhook. Header values are encrypted at rest on the channel endpoint (`endpoint` field).","example":{"Authorization":"Bearer \u003ctoken>"},"uniqueKey":"endpoint.oneOf.13.headers","typeLabel":"object"},"method":{"type":"string","description":"Optional HTTP method override for this webhook. Defaults to the integration-level method.","enum":["POST","PUT","PATCH"],"example":"POST","uniqueKey":"endpoint.oneOf.13.method","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"endpoint.oneOf.13","typeLabel":"object"}],"isRequired":true,"uniqueKey":"endpoint","typeLabel":"object"},"createdAt":{"type":"string","description":"The timestamp indicating when the channel endpoint was created, in ISO 8601 format.","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string"},"updatedAt":{"type":"string","description":"The timestamp indicating when the channel endpoint was last updated, in ISO 8601 format.","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string"}},"required":["identifier","channel","providerId","integrationIdentifier","connectionIdentifier","subscriberId","contextKeys","type","endpoint","createdAt","updatedAt"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"identifier":"\u003cstring>","channel":"in_app","providerId":"slack","integrationIdentifier":"slack-prod","connectionIdentifier":"slack-connection-abc123","subscriberId":"subscriber-123","contextKeys":["tenant:org-123","region:us-east-1"],"type":"slack_channel","endpoint":{"channelId":"C123456789"},"createdAt":"\u003cstring>","updatedAt":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"975fd0c4-9559-41db-9002-96cc41c95df6":{"description":"Bad Request","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"7112b99e-d224-4dbe-be44-048a6ac152b4":{"description":"Unauthorized","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"444dfd48-5f0f-4f07-9003-f484ca13b33b":{"description":"Forbidden","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"e93cfb9e-1b36-4861-9bc3-61097090a3e6":{"description":"Not Found","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"4ced8816-af56-4f7c-bf49-ea98818c25da":{"description":"Method Not Allowed","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"cb40695c-344d-478d-9814-a62eb64ff170":{"description":"Conflict","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"c00df5b2-a58d-4083-8567-1ce79a414b8a":{"description":"Payload Too Large","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"95c8fc31-865c-4b94-8f98-8014dabc1881":{"description":"URI Too Long","content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"a8f5dd12-abe2-4509-914e-d7f480302605":{"description":"Unsupported Media Type","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"4c389a7d-8b91-45a8-9468-329c6282deae":{"description":"Unprocessable Entity","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"errors":{"type":"object","description":"A record of validation errors keyed by field name","additionalProperties":{"type":"object","properties":{"messages":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.messages.items.[INDEX]","typeLabel":"string"},"description":"List of validation error messages","example":["Field is required","Invalid format"],"isRequired":true,"uniqueKey":"errors.additionalProperties.messages","typeLabel":"string[]"},"value":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.4","typeLabel":"object"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"errors.additionalProperties.value.oneOf.5.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"errors.additionalProperties.value.oneOf.5","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"errors.additionalProperties.value","typeLabel":"string | null | number | boolean | object | (string | null | number | boolean | object)[]"}},"required":["messages"],"uniqueKey":"errors.additionalProperties","typeLabel":"object"},"example":{"fieldName1":{"messages":["Field is required","Must be a valid email address"],"value":"invalidEmail"},"fieldName2":{"messages":["Must be at least 18 years old"],"value":17},"fieldName3":{"messages":["Must be a boolean value"],"value":true},"fieldName4":{"messages":["Must be a valid object"],"value":{"key":"value"}},"fieldName5":{"messages":["Field is missing"],"value":null},"fieldName6":{"messages":["Undefined value"]}},"isRequired":true,"uniqueKey":"errors","typeLabel":"object"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path","errors"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","errors":{"fieldName1":{"messages":["Field is required","Must be a valid email address"],"value":"invalidEmail"},"fieldName2":{"messages":["Must be at least 18 years old"],"value":17},"fieldName3":{"messages":["Must be a boolean value"],"value":true},"fieldName4":{"messages":["Must be a valid object"],"value":{"key":"value"}},"fieldName5":{"messages":["Field is missing"],"value":null},"fieldName6":{"messages":["Undefined value"]}},"message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"cc10b6fa-7dea-41f4-8f6f-83cb8c494798":{"description":"The client has sent too many requests in a given amount of time. ","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"},"Retry-After":{"required":false,"description":"The number of seconds after which the client may retry the request that was previously rejected.","schema":{"type":"string"},"example":"8"}},"content":{"application/json":{"schema":{"type":"string","example":"API rate limit exceeded","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"API rate limit exceeded"}},"exampleType":"generated"}},"exampleType":"generated"},"15c070fa-3771-4f95-95de-e613edf7901b":{"description":"Internal Server Error","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code of the error response.","example":404,"isRequired":true,"uniqueKey":"statusCode","typeLabel":"number"},"timestamp":{"type":"string","description":"Timestamp of when the error occurred.","example":"2024-12-12T13:00:00Z","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"path":{"type":"string","description":"The path where the error occurred.","example":"/api/v1/resource","isRequired":true,"uniqueKey":"path","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.1","typeLabel":"null"},{"type":"number","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.2","typeLabel":"number"},{"type":"boolean","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.3","typeLabel":"boolean"},{"type":"object","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.4","typeLabel":"object"},{"type":"null","description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.5","typeLabel":"null"},{"type":"array","items":{"oneOf":[{"type":"string","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.1","typeLabel":"null"},{"type":"number","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.3","typeLabel":"boolean"},{"type":"object","additionalProperties":true,"uniqueKey":"message.oneOf.6.items.[INDEX].oneOf.4","typeLabel":"object"}],"uniqueKey":"message.oneOf.6.items.[INDEX]","typeLabel":"string | null | number | boolean | object"},"description":"Value that failed validation","example":"xx xx xx ","uniqueKey":"message.oneOf.6","typeLabel":"(string | null | number | boolean | object)[]"}],"uniqueKey":"message","typeLabel":"string · null · number · boolean · object · null · (string | null | number | boolean | object)[]"},"ctx":{"type":"object","description":"Optional context object for additional error details.","additionalProperties":true,"example":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"uniqueKey":"ctx","typeLabel":"object"},"errorId":{"type":"string","description":"Optional unique identifier for the error, useful for tracking using Sentry and \n New Relic, only available for 500.","example":"abc123","uniqueKey":"errorId","typeLabel":"string"}},"required":["statusCode","timestamp","path"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":404,"timestamp":"2024-12-12T13:00:00Z","path":"/api/v1/resource","message":"xx xx xx ","ctx":{"workflowId":"some_wf_id","stepId":"some_wf_id"},"errorId":"abc123"}}},"exampleType":"generated"}},"exampleType":"generated"},"0d8eabaa-7447-42c6-863c-aea6375795d5":{"description":"The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay.","headers":{"Content-Type":{"required":true,"description":"The MIME type of the response body.","schema":{"type":"string"},"example":"application/json"},"RateLimit-Limit":{"required":false,"description":"The number of requests that the client is permitted to make per second. The actual maximum may differ when burst is enabled.","schema":{"type":"string"},"example":"100"},"RateLimit-Remaining":{"required":false,"description":"The number of requests remaining until the next window.","schema":{"type":"string"},"example":"93"},"RateLimit-Reset":{"required":false,"description":"The remaining seconds until a request of the same cost will be refreshed.","schema":{"type":"string"},"example":"8"},"RateLimit-Policy":{"required":false,"description":"The rate limit policy that was used to evaluate the request.","schema":{"type":"string"},"example":"100;w=1;burst=110;comment=\"token bucket\";category=\"trigger\";cost=\"single\""},"Idempotency-Key":{"required":false,"description":"The idempotency key used to evaluate the request.","schema":{"type":"string"},"example":"8"},"Idempotency-Replay":{"required":false,"description":"Whether the request was a replay of a previous request.","schema":{"type":"string"},"example":"true"},"Retry-After":{"required":false,"description":"The number of seconds after which the client may retry the request that was previously rejected.","schema":{"type":"string"},"example":"8"}},"content":{"application/json":{"schema":{"type":"string","example":"Please wait some time, then try again.","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"Please wait some time, then try again."}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"34b73042-fa81-492e-9294-03af0984e5ab":{"secretKey":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","x-speakeasy-example":"YOUR_SECRET_KEY_HERE","scopes":[]}},"dd495747-d9c8-4433-97d1-9e645cd09505":{"secretKey":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","x-speakeasy-example":"YOUR_SECRET_KEY_HERE","scopes":[]}}},"servers":{"29cc13d7-64c7-40f9-8a35-9c01537b78f4":{"url":"https://api.novu.co"},"7588375a-aa7e-462d-a5bf-d94b8564f985":{"url":"https://eu.api.novu.co"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","x-speakeasy-example":"YOUR_SECRET_KEY_HERE","scopes":[]},"schema":{"title":"Authorization","type":"string","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"secretKey","name":"Authorization"}],"title":"secretKey"},{"schemes":[{"scheme":{"type":"apiKey","name":"Authorization","in":"header","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","x-speakeasy-example":"YOUR_SECRET_KEY_HERE","scopes":[]},"schema":{"title":"Authorization","type":"string","description":"API key authentication. Allowed headers-- \"Authorization: ApiKey \u003cnovu_secret_key>\".","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"secretKey","name":"Authorization"}],"title":"secretKey"}]},"originalFileLocation":"https://spec.speakeasy.com/novu/novu/json-development-with-code-samples"},"subdomain":"novu-c5de82d9","siteName":"Novu","title":"Update a channel endpoint - Novu","contextualStarterQuestions":[{"_id":"6a65ba638b4bdb92498a68bb","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"Can I change HTTP methods?","status":"active","generatedBy":"contextual","path":"api-reference/channel-endpoints/update-a-channel-endpoint","createdAt":"2026-07-26T07:42:27.261Z","updatedAt":"2026-07-26T07:42:27.261Z","__v":0},{"_id":"6a65ba638b4bdb92498a68b9","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"How do I rotate webhook URLs?","status":"active","generatedBy":"contextual","path":"api-reference/channel-endpoints/update-a-channel-endpoint","createdAt":"2026-07-26T07:42:27.261Z","updatedAt":"2026-07-26T07:42:27.261Z","__v":0},{"_id":"6a65ba638b4bdb92498a68ba","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"What fields can I update?","status":"active","generatedBy":"contextual","path":"api-reference/channel-endpoints/update-a-channel-endpoint","createdAt":"2026-07-26T07:42:27.261Z","updatedAt":"2026-07-26T07:42:27.261Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-26T07:42:14.690Z","originalFileLocation":"api-reference/channel-endpoints/update-a-channel-endpoint.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Update an existing channel endpoint by its unique identifier.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Novu\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update a channel endpoint - Novu\">\u003cmeta data-mint-head property=\"og:description\" content=\"Update an existing channel endpoint by its unique identifier.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Novu\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://novu-c5de82d9.mintlify.app/_mintlify/api/og/v2?division=Channel+Endpoints\u0026amp;title=Update+a+channel+endpoint\u0026amp;description=Update+an+existing+channel+endpoint+by+its+unique+identifier.\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=c087b030f506ff650233e222c6e8c811bcbd27391cc4809618d6c0205cbe8678\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Update a channel endpoint - Novu\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Update an existing channel endpoint by its unique identifier.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://novu-c5de82d9.mintlify.app/_mintlify/api/og/v2?division=Channel+Endpoints\u0026amp;title=Update+a+channel+endpoint\u0026amp;description=Update+an+existing+channel+endpoint+by+its+unique+identifier.\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=c087b030f506ff650233e222c6e8c811bcbd27391cc4809618d6c0205cbe8678\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/novu-c5de82d9/hif-BqO_gbG8zfWr/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Novu\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0e121b\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/channel-endpoints/update-a-channel-endpoint.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.novu.co/#organization\",\"name\":\"Novu\",\"url\":\"https://docs.novu.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/novu-c5de82d9/2Q_L4HxwUfLmJjB8/logo/light.svg?fit=max\u0026auto=format\u0026n=2Q_L4HxwUfLmJjB8\u0026q=85\u0026s=23e7050191303b6a0ac4a671dfed8df4\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.novu.co#website\",\"name\":\"Novu\",\"url\":\"https://docs.novu.co\",\"publisher\":{\"@id\":\"https://docs.novu.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint#webpage\",\"url\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint\",\"name\":\"Update a channel endpoint\",\"description\":\"Update an existing channel endpoint by its unique identifier.\",\"dateModified\":\"2026-07-26T07:42:14.690Z\",\"isPartOf\":{\"@id\":\"https://docs.novu.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Data\",\"item\":\"https://docs.novu.co/api-reference/subscribers/subscriber-schema\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Channel Endpoints\",\"item\":\"https://docs.novu.co/api-reference/channel-endpoints/create-a-channel-endpoint\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update a channel endpoint\",\"item\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint#apireference\",\"headline\":\"Update a channel endpoint\",\"name\":\"Update a channel endpoint\",\"description\":\"Update an existing channel endpoint by its unique identifier.\",\"url\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint\",\"mainEntityOfPage\":{\"@id\":\"https://docs.novu.co/api-reference/channel-endpoints/update-a-channel-endpoint#webpage\"},\"dateModified\":\"2026-07-26T07:42:14.690Z\",\"publisher\":{\"@id\":\"https://docs.novu.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.novu.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Novu\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Novu","nav":{"global":{"anchors":[]},"tabs":[{"tab":"Notify","pages":[{"title":"Notify","href":"/platform"}]},{"tab":"Agent Connect","pages":[{"title":"Agent Connect","href":"/agents"}]},{"tab":"API Reference","groups":[{"group":"Getting Started","pages":[{"title":"Novu REST API Reference","sidebarTitle":"Overview","href":"/api-reference"},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Errors","href":"/api-reference/errors"},{"title":"Pagination","href":"/api-reference/pagination"},{"title":"Rate Limiting","href":"/api-reference/rate-limiting"},{"title":"Idempotency","href":"/api-reference/idempotency"},{"title":"Payload Limits","href":"/api-reference/payload-limits"}]},{"group":"Notification delivery","icon":"send","pages":[{"group":"Events","expanded":false,"pages":[{"title":"Trigger event","openapi":"POST /v1/events/trigger","href":"/api-reference/events/trigger-event"},{"title":"Bulk trigger event","openapi":"POST /v1/events/trigger/bulk","href":"/api-reference/events/bulk-trigger-event"},{"title":"Broadcast event to all","openapi":"POST /v1/events/trigger/broadcast","href":"/api-reference/events/broadcast-event-to-all"},{"title":"Cancel triggered event","openapi":"DELETE /v1/events/trigger/{transactionId}","href":"/api-reference/events/cancel-triggered-event"}]},{"group":"Notifications","expanded":false,"pages":[{"title":"Notification event schema","sidebarTitle":"Schema","href":"/api-reference/notifications/notification-event-schema"},{"title":"List all events","openapi":"GET /v1/notifications","href":"/api-reference/notifications/list-all-events"},{"title":"Retrieve an event","openapi":"GET /v1/notifications/{notificationId}","href":"/api-reference/notifications/retrieve-an-event"}]},{"group":"Messages","expanded":false,"pages":[{"title":"Message schema","sidebarTitle":"Schema","href":"/api-reference/messages/message-schema"},{"title":"List all messages","openapi":"GET /v1/messages","href":"/api-reference/messages/list-all-messages"},{"title":"Delete a message","openapi":"DELETE /v1/messages/{messageId}","href":"/api-reference/messages/delete-a-message"},{"title":"Delete messages by transactionId","openapi":"DELETE /v1/messages/transaction/{transactionId}","href":"/api-reference/messages/delete-messages-by-transactionid"}]},{"group":"Activity","expanded":false,"pages":[{"title":"Track activity and engagement events","openapi":"POST /v2/inbound-webhooks/delivery-providers/{environmentId}/{integrationId}","href":"/api-reference/activity/track-activity-and-engagement-events"}]}]},{"group":"Agents","icon":"bot","pages":[{"title":"Agent schema","sidebarTitle":"Schema","href":"/api-reference/agents/agent-schema"},{"group":"Management","expanded":false,"pages":[{"title":"Create an agent","openapi":"POST /v1/agents","href":"/api-reference/agents/create-an-agent"},{"title":"List all agents","openapi":"GET /v1/agents","href":"/api-reference/agents/list-all-agents"},{"title":"Retrieve an agent","openapi":"GET /v1/agents/{identifier}","href":"/api-reference/agents/retrieve-an-agent"},{"title":"Update an agent","openapi":"PATCH /v1/agents/{identifier}","href":"/api-reference/agents/update-an-agent"},{"title":"Delete an agent","openapi":"DELETE /v1/agents/{identifier}","href":"/api-reference/agents/delete-an-agent"}]},{"group":"Runtime","expanded":false,"pages":[{"title":"Update an agent bridge","openapi":"PUT /v1/agents/{identifier}/bridge","href":"/api-reference/agents/update-an-agent-bridge"},{"title":"Send an agent reply","openapi":"POST /v1/agents/{agentId}/reply","href":"/api-reference/agents/send-an-agent-reply"}]},{"group":"Integrations","expanded":false,"pages":[{"title":"Create an agent integration","openapi":"POST /v1/agents/{identifier}/integrations","href":"/api-reference/agents/create-an-agent-integration"},{"title":"List agent integrations","openapi":"GET /v1/agents/{identifier}/integrations","href":"/api-reference/agents/list-agent-integrations"},{"title":"Update an agent integration","openapi":"PATCH /v1/agents/{identifier}/integrations/{agentIntegrationId}","href":"/api-reference/agents/update-an-agent-integration"},{"title":"Delete an agent integration","openapi":"DELETE /v1/agents/{identifier}/integrations/{agentIntegrationId}","href":"/api-reference/agents/delete-an-agent-integration"}]}]},{"group":"Data","icon":"database","pages":[{"group":"Subscribers","expanded":false,"pages":[{"title":"Subscriber schema","sidebarTitle":"Schema","href":"/api-reference/subscribers/subscriber-schema"},{"group":"Management","expanded":false,"pages":[{"title":"Create a subscriber","openapi":"POST /v2/subscribers","href":"/api-reference/subscribers/create-a-subscriber"},{"title":"Retrieve a subscriber","openapi":"GET /v2/subscribers/{subscriberId}","href":"/api-reference/subscribers/retrieve-a-subscriber"},{"title":"Update a subscriber","openapi":"PATCH /v2/subscribers/{subscriberId}","href":"/api-reference/subscribers/update-a-subscriber"},{"title":"Delete a subscriber","openapi":"DELETE /v2/subscribers/{subscriberId}","href":"/api-reference/subscribers/delete-a-subscriber"},{"title":"Search subscribers","openapi":"GET /v2/subscribers","href":"/api-reference/subscribers/search-subscribers"},{"title":"Bulk create subscribers","openapi":"POST /v1/subscribers/bulk","href":"/api-reference/subscribers/bulk-create-subscribers"}]},{"group":"Subscriptions","expanded":false,"pages":[{"title":"Retrieve subscriber subscriptions","openapi":"GET /v2/subscribers/{subscriberId}/subscriptions","href":"/api-reference/subscribers/retrieve-subscriber-subscriptions"}]},{"group":"Preferences","expanded":false,"pages":[{"title":"Retrieve subscriber preferences","openapi":"GET /v2/subscribers/{subscriberId}/preferences","href":"/api-reference/subscribers/retrieve-subscriber-preferences"},{"title":"Update subscriber preferences","openapi":"PATCH /v2/subscribers/{subscriberId}/preferences","href":"/api-reference/subscribers/update-subscriber-preferences"},{"title":"Bulk update subscriber preferences","openapi":"PATCH /v2/subscribers/{subscriberId}/preferences/bulk","href":"/api-reference/subscribers/bulk-update-subscriber-preferences"}]},{"group":"Credentials","expanded":false,"pages":[{"title":"Update provider credentials","openapi":"PUT /v1/subscribers/{subscriberId}/credentials","href":"/api-reference/subscribers/update-provider-credentials"},{"title":"Upsert provider credentials","openapi":"PATCH /v1/subscribers/{subscriberId}/credentials","href":"/api-reference/subscribers/upsert-provider-credentials"},{"title":"Delete provider credentials","openapi":"DELETE /v1/subscribers/{subscriberId}/credentials/{providerId}","href":"/api-reference/subscribers/delete-provider-credentials"}]},{"group":"Notification state","expanded":false,"pages":[{"title":"Retrieve subscriber notifications","openapi":"GET /v1/subscribers/{subscriberId}/notifications/feed","href":"/api-reference/subscribers/retrieve-subscriber-notifications"},{"title":"Update notifications state","openapi":"POST /v1/subscribers/{subscriberId}/messages/mark-as","href":"/api-reference/subscribers/update-notifications-state"},{"title":"Update all notifications state","openapi":"POST /v1/subscribers/{subscriberId}/messages/mark-all","href":"/api-reference/subscribers/update-all-notifications-state"},{"title":"Update subscriber online status","openapi":"PATCH /v1/subscribers/{subscriberId}/online-status","href":"/api-reference/subscribers/update-subscriber-online-status"},{"title":"Retrieve unseen notifications count","openapi":"GET /v1/subscribers/{subscriberId}/notifications/unseen","href":"/api-reference/subscribers/retrieve-unseen-notifications-count"},{"title":"Update notification action status","openapi":"POST /v1/subscribers/{subscriberId}/messages/{messageId}/actions/{type}","href":"/api-reference/subscribers/update-notification-action-status"}]}]},{"group":"Inbox","expanded":false,"pages":[{"group":"Counts","expanded":false,"pages":[{"title":"Retrieve subscriber notifications count","openapi":"GET /v2/subscribers/{subscriberId}/notifications/count","href":"/api-reference/subscribers/retrieve-subscriber-notifications-count"}]},{"group":"Read \u0026 seen","expanded":false,"pages":[{"title":"Mark a notification as read","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/read","href":"/api-reference/subscribers/mark-a-notification-as-read"},{"title":"Mark a notification as unread","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/unread","href":"/api-reference/subscribers/mark-a-notification-as-unread"},{"title":"Mark all notifications as read","openapi":"POST /v2/subscribers/{subscriberId}/notifications/read","href":"/api-reference/subscribers/mark-all-notifications-as-read"},{"title":"Mark notifications as seen","openapi":"POST /v2/subscribers/{subscriberId}/notifications/seen","href":"/api-reference/subscribers/mark-notifications-as-seen"}]},{"group":"Snooze","expanded":false,"pages":[{"title":"Snooze a notification","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/snooze","href":"/api-reference/subscribers/snooze-a-notification"},{"title":"Unsnooze a notification","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/unsnooze","href":"/api-reference/subscribers/unsnooze-a-notification"}]},{"group":"Archive","expanded":false,"pages":[{"title":"Archive a notification","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/archive","href":"/api-reference/subscribers/archive-a-notification"},{"title":"Unarchive a notification","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/unarchive","href":"/api-reference/subscribers/unarchive-a-notification"},{"title":"Archive all notifications","openapi":"POST /v2/subscribers/{subscriberId}/notifications/archive","href":"/api-reference/subscribers/archive-all-notifications"},{"title":"Archive all read notifications","openapi":"POST /v2/subscribers/{subscriberId}/notifications/read-archive","href":"/api-reference/subscribers/archive-all-read-notifications"}]},{"group":"Delete","expanded":false,"pages":[{"title":"Delete a notification","openapi":"DELETE /v2/subscribers/{subscriberId}/notifications/{notificationId}","href":"/api-reference/subscribers/delete-a-notification"},{"title":"Delete all notifications","openapi":"POST /v2/subscribers/{subscriberId}/notifications/delete","href":"/api-reference/subscribers/delete-all-notifications"}]},{"group":"Actions","expanded":false,"pages":[{"title":"Complete a notification action","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/actions/{actionType}/complete","href":"/api-reference/subscribers/complete-a-notification-action"},{"title":"Revert a notification action","openapi":"PATCH /v2/subscribers/{subscriberId}/notifications/{notificationId}/actions/{actionType}/revert","href":"/api-reference/subscribers/revert-a-notification-action"}]}]},{"group":"Topics","expanded":false,"pages":[{"title":"Topic schema","sidebarTitle":"Schema","href":"/api-reference/topics/topic-schema"},{"group":"Management","expanded":false,"pages":[{"title":"Create a topic","openapi":"POST /v2/topics","href":"/api-reference/topics/create-a-topic"},{"title":"Retrieve a topic","openapi":"GET /v2/topics/{topicKey}","href":"/api-reference/topics/retrieve-a-topic"},{"title":"Update a topic","openapi":"PATCH /v2/topics/{topicKey}","href":"/api-reference/topics/update-a-topic"},{"title":"Delete a topic","openapi":"DELETE /v2/topics/{topicKey}","href":"/api-reference/topics/delete-a-topic"},{"title":"List all topics","openapi":"GET /v2/topics","href":"/api-reference/topics/list-all-topics"}]},{"group":"Subscriptions","expanded":false,"pages":[{"title":"Create topic subscriptions","openapi":"POST /v2/topics/{topicKey}/subscriptions","href":"/api-reference/topics/create-topic-subscriptions"},{"title":"Delete topic subscriptions","openapi":"DELETE /v2/topics/{topicKey}/subscriptions","href":"/api-reference/topics/delete-topic-subscriptions"},{"title":"Update a topic subscription","openapi":"PATCH /v2/topics/{topicKey}/subscriptions/{identifier}","href":"/api-reference/topics/update-a-topic-subscription"},{"title":"List topic subscriptions","openapi":"GET /v2/topics/{topicKey}/subscriptions","href":"/api-reference/topics/list-topic-subscriptions"},{"title":"Check topic subscriber","openapi":"GET /v1/topics/{topicKey}/subscribers/{externalSubscriberId}","href":"/api-reference/topics/check-topic-subscriber"},{"title":"Retrieve a topic subscription","openapi":"GET /v2/topics/{topicKey}/subscriptions/{identifier}","href":"/api-reference/topics/retrieve-a-topic-subscription"}]}]},{"group":"Contexts","expanded":false,"pages":[{"title":"Context schema","sidebarTitle":"Schema","href":"/api-reference/contexts/context-schema"},{"title":"Create a context","openapi":"POST /v2/contexts","href":"/api-reference/contexts/create-a-context"},{"title":"Retrieve a context","openapi":"GET /v2/contexts/{type}/{id}","href":"/api-reference/contexts/retrieve-a-context"},{"title":"Update a context","openapi":"PATCH /v2/contexts/{type}/{id}","href":"/api-reference/contexts/update-a-context"},{"title":"Delete a context","openapi":"DELETE /v2/contexts/{type}/{id}","href":"/api-reference/contexts/delete-a-context"},{"title":"List all contexts","openapi":"GET /v2/contexts","href":"/api-reference/contexts/list-all-contexts"}]},{"group":"Channel Connections","expanded":false,"pages":[{"title":"Create a channel connection","openapi":"POST /v1/channel-connections","href":"/api-reference/channel-connections/create-a-channel-connection"},{"title":"Retrieve a channel connection","openapi":"GET /v1/channel-connections/{identifier}","href":"/api-reference/channel-connections/retrieve-a-channel-connection"},{"title":"Update a channel connection","openapi":"PATCH /v1/channel-connections/{identifier}","href":"/api-reference/channel-connections/update-a-channel-connection"},{"title":"Delete a channel connection","openapi":"DELETE /v1/channel-connections/{identifier}","href":"/api-reference/channel-connections/delete-a-channel-connection"},{"title":"List all channel connections","openapi":"GET /v1/channel-connections","href":"/api-reference/channel-connections/list-all-channel-connections"}]},{"group":"Channel Endpoints","expanded":false,"pages":[{"title":"Create a channel endpoint","openapi":"POST /v1/channel-endpoints","href":"/api-reference/channel-endpoints/create-a-channel-endpoint"},{"title":"Retrieve a channel endpoint","openapi":"GET /v1/channel-endpoints/{identifier}","description":"Retrieve a specific channel endpoint by its unique identifier.","href":"/api-reference/channel-endpoints/retrieve-a-channel-endpoint"},{"title":"Update a channel endpoint","openapi":"PATCH /v1/channel-endpoints/{identifier}","href":"/api-reference/channel-endpoints/update-a-channel-endpoint"},{"title":"Delete a channel endpoint","openapi":"DELETE /v1/channel-endpoints/{identifier}","description":"Delete a specific channel endpoint by its unique identifier.","href":"/api-reference/channel-endpoints/delete-a-channel-endpoint"},{"title":"List all channel endpoints","openapi":"GET /v1/channel-endpoints","href":"/api-reference/channel-endpoints/list-all-channel-endpoints"}]}]},{"group":"Workflows \u0026 content","icon":"git-branch","pages":[{"group":"Workflows","expanded":false,"pages":[{"title":"Workflow schema","sidebarTitle":"Schema","href":"/api-reference/workflows/workflow-schema"},{"title":"Create a workflow","openapi":"POST /v2/workflows","href":"/api-reference/workflows/create-a-workflow"},{"title":"Retrieve a workflow","openapi":"GET /v2/workflows/{workflowId}","href":"/api-reference/workflows/retrieve-a-workflow"},{"title":"Update a workflow","openapi":"PUT /v2/workflows/{workflowId}","href":"/api-reference/workflows/update-a-workflow"},{"title":"Delete a workflow","openapi":"DELETE /v2/workflows/{workflowId}","href":"/api-reference/workflows/delete-a-workflow"},{"title":"List all workflows","openapi":"GET /v2/workflows","href":"/api-reference/workflows/list-all-workflows"},{"title":"Sync a workflow","openapi":"PUT /v2/workflows/{workflowId}/sync","href":"/api-reference/workflows/sync-a-workflow"},{"title":"Retrieve workflow step","openapi":"GET /v2/workflows/{workflowId}/steps/{stepId}","href":"/api-reference/workflows/retrieve-workflow-step"},{"title":"Generate a step preview","openapi":"POST /v2/workflows/{workflowId}/step/{stepId}/preview","href":"/api-reference/workflows/generate-a-step-preview"}]},{"group":"Translations","expanded":false,"pages":[{"title":"Create a translation","openapi":"POST /v2/translations","href":"/api-reference/translations/create-a-translation"},{"title":"Retrieve a translation","openapi":"GET /v2/translations/{resourceType}/{resourceId}/{locale}","href":"/api-reference/translations/retrieve-a-translation"},{"title":"Delete a translation","openapi":"DELETE /v2/translations/{resourceType}/{resourceId}/{locale}","href":"/api-reference/translations/delete-a-translation"},{"title":"Retrieve a translation group","openapi":"GET /v2/translations/group/{resourceType}/{resourceId}","href":"/api-reference/translations/retrieve-a-translation-group"},{"title":"Delete a translation group","openapi":"DELETE /v2/translations/{resourceType}/{resourceId}","href":"/api-reference/translations/delete-a-translation-group"},{"title":"Import master translations JSON","openapi":"POST /v2/translations/master-json","href":"/api-reference/translations/import-master-translations-json"},{"title":"Retrieve master translations JSON","openapi":"GET /v2/translations/master-json","href":"/api-reference/translations/retrieve-master-translations-json"},{"title":"Upload master translations JSON file","openapi":"POST /v2/translations/master-json/upload","href":"/api-reference/translations/upload-master-translations-json-file"},{"title":"Upload translation files","openapi":"POST /v2/translations/upload","href":"/api-reference/translations/upload-translation-files"}]},{"group":"Layouts","expanded":false,"pages":[{"title":"Create a layout","openapi":"POST /v2/layouts","href":"/api-reference/layouts/create-a-layout"},{"title":"Delete a layout","openapi":"DELETE /v2/layouts/{layoutId}","href":"/api-reference/layouts/delete-a-layout"},{"title":"Duplicate a layout","openapi":"POST /v2/layouts/{layoutId}/duplicate","href":"/api-reference/layouts/duplicate-a-layout"},{"title":"Generate layout preview","openapi":"POST /v2/layouts/{layoutId}/preview","href":"/api-reference/layouts/generate-layout-preview"},{"title":"Get layout usage","openapi":"GET /v2/layouts/{layoutId}/usage","href":"/api-reference/layouts/get-layout-usage"},{"title":"List all layouts","openapi":"GET /v2/layouts","href":"/api-reference/layouts/list-all-layouts"},{"title":"Retrieve a layout","openapi":"GET /v2/layouts/{layoutId}","href":"/api-reference/layouts/retrieve-a-layout"},{"title":"Update a layout","openapi":"PUT /v2/layouts/{layoutId}","href":"/api-reference/layouts/update-a-layout"}]}]},{"group":"Platform \u0026 channels","icon":"settings","pages":[{"group":"Environments","expanded":false,"pages":[{"title":"Environment schema","sidebarTitle":"Schema","href":"/api-reference/environments/environment-schema"},{"title":"Create an environment","openapi":"POST /v1/environments","href":"/api-reference/environments/create-an-environment"},{"title":"Update an environment","openapi":"PUT /v1/environments/{environmentId}","href":"/api-reference/environments/update-an-environment"},{"title":"Delete an environment","openapi":"DELETE /v1/environments/{environmentId}","href":"/api-reference/environments/delete-an-environment"},{"title":"List all environments","openapi":"GET /v1/environments","href":"/api-reference/environments/list-all-environments"},{"title":"List environment tags","openapi":"GET /v2/environments/{environmentId}/tags","href":"/api-reference/environments/list-environment-tags"},{"title":"Compare resources between environments","openapi":"POST /v2/environments/{targetEnvironmentId}/diff","href":"/api-reference/environments/compare-resources-between-environments"},{"title":"Publish resources to target environment","openapi":"POST /v2/environments/{targetEnvironmentId}/publish","href":"/api-reference/environments/publish-resources-to-target-environment"}]},{"group":"Environment Variables","expanded":false,"pages":[{"title":"Environment variable schema","sidebarTitle":"Schema","href":"/api-reference/environment-variables/environment-variable-schema"},{"title":"Create a variable","openapi":"POST /v1/environment-variables","href":"/api-reference/environment-variables/create-a-variable"},{"title":"Retrieve a variable","openapi":"GET /v1/environment-variables/{variableKey}","href":"/api-reference/environment-variables/retrieve-a-variable"},{"title":"Update a variable","openapi":"PATCH /v1/environment-variables/{variableKey}","href":"/api-reference/environment-variables/update-a-variable"},{"title":"Delete a variable","openapi":"DELETE /v1/environment-variables/{variableKey}","href":"/api-reference/environment-variables/delete-a-variable"},{"title":"List all variables","openapi":"GET /v1/environment-variables","href":"/api-reference/environment-variables/list-all-variables"},{"title":"Retrieve a variable usage","openapi":"GET /v1/environment-variables/{variableKey}/usage","href":"/api-reference/environment-variables/retrieve-a-variable-usage"}]},{"group":"Integrations","expanded":false,"pages":[{"title":"Integration schema","sidebarTitle":"Schema","href":"/api-reference/integrations/integration-schema"},{"title":"Create an integration","openapi":"POST /v1/integrations","href":"/api-reference/integrations/create-an-integration"},{"title":"Update an integration","openapi":"PUT /v1/integrations/{integrationId}","href":"/api-reference/integrations/update-an-integration"},{"title":"Delete an integration","openapi":"DELETE /v1/integrations/{integrationId}","href":"/api-reference/integrations/delete-an-integration"},{"title":"List all integrations","openapi":"GET /v1/integrations","href":"/api-reference/integrations/list-all-integrations"},{"title":"List active integrations","openapi":"GET /v1/integrations/active","href":"/api-reference/integrations/list-active-integrations"},{"title":"Update integration as primary","openapi":"POST /v1/integrations/{integrationId}/set-primary","href":"/api-reference/integrations/update-integration-as-primary"},{"title":"Generate chat OAuth URL","openapi":"POST /v1/integrations/chat/oauth","href":"/api-reference/integrations/generate-chat-oauth-url"},{"title":"Auto-configure an integration for inbound webhooks","openapi":"POST /v1/integrations/{integrationId}/auto-configure","href":"/api-reference/integrations/auto-configure-an-integration-for-inbound-webhooks"}]}]}]},{"tab":"Resources","menu":[{"item":"Guides","pages":[{"title":"Guides","href":"/guides"}]},{"item":"Framework","pages":[{"title":"Framework","href":"/framework"}]},{"item":"Community","pages":[{"title":"Community","href":"/community"}]}],"pages":[{"title":"Resources","href":"/guides"}]}]},"title":"Update a channel endpoint - Novu","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-26-lDe7V.js","utils-CWQmgYtH.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-4-Aw3rSD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C2zjXYA5.js","snippetPresets-DFmpFA7C.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-CT9uE8Ip.js","ApiExamples-FJpQavWq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D_GvPF7k.js","shallow-Bs2ZB0NO.js","getApiPlaygroundDisplay-DCcqJJk-.js","CodeSnippet-DzDxawVe.js","CodeSnippets-aUr7fU-7.js","getPastedJson-Y1fKsj_I.js","icon-DI4zTsDr.js","MethodPill-C0nDlmSQ.js","DuplicateIcon-NUXbx2nQ.js","createIcon-BdTHrPAi.js","DynamicMarkdown-CtpgKJwj.js","SectionHeading-B3x35tOt.js","axios-vUo_bRtp.js","Markdown-3OmurJMP.js","clsx-DMKzROTp.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-1ms6tsT-.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Ke9xIMFx.js"]}