Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.
import { Novu } from "@novu/api";
const novu = new Novu({
secretKey: "YOUR_SECRET_KEY_HERE",
});
async function run() {
const result = await novu.agents.create({
name: "<value>",
identifier: "<value>",
}, "<value>");
console.log(result);
}
run();
using Novu;
using Novu.Models.Components;
var sdk = new NovuSDK(secretKey: "YOUR_SECRET_KEY_HERE");
var res = await sdk.Agents.CreateAsync(
novuAnalyticsSource: "<value>",
createAgentRequestDto: new CreateAgentRequestDto() {
Name = "<value>",
Identifier = "<value>",
}
);
// 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();
$createAgentRequestDto = new Components\CreateAgentRequestDto(
name: '<value>',
identifier: '<value>',
);
$response = $sdk->agents->create(
novuAnalyticsSource: '<value>',
createAgentRequestDto: $createAgentRequestDto
);
if ($response->agentResponseDto !== null) {
// handle response
}
from novu_py import Novu
with Novu(
secret_key="YOUR_SECRET_KEY_HERE",
) as novu:
res = novu.agents.create(novu_analytics_source="<value>", create_agent_request_dto={
"name": "<value>",
"identifier": "<value>",
})
# Handle response
print(res)
Required when not adopting an existing managed agent (i.e. when managedRuntime.externalAgentId is absent). Optional in adopt mode where the name is resolved from the provider.
Cloud only. true when the agent falls outside the organization plan agent limit (by creation order among active agents — inactive agents do not consume slots). Only plan limits produce this flag — system-capped organizations (enterprise/unlimited tiers) are never over-limit. Over-limit agents are still stored but will not respond to inbound messages until the plan is upgraded or older agents are deactivated.
import { Novu } from "@novu/api";
const novu = new Novu({
secretKey: "YOUR_SECRET_KEY_HERE",
});
async function run() {
const result = await novu.agents.create({
name: "<value>",
identifier: "<value>",
}, "<value>");
console.log(result);
}
run();
using Novu;
using Novu.Models.Components;
var sdk = new NovuSDK(secretKey: "YOUR_SECRET_KEY_HERE");
var res = await sdk.Agents.CreateAsync(
novuAnalyticsSource: "<value>",
createAgentRequestDto: new CreateAgentRequestDto() {
Name = "<value>",
Identifier = "<value>",
}
);
// 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();
$createAgentRequestDto = new Components\CreateAgentRequestDto(
name: '<value>',
identifier: '<value>',
);
$response = $sdk->agents->create(
novuAnalyticsSource: '<value>',
createAgentRequestDto: $createAgentRequestDto
);
if ($response->agentResponseDto !== null) {
// handle response
}
from novu_py import Novu
with Novu(
secret_key="YOUR_SECRET_KEY_HERE",
) as novu:
res = novu.agents.create(novu_analytics_source="<value>", create_agent_request_dto={
"name": "<value>",
"identifier": "<value>",
})
# 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":""},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"}},"buildId":"6aeaee1599f2540479a87725","clientVersion":"0.0.4087","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":"rbac-expansion","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":"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":"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":"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":"full-page-search","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":"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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","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:transparent!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 / 0.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 / 0.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/agents/create-an-agent","slug":"/api-reference/agents/create-an-agent","pageMetadata":{"title":"Create an agent","openapi":"POST /v1/agents","description":"Create an agent scoped to the current environment. The identifier must be unique per environment. Set `runtime` to `managed` and supply `managedRuntime` to provision a provider-hosted agent brain.","href":"/api-reference/agents/create-an-agent"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set \", _jsx(_components.code, {\n children: \"runtime\"\n }), \" to \", _jsx(_components.code, {\n children: \"managed\"\n }), \" and supply \", _jsx(_components.code, {\n children: \"managedRuntime\"\n }), \" to provision a provider-hosted agent brain.\"]\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create an agent","openapi":"POST /v1/agents","description":"Create an agent scoped to the current environment. The identifier must be unique per environment. Set `runtime` to `managed` and supply `managedRuntime` to provision a provider-hosted agent brain.","href":"/api-reference/agents/create-an-agent"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"AgentsController_createAgent","x-speakeasy-name-override":"create","x-speakeasy-group":"Agents","summary":"Create an agent","description":"Create an agent scoped to the current environment. The identifier must be unique per environment. Set `runtime` to `managed` and supply `managedRuntime` to provision a provider-hosted agent brain.","parameters":["93ba430e-a701-4ce8-ad60-71c50b4718e8","47fa14f0-9d2d-42b1-89d8-ff8da654b52c"],"requestBody":"5d56f670-9e3d-4a95-9348-8b6a1579d95d","responses":{"201":"94491a18-08b6-4eef-85cf-a1196fbce8cb","400":"6c78209d-2281-4a1c-9c20-9e06f07d1ba7","401":"3439a944-ad88-40a5-8bc9-0c09256b0fa0","403":"19a95775-ffdf-4249-98fd-bbc652c68455","404":"cad9fda3-cc9e-4f14-a598-a6d1b52a4087","405":"003f47ee-ccd7-40a5-b2f5-94715ac0a74b","409":"a4ab89e6-c41c-4212-a429-0e3123120af7","413":"5dbc5454-2d9b-4f48-b140-472ce9cdfcee","414":"2c65b1da-79ef-4dea-a76f-388d76f84ff9","415":"45f44f0f-e678-413c-a764-5210699ab31c","422":"62054b75-d395-47c9-ab7d-c407b01c9332","429":"676c83c1-b37a-45e0-86b5-29a6bc74a601","500":"de2bb5f9-f845-4661-b215-efe192cd8937","503":"3474609a-bc4b-4e6b-ae11-d47a681f8ab1"},"tags":["Agents"],"security":["fed088d9-e19d-4623-a64b-1a676c5ca284"],"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.Agents.Create(ctx, \"\u003cvalue>\", components.CreateAgentRequestDto{\n Name: \"\u003cvalue>\",\n Identifier: \"\u003cvalue>\",\n }, nil)\n if err != nil {\n log.Fatal(err)\n }\n if res.AgentResponseDto != nil {\n // handle response\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.agents.create({\n name: \"\u003cvalue>\",\n identifier: \"\u003cvalue>\",\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.Agents.CreateAsync(\n novuAnalyticsSource: \"\u003cvalue>\",\n createAgentRequestDto: new CreateAgentRequestDto() {\n Name = \"\u003cvalue>\",\n Identifier = \"\u003cvalue>\",\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$createAgentRequestDto = new Components\\CreateAgentRequestDto(\n name: '\u003cvalue>',\n identifier: '\u003cvalue>',\n);\n\n$response = $sdk->agents->create(\n novuAnalyticsSource: '\u003cvalue>',\n createAgentRequestDto: $createAgentRequestDto\n\n);\n\nif ($response->agentResponseDto !== 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.agents.create(novu_analytics_source=\"\u003cvalue>\", create_agent_request_dto={\n \"name\": \"\u003cvalue>\",\n \"identifier\": \"\u003cvalue>\",\n })\n\n # Handle response\n print(res)"}],"method":"post","type":"path","servers":["29cc13d7-64c7-40f9-8a35-9c01537b78f4","7588375a-aa7e-462d-a5bf-d94b8564f985"],"path":"/v1/agents","baseUrlOptions":["https://api.novu.co","https://eu.api.novu.co"],"title":"Create an agent","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.Agents.Create(ctx, \"\u003cvalue>\", components.CreateAgentRequestDto{\n Name: \"\u003cvalue>\",\n Identifier: \"\u003cvalue>\",\n }, nil)\n if err != nil {\n log.Fatal(err)\n }\n if res.AgentResponseDto != nil {\n // handle response\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.agents.create({\n name: \"\u003cvalue>\",\n identifier: \"\u003cvalue>\",\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.Agents.CreateAsync(\n novuAnalyticsSource: \"\u003cvalue>\",\n createAgentRequestDto: new CreateAgentRequestDto() {\n Name = \"\u003cvalue>\",\n Identifier = \"\u003cvalue>\",\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$createAgentRequestDto = new Components\\CreateAgentRequestDto(\n name: '\u003cvalue>',\n identifier: '\u003cvalue>',\n);\n\n$response = $sdk->agents->create(\n novuAnalyticsSource: '\u003cvalue>',\n createAgentRequestDto: $createAgentRequestDto\n\n);\n\nif ($response->agentResponseDto !== 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.agents.create(novu_analytics_source=\"\u003cvalue>\", create_agent_request_dto={\n \"name\": \"\u003cvalue>\",\n \"identifier\": \"\u003cvalue>\",\n })\n\n # Handle response\n print(res)"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.name":"\u003cstring>","body.identifier":"\u003cstring>","body.description":"\u003cstring>","body.active":true}]},"dependencies":{"parameters":{"93ba430e-a701-4ce8-ad60-71c50b4718e8":{"name":"Novu-Analytics-Source","required":true,"in":"header","schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}},"47fa14f0-9d2d-42b1-89d8-ff8da654b52c":{"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":{"name":{"type":"string","description":"Required when not adopting an existing managed agent (i.e. when managedRuntime.externalAgentId is absent). Optional in adopt mode where the name is resolved from the provider.","maxLength":60,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"identifier":{"type":"string","pattern":"SLUG_IDENTIFIER_REGEX","description":"Required when not adopting an existing managed agent. Auto-generated from the provider agent name when omitted in adopt mode.","isRequired":true,"uniqueKey":"identifier","typeLabel":"string"},"description":{"type":"string","uniqueKey":"description","typeLabel":"string"},"active":{"type":"boolean","default":true,"uniqueKey":"active","typeLabel":"boolean"},"runtime":{"type":"string","enum":["self-hosted","managed"],"uniqueKey":"runtime","typeLabel":"enum\u003cstring>"},"managedRuntime":{"type":"object","properties":{"providerId":{"enum":["anthropic","novu-anthropic","anthropic-aws"],"type":"string","isRequired":true,"uniqueKey":"managedRuntime.providerId","typeLabel":"enum\u003cstring>"},"integrationId":{"type":"string","description":"ID of an existing Novu integration (kind: \"agent\") that holds the provider API key and provisioned environment. Create the integration first via POST /integrations.","isRequired":true,"uniqueKey":"managedRuntime.integrationId","typeLabel":"string"},"externalAgentId":{"type":"string","description":"ID of an existing agent on the provider platform. When set, Novu adopts the agent instead of creating a new one.","uniqueKey":"managedRuntime.externalAgentId","typeLabel":"string"},"externalEnvironmentId":{"type":"string","description":"ID of an existing environment on the provider platform. When set, Novu adopts the environment.","uniqueKey":"managedRuntime.externalEnvironmentId","typeLabel":"string"},"model":{"type":"string","uniqueKey":"managedRuntime.model","typeLabel":"string"},"systemPrompt":{"type":"string","uniqueKey":"managedRuntime.systemPrompt","typeLabel":"string"},"tools":{"type":"array","items":{"type":"string","uniqueKey":"managedRuntime.tools.items.[INDEX]","typeLabel":"string"},"uniqueKey":"managedRuntime.tools","typeLabel":"string[]"},"mcpServers":{"type":"array","items":{"type":"string","uniqueKey":"managedRuntime.mcpServers.items.[INDEX]","typeLabel":"string"},"uniqueKey":"managedRuntime.mcpServers","typeLabel":"string[]"},"skills":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["anthropic","custom"],"isRequired":true,"uniqueKey":"managedRuntime.skills.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"skillId":{"type":"string","description":"Skill identifier, e.g. \"xlsx\" or \"skill_01XJ5...\"","isRequired":true,"uniqueKey":"managedRuntime.skills.items.[INDEX].skillId","typeLabel":"string"},"version":{"oneOf":[{"type":"object","description":"Version to pin. Omit for latest.","uniqueKey":"managedRuntime.skills.items.[INDEX].version.oneOf.0","typeLabel":"object"},{"type":"null","description":"Version to pin. Omit for latest.","uniqueKey":"managedRuntime.skills.items.[INDEX].version.oneOf.1","typeLabel":"null"}],"uniqueKey":"managedRuntime.skills.items.[INDEX].version","typeLabel":"object | null"}},"required":["type","skillId"],"uniqueKey":"managedRuntime.skills.items.[INDEX]","typeLabel":"object"},"uniqueKey":"managedRuntime.skills","typeLabel":"object[]"}},"required":["providerId","integrationId"],"uniqueKey":"managedRuntime","typeLabel":"object"}},"required":["name","identifier"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","identifier":"\u003cstring>","description":"\u003cstring>","active":true}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"94491a18-08b6-4eef-85cf-a1196fbce8cb":{"description":"Created","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":{"_id":{"type":"string","isRequired":true,"uniqueKey":"_id","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"identifier":{"type":"string","isRequired":true,"uniqueKey":"identifier","typeLabel":"string"},"behavior":{"type":"object","properties":{"acknowledgeOnReceived":{"type":"boolean","description":"Acknowledge incoming messages. On platforms that support a native typing indicator (e.g. Slack, WhatsApp, Microsoft Teams, Telegram), shows a \"Typing…\" indicator while the agent processes the message. On platforms that do not (e.g. Email), reacts with an \"eyes\" emoji to the first inbound message in a thread. Default: true","default":true,"uniqueKey":"behavior.acknowledgeOnReceived","typeLabel":"boolean"},"reactionOnResolved":{"oneOf":[{"type":"object","description":"Cross-platform emoji name for resolved conversations (e.g. \"check\", \"star\"). Set to null to disable. Default: \"check\"","default":"check","uniqueKey":"behavior.reactionOnResolved.oneOf.0","typeLabel":"object"},{"type":"null","description":"Cross-platform emoji name for resolved conversations (e.g. \"check\", \"star\"). Set to null to disable. Default: \"check\"","default":"check","uniqueKey":"behavior.reactionOnResolved.oneOf.1","typeLabel":"null"}],"uniqueKey":"behavior.reactionOnResolved","typeLabel":"object | null"},"subscriberAccess":{"enum":["open","restricted"],"type":"string","description":"Controls whether the agent accepts inbound messages from senders not yet linked to a subscriber, across all channels. \"open\" on managed agents auto-creates a lightweight subscriber so the agent can reply; on custom-code / self-hosted agents, the turn is forwarded to the bridge with a null subscriber. \"restricted\" rejects unknown senders with a managed denial reply (any runtime). Optional on update (partial PATCH). Persisted agents always have a value — managed create defaults to \"open\"; self-hosted create defaults to \"restricted\".","uniqueKey":"behavior.subscriberAccess","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"behavior","typeLabel":"object"},"active":{"type":"boolean","isRequired":true,"uniqueKey":"active","typeLabel":"boolean"},"_environmentId":{"type":"string","isRequired":true,"uniqueKey":"_environmentId","typeLabel":"string"},"_organizationId":{"type":"string","isRequired":true,"uniqueKey":"_organizationId","typeLabel":"string"},"createdAt":{"type":"string","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string"},"updatedAt":{"type":"string","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string"},"description":{"type":"string","uniqueKey":"description","typeLabel":"string"},"bridgeUrl":{"type":"string","description":"Production bridge URL","uniqueKey":"bridgeUrl","typeLabel":"string"},"devBridgeUrl":{"type":"string","description":"Development bridge URL (set by npx novu dev)","uniqueKey":"devBridgeUrl","typeLabel":"string"},"devBridgeActive":{"type":"boolean","description":"Whether the dev bridge override is active","uniqueKey":"devBridgeActive","typeLabel":"boolean"},"runtime":{"type":"string","enum":["self-hosted","managed"],"description":"Whether the agent brain is self-hosted (bridge) or managed by a third-party provider","uniqueKey":"runtime","typeLabel":"enum\u003cstring>"},"visibility":{"type":"string","enum":["public","private"],"description":"Discovery scope of the agent. Always `public` today; reserved for the upcoming private-agents feature.","uniqueKey":"visibility","typeLabel":"enum\u003cstring>"},"managedRuntime":{"type":"object","description":"Present when runtime is \"managed\". Contains provider and external identifiers.","required":["providerId","integrationId","externalAgentId"],"properties":{"providerId":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.providerId","typeLabel":"string"},"integrationId":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.integrationId","typeLabel":"string"},"externalAgentId":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.externalAgentId","typeLabel":"string"},"externalEnvironmentId":{"type":"string","description":"The provider-side environment that hosts this agent. Hydrated from the linked integration credentials. Absent when the integration has not been provisioned.","uniqueKey":"managedRuntime.externalEnvironmentId","typeLabel":"string"},"externalWorkspaceId":{"type":"string","description":"The provider-side workspace id used in console deep links. Defaults to `'default'` (the auto-created Default Workspace). Hydrated from the linked integration credentials.","uniqueKey":"managedRuntime.externalWorkspaceId","typeLabel":"string"},"consoleUrl":{"type":"string","description":"Deep link to the agent in the provider console (e.g. platform.claude.com).","uniqueKey":"managedRuntime.consoleUrl","typeLabel":"string"},"tools":{"description":"Live tools enabled on the managed-runtime provider for this agent. Sourced from the provider on read; omitted when the provider is temporarily unreachable.","type":"array","items":{"type":"object","properties":{"externalId":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.tools.items.[INDEX].externalId","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.tools.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["builtin","custom"],"isRequired":true,"uniqueKey":"managedRuntime.tools.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"description":{"type":"string","uniqueKey":"managedRuntime.tools.items.[INDEX].description","typeLabel":"string"}},"required":["externalId","name","type"],"uniqueKey":"managedRuntime.tools.items.[INDEX]","typeLabel":"object"},"uniqueKey":"managedRuntime.tools","typeLabel":"object[]"},"mcpServers":{"description":"MCP servers enabled on this agent, projected onto the runtime catalog `{ externalId, name, url }` shape. Mongo is the source of truth; the projection matches what the provider sees. Omitted when the provider read fails after a managed-agent write.","type":"array","items":{"type":"object","properties":{"externalId":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.mcpServers.items.[INDEX].externalId","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.mcpServers.items.[INDEX].name","typeLabel":"string"},"url":{"type":"string","isRequired":true,"uniqueKey":"managedRuntime.mcpServers.items.[INDEX].url","typeLabel":"string"}},"required":["externalId","name","url"],"uniqueKey":"managedRuntime.mcpServers.items.[INDEX]","typeLabel":"object"},"uniqueKey":"managedRuntime.mcpServers","typeLabel":"object[]"},"systemPrompt":{"type":"string","description":"System prompt used when invoking the agent.","uniqueKey":"managedRuntime.systemPrompt","typeLabel":"string"}},"uniqueKey":"managedRuntime","typeLabel":"object"},"createdBy":{"type":"string","description":"Mongo user id of the user who created the agent","uniqueKey":"createdBy","typeLabel":"string"},"integrations":{"type":"array","items":{"type":"object","properties":{"integrationId":{"type":"string","description":"Integration document id.","isRequired":true,"uniqueKey":"integrations.items.[INDEX].integrationId","typeLabel":"string"},"providerId":{"type":"string","isRequired":true,"uniqueKey":"integrations.items.[INDEX].providerId","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"integrations.items.[INDEX].name","typeLabel":"string"},"identifier":{"type":"string","isRequired":true,"uniqueKey":"integrations.items.[INDEX].identifier","typeLabel":"string"},"active":{"type":"boolean","isRequired":true,"uniqueKey":"integrations.items.[INDEX].active","typeLabel":"boolean"},"channel":{"type":"string","description":"Channel type through which the message is sent","enum":["in_app","email","sms","chat","push","tool"],"uniqueKey":"integrations.items.[INDEX].channel","typeLabel":"enum\u003cstring>"}},"required":["integrationId","providerId","name","identifier","active"],"uniqueKey":"integrations.items.[INDEX]","typeLabel":"object"},"uniqueKey":"integrations","typeLabel":"object[]"},"exceedsPlanLimit":{"type":"boolean","description":"Cloud only. `true` when the agent falls outside the organization plan agent limit (by creation order among active agents — inactive agents do not consume slots). Only plan limits produce this flag — system-capped organizations (enterprise/unlimited tiers) are never over-limit. Over-limit agents are still stored but will not respond to inbound messages until the plan is upgraded or older agents are deactivated.","uniqueKey":"exceedsPlanLimit","typeLabel":"boolean"}},"required":["_id","name","identifier","behavior","active","_environmentId","_organizationId","createdAt","updatedAt"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_id":"\u003cstring>","name":"\u003cstring>","identifier":"\u003cstring>","behavior":{"acknowledgeOnReceived":true,"reactionOnResolved":"check","subscriberAccess":"open"},"active":true,"_environmentId":"\u003cstring>","_organizationId":"\u003cstring>","createdAt":"\u003cstring>","updatedAt":"\u003cstring>","description":"\u003cstring>","bridgeUrl":"\u003cstring>","devBridgeUrl":"\u003cstring>","devBridgeActive":true,"runtime":"self-hosted","visibility":"public","managedRuntime":{"providerId":"\u003cstring>","integrationId":"\u003cstring>","externalAgentId":"\u003cstring>","externalEnvironmentId":"\u003cstring>","externalWorkspaceId":"\u003cstring>","consoleUrl":"\u003cstring>","tools":[{"externalId":"\u003cstring>","name":"\u003cstring>","type":"builtin","description":"\u003cstring>"}],"mcpServers":[{"externalId":"\u003cstring>","name":"\u003cstring>","url":"\u003cstring>"}],"systemPrompt":"\u003cstring>"},"createdBy":"\u003cstring>","integrations":[{"integrationId":"\u003cstring>","providerId":"\u003cstring>","name":"\u003cstring>","identifier":"\u003cstring>","active":true,"channel":"in_app"}],"exceedsPlanLimit":true}}},"exampleType":"generated"}},"exampleType":"generated"},"6c78209d-2281-4a1c-9c20-9e06f07d1ba7":{"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"},"3439a944-ad88-40a5-8bc9-0c09256b0fa0":{"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"},"19a95775-ffdf-4249-98fd-bbc652c68455":{"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"},"cad9fda3-cc9e-4f14-a598-a6d1b52a4087":{"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"},"003f47ee-ccd7-40a5-b2f5-94715ac0a74b":{"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"},"a4ab89e6-c41c-4212-a429-0e3123120af7":{"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"},"5dbc5454-2d9b-4f48-b140-472ce9cdfcee":{"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"},"2c65b1da-79ef-4dea-a76f-388d76f84ff9":{"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"},"45f44f0f-e678-413c-a764-5210699ab31c":{"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"},"62054b75-d395-47c9-ab7d-c407b01c9332":{"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"},"676c83c1-b37a-45e0-86b5-29a6bc74a601":{"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"},"de2bb5f9-f845-4661-b215-efe192cd8937":{"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"},"3474609a-bc4b-4e6b-ae11-d47a681f8ab1":{"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":{"fed088d9-e19d-4623-a64b-1a676c5ca284":{"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"}]},"originalFileLocation":"https://spec.speakeasy.com/novu/novu/json-development-with-code-samples"},"subdomain":"novu-c5de82d9","siteName":"Novu","title":"Create an agent - Novu","contextualStarterQuestions":[{"_id":"6a5fb5b4ca56eab56888d479","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"How do I create an agent?","status":"active","generatedBy":"contextual","path":"api-reference/agents/create-an-agent","createdAt":"2026-07-21T18:08:52.867Z","updatedAt":"2026-07-21T18:08:52.867Z","__v":0},{"_id":"6a5fb5b4ca56eab56888d47b","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"How do I make agent IDs unique?","status":"active","generatedBy":"contextual","path":"api-reference/agents/create-an-agent","createdAt":"2026-07-21T18:08:52.867Z","updatedAt":"2026-07-21T18:08:52.867Z","__v":0},{"_id":"6a5fb5b4ca56eab56888d47a","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"What is a managed runtime?","status":"active","generatedBy":"contextual","path":"api-reference/agents/create-an-agent","createdAt":"2026-07-21T18:08:52.867Z","updatedAt":"2026-07-21T18:08:52.867Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-21T18:08:24.106Z","originalFileLocation":"api-reference/agents/create-an-agent.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=\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.\">\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=\"Create an agent - Novu\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Novu\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.novu.co/api-reference/agents/create-an-agent\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://novu-c5de82d9.mintlify.site/_mintlify/api/og/v2?division=Management\u0026amp;title=Create+an+agent\u0026amp;description=Create+an+agent+scoped+to+the+current+environment.+The+identifier+must+be+unique+per+environment.+Set+%60runtime%60+to+%60managed%60+and+supply+%60managedRuntime%60+to+prov\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=777adb07797dda1a6c80fe9625034c121a76369b8a9c1a1c02538c5308a4b0e9\">\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=\"Create an agent - Novu\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://novu-c5de82d9.mintlify.site/_mintlify/api/og/v2?division=Management\u0026amp;title=Create+an+agent\u0026amp;description=Create+an+agent+scoped+to+the+current+environment.+The+identifier+must+be+unique+per+environment.+Set+%60runtime%60+to+%60managed%60+and+supply+%60managedRuntime%60+to+prov\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=777adb07797dda1a6c80fe9625034c121a76369b8a9c1a1c02538c5308a4b0e9\">\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/agents/create-an-agent\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/agents/create-an-agent.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/agents/create-an-agent#webpage\",\"url\":\"https://docs.novu.co/api-reference/agents/create-an-agent\",\"name\":\"Create an agent\",\"description\":\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.\",\"dateModified\":\"2026-07-21T18:08:24.106Z\",\"isPartOf\":{\"@id\":\"https://docs.novu.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.novu.co/api-reference/agents/create-an-agent#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.novu.co/api-reference/agents/create-an-agent#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Agents\",\"item\":\"https://docs.novu.co/api-reference/agents/agent-schema\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create an agent\",\"item\":\"https://docs.novu.co/api-reference/agents/create-an-agent\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.novu.co/api-reference/agents/create-an-agent#apireference\",\"headline\":\"Create an agent\",\"name\":\"Create an agent\",\"description\":\"Create an agent scoped to the current environment. The identifier must be unique per environment. Set runtime to managed and supply managedRuntime to provision a provider-hosted agent brain.\",\"url\":\"https://docs.novu.co/api-reference/agents/create-an-agent\",\"mainEntityOfPage\":{\"@id\":\"https://docs.novu.co/api-reference/agents/create-an-agent#webpage\"},\"dateModified\":\"2026-07-21T18:08:24.106Z\",\"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","description":"Reference the Novu agent schema used in API requests and responses. Review fields, data types, and object structure for this resource.","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","description":"Retrieve a cursor-paginated list of agents for the current environment. Use **after**, **before**, **limit**, **orderBy**, and **orderDirection** query parameters.","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}","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}","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"}]}]},"basePath":"","title":"Create an agent - Novu","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-Dr40SSJq.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}