Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.
Novu’s Typescript SDK provides simple, yet comprehensive notification management, and delivery capabilities through multiple channels that you can implement using code. It integrates seamlessly with your Node.js, Bun, Deno, and Cloudflare Workers applications.Explore the source code on GitHub
import { Novu } from "@novu/api";const novu = new Novu({ secretKey: "<YOUR_SECRET_KEY_HERE>", });async function run() { const result = await novu.trigger({ to: { subscriberId: "subscriber_unique_identifier", firstName: "Albert", lastName: "Einstein", email: "[email protected]", phone: "+1234567890", }, workflowId: "workflow_identifier", payload: { comment_id: "string", post: { text: "string", }, }, overrides: { email: { bcc: "[email protected]", }, }, });}run();
import { Novu } from "@novu/api";const novu = new Novu({ secretKey: "<YOUR_SECRET_KEY_HERE>", serverURL: "https://eu.api.novu.co",});async function run() { const result = await novu.trigger({ to: { "subscriberId": "subscriber_unique_identifier", "firstName": "Albert", "lastName": "Einstein", "email": "[email protected]", "phone": "+1234567890", }, workflowId: "workflow_identifier", payload: { "comment_id": "string", "post": { "text": "string", }, }, overrides: { "email": { "bcc": "[email protected]" }, }, }); // Handle the result console.log(result);}run();
Point the SDK at your self-hosted API by passing serverURL. Do not append /v1 - the SDK adds the API version automatically.
import { Novu } from "@novu/api";const novu = new Novu({ secretKey: "<YOUR_SECRET_KEY_HERE>", serverURL: "https://your-novu-api-host", // e.g. http://localhost:3000});
If you use Novu Cloud (US default), omit serverURL entirely - the SDK points to https://api.novu.co.
{"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:[email protected]"},{"label":"Changelog","href":"https://go.novu.co/changelog?utm_source=docs_footer"},{"label":"Roadmap","href":"https://roadmap.novu.co/roadmap"},{"label":"Contact Sales","href":"https://novu.co/contact-us"},{"label":"Read llms.txt","href":"/llms.txt"}]}]},"seo":{"metatags":{"og:type":"website","twitter:card":"summary_large_image"},"indexing":"all"},"icons":{"library":"lucide"},"integrations":{"gtm":{"tagId":"GTM-KXMC4XP2"},"plausible":{"domain":"docs.novu.co"}},"contextual":{"options":["copy","view","cursor","claude","chatgpt","mcp","add-mcp"],"display":"header"},"thumbnails":{"appearance":"dark","background":"https://mintcdn.com/novu-c5de82d9/vncv7ET97M5-dM6d/images/og/og-image-docs-v2.jpg?fit=max\u0026auto=format\u0026n=vncv7ET97M5-dM6d\u0026q=85\u0026s=26b59f5c597b5b1bea44cbc57cad5e3a","fonts":{"family":"Inter"}},"interaction":{"drilldown":true},"styling":{"latex":false},"navigation":{"global":{"anchors":[]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"novu-c5de82d9","hasAudioNarration":false,"actualSubdomain":"novu-c5de82d9","customDomains":["docs.novu.co"],"gitSource":{"type":"github","owner":"novuhq","repo":"novu","deployBranch":"next","contentDirectory":"docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"collectionId":"895c4c58-49cd-44b8-a796-8bbc729cda9d","liveDeploymentHistoryId":"6adb1d781a579503f22922f0","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adb1d781a579503f22922f0"},"feedback":{"thumbs":true,"edits":true,"issues":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"}},"buildId":"6adb1d781a579503f22922f0","clientVersion":"0.0.3966","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":"[email protected]","showHelpButton":true}},"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":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@media (min-width:1024px){#sidebar-content{width:16rem;min-width:16rem;max-width:16rem}}body:has(#home-content) nav[aria-label=Main] a[aria-current=location]{background:0 0!important;color:rgb(75 85 99)}html.dark body:has(#home-content) nav[aria-label=Main] a[aria-current=location]{color:rgb(156 163 175)}body:has(#home-content) nav[aria-label=Main] a[aria-current=location]:hover{background:rgb(3 7 18/.03)!important;color:rgb(17 24 39)}html.dark body:has(#home-content) nav[aria-label=Main] a[aria-current=location]:hover{background:rgb(255 255 255/.03)!important;color:rgb(229 231 235)}#home-content .hero-cards{margin-top:1.5rem}#home-content .card [data-component-part=card-image]{width:107.5%;max-width:none;margin:-3.75% -3.75% 0}"}],"page":{"pagePath":"platform/sdks/server/typescript","slug":"/platform/sdks/server/typescript","pageMetadata":{"title":"Typescript","description":"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.","href":"/platform/sdks/server/typescript"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tab,Tabs}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Novu’s Typescript SDK provides simple, yet comprehensive notification management, and delivery capabilities through multiple channels that you can implement using code. It integrates seamlessly with your Node.js, Bun, Deno, and Cloudflare Workers applications.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.a,{href:`https://github.com/novuhq/novu-ts`,children:`Explore the source code on GitHub`})}),`\n`,_jsx(Heading,{level:`2`,id:`installation`,children:`Installation`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`NPM`,id:`npm`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`npm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` add`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` @novu/api`})]}),`\n`]})})})}),_jsx(Tab,{title:`PNPM`,id:`pnpm`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`pnpm`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` add`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` @novu/api`})]}),`\n`]})})})}),_jsx(Tab,{title:`Yarn`,id:`yarn`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`6`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`yarn`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` add`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` @novu/api`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` zod@^3`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`## Note that Yarn does not install peer dependencies automatically. You will need`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`## to install zod as shown above.`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})})}),_jsx(Tab,{title:`Bun`,id:`bun`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`bun`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` add`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` @novu/api`})]}),`\n`]})})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`usage`,children:`Usage`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`US Region`,id:`us-region`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`29`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`29`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@novu/api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` novu`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({ `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`secretKey:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"\u003cYOUR_SECRET_KEY_HERE>\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, });`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` result`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`trigger`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` to:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` subscriberId:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"subscriber_unique_identifier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` firstName:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Albert\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` lastName:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Einstein\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` email:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"[email protected]\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` phone:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"+1234567890\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` workflowId:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_identifier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` payload:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` comment_id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` post:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` text:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` overrides:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` email:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` bcc:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"[email protected]\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`]})})})}),_jsx(Tab,{title:`EU Region`,id:`eu-region`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`35`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`35`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@novu/api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` novu`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` secretKey:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"\u003cYOUR_SECRET_KEY_HERE>\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` serverURL:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://eu.api.novu.co\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` result`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`trigger`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` to:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"subscriberId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"subscriber_unique_identifier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"firstName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Albert\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"lastName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Einstein\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"email\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"[email protected]\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"phone\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"+1234567890\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` workflowId:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_identifier\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` payload:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"comment_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"post\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"string\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` overrides:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"email\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"bcc\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"[email protected]\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // Handle the result`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`result`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`]})})})}),_jsxs(Tab,{title:`Self-hosted`,id:`self-hosted`,children:[_jsxs(_components.p,{children:[`Point the SDK at your self-hosted API by passing `,_jsx(_components.code,{children:`serverURL`}),`. Do not append `,_jsx(_components.code,{children:`/v1`}),` - the SDK adds the API version automatically.`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`6`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@novu/api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` novu`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` secretKey:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"\u003cYOUR_SECRET_KEY_HERE>\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` serverURL:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://your-novu-api-host\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// e.g. http://localhost:3000`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})}),_jsxs(_components.p,{children:[`If you use Novu Cloud (US default), omit `,_jsx(_components.code,{children:`serverURL`}),` entirely - the SDK points to `,_jsx(_components.code,{children:`https://api.novu.co`}),`.`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`sending-custom-header`,children:`Sending custom header`}),`\n`,_jsxs(_components.p,{children:[`To send custom headers, you can use the `,_jsx(_components.code,{children:`HTTPClient`}),` class. Read more on how to configure custom `,_jsx(_components.a,{href:`https://github.com/novuhq/novu-ts?tab=readme-ov-file#custom-http-client`,children:`http client`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`27`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`27`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@novu/api\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`HTTPClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"@novu/api/lib/http\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` httpClient`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` HTTPClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`httpClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`addHook`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"beforeRequest\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, (`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`request`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` nextRequest`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Request`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`request`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` nextRequest`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`headers`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`set`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"x-custom-header\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"custom-header-value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` nextRequest`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` novu`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` httpClient`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` secretKey:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"SECRET_KEY_VALUE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` serverURL:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://eu.api.novu.co\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`novu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`trigger`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` workflowId:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"WORKFLOW_ID_VALUE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` to:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` subscriberId:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"subscriberId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` payload:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` message:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Hello, world!\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Typescript","description":"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.","href":"/platform/sdks/server/typescript"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Installation","slug":"installation","depth":2,"children":[]},{"title":"Usage","slug":"usage","depth":2,"children":[]},{"title":"Sending custom header","slug":"sending-custom-header","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"novu-c5de82d9","siteName":"Novu","title":"Typescript - Novu","contextualStarterQuestions":[{"_id":"6a5dcce73ffa45d74b2fd77a","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"How do I trigger notifications?","status":"active","generatedBy":"contextual","path":"platform/sdks/server/typescript","createdAt":"2026-07-20T07:23:19.122Z","updatedAt":"2026-07-20T07:23:19.122Z","__v":0},{"_id":"6a5dcce73ffa45d74b2fd77b","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"What regions are supported?","status":"active","generatedBy":"contextual","path":"platform/sdks/server/typescript","createdAt":"2026-07-20T07:23:19.122Z","updatedAt":"2026-07-20T07:23:19.122Z","__v":0},{"_id":"6a5dcce73ffa45d74b2fd779","deploymentId":"6a3b890b89d2acbacf3fa68a","questionText":"How do I install the SDK?","status":"active","generatedBy":"contextual","path":"platform/sdks/server/typescript","createdAt":"2026-07-20T07:23:19.121Z","updatedAt":"2026-07-20T07:23:19.121Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-20T07:23:09.550Z","originalFileLocation":"platform/sdks/server/typescript.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=\"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\">\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=\"Typescript - Novu\">\u003cmeta data-mint-head property=\"og:description\" content=\"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Novu\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.novu.co/platform/sdks/server/typescript\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://novu-c5de82d9.mintlify.app/_mintlify/api/og/v2?division=Server-Side\u0026amp;title=Typescript\u0026amp;description=Connect+a+Node.js+or+TypeScript+application+to+Novu+with+the+official+server+SDK+to+trigger+workflows%2C+manage+subscribers%2C+and+send+notifications.\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=262b3bc9b0ce6ac2884554479664a2500e5ffcdeb0c457847955dbc2e5d3b560\">\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=\"Typescript - Novu\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://novu-c5de82d9.mintlify.app/_mintlify/api/og/v2?division=Server-Side\u0026amp;title=Typescript\u0026amp;description=Connect+a+Node.js+or+TypeScript+application+to+Novu+with+the+official+server+SDK+to+trigger+workflows%2C+manage+subscribers%2C+and+send+notifications.\u0026amp;theme=1ee19fc55ed421ff750b0681\u0026amp;signature=262b3bc9b0ce6ac2884554479664a2500e5ffcdeb0c457847955dbc2e5d3b560\">\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/platform/sdks/server/typescript\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/platform/sdks/server/typescript.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/platform/sdks/server/typescript#webpage\",\"url\":\"https://docs.novu.co/platform/sdks/server/typescript\",\"name\":\"Typescript\",\"description\":\"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\",\"dateModified\":\"2026-07-20T07:23:09.550Z\",\"isPartOf\":{\"@id\":\"https://docs.novu.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.novu.co/platform/sdks/server/typescript#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.novu.co/platform/sdks/server/typescript#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"SDKs\",\"item\":\"https://docs.novu.co/platform/sdks\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Server-Side\",\"item\":\"https://docs.novu.co/platform/sdks/server\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Typescript\",\"item\":\"https://docs.novu.co/platform/sdks/server/typescript\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.novu.co/platform/sdks/server/typescript#article\",\"headline\":\"Typescript\",\"name\":\"Typescript\",\"description\":\"Connect a Node.js or TypeScript application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications.\",\"url\":\"https://docs.novu.co/platform/sdks/server/typescript\",\"mainEntityOfPage\":{\"@id\":\"https://docs.novu.co/platform/sdks/server/typescript#webpage\"},\"dateModified\":\"2026-07-20T07:23:09.550Z\",\"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","groups":[{"group":"Getting Started","boost":3,"pages":[{"title":"Novu Platform - Open-Source Notification Infrastructure","sidebarTitle":"Overview","href":"/platform"},{"title":"What is Novu?","href":"/platform/what-is-novu"},{"title":"How Novu Works - Architecture and Notification Flow","sidebarTitle":"How Novu Works","href":"/platform/how-novu-works"},{"group":"Novu for your team","pages":[{"title":"Novu for Developers and Engineers","sidebarTitle":"Developers","href":"/platform/novu-for/developers"},{"title":"Novu for Product Teams","sidebarTitle":"Product","href":"/platform/novu-for/product"}]},{"group":"Core Concepts","pages":[{"title":"Notification event","href":"/platform/concepts/notification-event"},{"title":"How do workflows work in Novu?","sidebarTitle":"Workflows","href":"/platform/concepts/workflows"},{"title":"How do subscribers work in Novu?","sidebarTitle":"Subscribers","href":"/platform/concepts/subscribers"},{"title":"Topics","href":"/platform/concepts/topics"},{"title":"Integrations","href":"/platform/concepts/integrations"},{"title":"Trigger","href":"/platform/concepts/trigger"},{"title":"Preferences","href":"/platform/concepts/preferences"},{"title":"How do contexts work in Novu?","sidebarTitle":"Contexts","href":"/platform/concepts/contexts"},{"title":"Multi-tenancy","href":"/platform/concepts/tenants"}]},{"group":"Quickstart","pages":[{"title":"Next.js In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Next.js","href":"/platform/quickstart/nextjs"},{"title":"React In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"React","href":"/platform/quickstart/react"},{"title":"Remix In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Remix","href":"/platform/quickstart/remix"},{"title":"Angular In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Angular","href":"/platform/quickstart/angular"},{"title":"Vue In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Vue","href":"/platform/quickstart/vue"},{"title":"Nuxt In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Nuxt","href":"/platform/quickstart/nuxt"},{"title":"Vanilla JS In-App Notifications Quickstart - Novu Inbox","sidebarTitle":"Vanilla JS","href":"/platform/quickstart/vanilla-js"}]}]},{"group":"Integrate \u003cInbox />","icon":"inbox","pages":[{"title":"Novu Inbox - In-App Notification Component for React","sidebarTitle":"Introduction to Inbox","href":"/platform/inbox"},{"title":"Set up the Inbox","href":"/platform/inbox/setup-inbox"},{"group":"Features","pages":[{"title":"Snooze","href":"/platform/inbox/features/snooze"},{"title":"Schedule","href":"/platform/inbox/features/schedule"}]},{"group":"Customize and Configure","pages":[{"title":"Styling and Theming","href":"/platform/inbox/configuration/styling"},{"title":"Tabs","href":"/platform/inbox/configuration/tabs"},{"title":"Preferences","href":"/platform/inbox/configuration/preferences"},{"title":"Data Object","href":"/platform/inbox/configuration/data-object"},{"title":"Inbox with Context","href":"/platform/inbox/configuration/inbox-with-context"},{"title":"Icons","href":"/platform/inbox/configuration/icons"}]},{"group":"Advanced Customization","pages":[{"title":"Customize Bell Icon","href":"/platform/inbox/advanced-customization/customize-bell"},{"title":"Customize Popover","href":"/platform/inbox/advanced-customization/customize-popover"},{"title":"Customize Notification Items","href":"/platform/inbox/advanced-customization/customize-notification-items"},{"title":"Conditional Display","href":"/platform/inbox/advanced-customization/conditional-display"},{"title":"HTML in Notifications","href":"/platform/inbox/advanced-customization/html-in-notifications"},{"title":"Notification Click Behavior","href":"/platform/inbox/advanced-customization/notification-click-behavior"}]},{"group":"Advanced Features","pages":[{"title":"Localization","href":"/platform/inbox/advanced-features/localization"},{"title":"Multi-tenancy","href":"/platform/inbox/advanced-features/multi-tenancy"}]},{"title":"Headless Mode","href":"/platform/inbox/headless-mode"},{"title":"Prepare for Production","href":"/platform/inbox/prepare-for-production"},{"title":"Migrate to the New Inbox","href":"/platform/inbox/migration-guide"}]},{"group":"Integrate \u003cSubscription />","icon":"bell-ring","pages":[{"title":"Introduction","href":"/platform/subscription"},{"title":"Setup the Subscription","href":"/platform/subscription/quickstart"},{"title":"Manage topic subscriptions","href":"/platform/subscription/manage-topic-subscriptions"},{"title":"Customize and configure","href":"/platform/subscription/customize-and-configure"},{"title":"Headless hooks","href":"/platform/subscription/headless-hooks"}]},{"group":"Build a Workflow","icon":"git-branch","pages":[{"title":"Notification Workflows in Novu","sidebarTitle":"Workflows","href":"/platform/workflow"},{"title":"Create a Workflow","href":"/platform/workflow/create-a-workflow"},{"title":"Configure Workflow","href":"/platform/workflow/configure-workflow"},{"group":"Add And Configure Steps","root":{"title":"Add and Configure Steps","href":"/platform/workflow/add-and-configure-steps"},"pages":[{"group":"Configure Action Steps","pages":[{"title":"Delay Step","href":"/platform/workflow/add-and-configure-steps/configure-action-steps/delay"},{"title":"Digest Step","href":"/platform/workflow/add-and-configure-steps/configure-action-steps/digest"},{"title":"Throttle Step","href":"/platform/workflow/add-and-configure-steps/configure-action-steps/throttle"},{"title":"HTTP Step","href":"/platform/workflow/add-and-configure-steps/configure-action-steps/http-step"}]},{"title":"Step Conditions","href":"/platform/workflow/add-and-configure-steps/step-conditions"},{"title":"Code Steps","href":"/platform/workflow/add-and-configure-steps/code-steps"}]},{"group":"Add Notification Content","pages":[{"title":"Channels Template Editors","href":"/platform/workflow/add-notification-content/channels-template-editors"},{"title":"Personalize Content","href":"/platform/workflow/add-notification-content/personalize-content"}]},{"title":"Trigger Workflow","href":"/platform/workflow/trigger-workflow"},{"title":"Monitor and Debug Workflow","href":"/platform/workflow/monitor-and-debug-workflow"},{"title":"Usage","href":"/platform/workflow/usage"},{"group":"Advanced Features","pages":[{"title":"Translations","href":"/platform/workflow/advanced-features/translations"},{"group":"Contexts","pages":[{"title":"Manage contexts","href":"/platform/workflow/advanced-features/contexts/manage-contexts"},{"title":"Applying context","href":"/platform/workflow/advanced-features/contexts/contexts-in-workflows"}]}]}]},{"group":"Integrate Channels Providers","icon":"plug-zap","pages":[{"title":"Notification Channel Providers and Integrations","sidebarTitle":"Overview","href":"/platform/integrations"},{"title":"Integration conditions","href":"/platform/integrations/integration-conditions"},{"title":"Demo Integrations","href":"/platform/integrations/demo-integration"},{"group":"Chat","root":{"title":"Chat","href":"/platform/integrations/chat"},"pages":[{"title":"How to Write Chat Templates in Novu","sidebarTitle":"Writing Chat Template","href":"/platform/integrations/chat/writing-chat-template"},{"title":"Discord Chat Integration with Novu","sidebarTitle":"Discord","href":"/platform/integrations/chat/discord"},{"title":"Google Chat Integration with Novu","sidebarTitle":"Google Chat","href":"/platform/integrations/chat/google-chat"},{"title":"LINE","href":"/platform/integrations/chat/line"},{"title":"Mattermost Chat Integration with Novu","sidebarTitle":"Mattermost","href":"/platform/integrations/chat/mattermost"},{"group":"MS Teams","pages":[{"title":"MS Teams Chat Integration with Novu","sidebarTitle":"MS Teams","href":"/platform/integrations/chat/ms-teams"},{"title":"Set up the Microsoft Teams bot","sidebarTitle":"Teams Azure setup","href":"/platform/integrations/chat/ms-teams-azure-setup"},{"title":"Connect Microsoft Teams tenants and destinations","sidebarTitle":"Teams tenant connect","href":"/platform/integrations/chat/ms-teams-connect"},{"title":"Microsoft Teams Workflows (webhook)","sidebarTitle":"Teams workflows","href":"/platform/integrations/chat/ms-teams-workflows"}]},{"title":"Slack Chat Integration with Novu","sidebarTitle":"Slack","href":"/platform/integrations/chat/slack"},{"title":"Webex Messaging Chat Integration with Novu","sidebarTitle":"Webex Messaging","href":"/platform/integrations/chat/webex-messaging"},{"title":"Telegram","href":"/platform/integrations/chat/telegram"},{"title":"WhatsApp Business Chat Integration with Novu","sidebarTitle":"WhatsApp Business","href":"/platform/integrations/chat/whats-app"},{"title":"Zulip Chat Integration with Novu","sidebarTitle":"Zulip","href":"/platform/integrations/chat/zulip"}]},{"group":"Email","root":{"title":"E-mail","href":"/platform/integrations/email"},"pages":[{"title":"SendGrid Email Integration with Novu","sidebarTitle":"SendGrid","href":"/platform/integrations/email/sendgrid"},{"title":"Amazon SES Email Integration with Novu","sidebarTitle":"Amazon SES","href":"/platform/integrations/email/amazon-ses"},{"title":"Resend Email Integration with Novu","sidebarTitle":"Resend","href":"/platform/integrations/email/resend"},{"title":"Postmark Email Integration with Novu","sidebarTitle":"Postmark","href":"/platform/integrations/email/postmark"},{"title":"Brevo Email Integration with Novu","sidebarTitle":"Brevo","href":"/platform/integrations/email/brevo"},{"title":"Sinch Mailgun Email Integration with Novu","sidebarTitle":"Sinch Mailgun","href":"/platform/integrations/email/mailgun"},{"title":"Mailjet Email Integration with Novu","sidebarTitle":"Mailjet","href":"/platform/integrations/email/mailjet"},{"title":"Sparkpost Email Integration with Novu","sidebarTitle":"Sparkpost","href":"/platform/integrations/email/sparkpost"},{"title":"Mandrill Email Integration with Novu","sidebarTitle":"Mandrill","href":"/platform/integrations/email/mandrill"},{"title":"Outlook 365 Email Integration with Novu","sidebarTitle":"Outlook 365","href":"/platform/integrations/email/outlook365"},{"title":"Infobip Email Integration with Novu","sidebarTitle":"Infobip","href":"/platform/integrations/email/infobip"},{"title":"Braze Email Integration with Novu","sidebarTitle":"Braze","href":"/platform/integrations/email/braze"},{"title":"MailerSend Email Integration with Novu","sidebarTitle":"MailerSend","href":"/platform/integrations/email/mailersend"},{"title":"Mailtrap Email Integration with Novu","sidebarTitle":"Mailtrap","href":"/platform/integrations/email/mailtrap"},{"title":"Netcore Email Integration with Novu","sidebarTitle":"Netcore","href":"/platform/integrations/email/netcore"},{"title":"Plunk Email Integration with Novu","sidebarTitle":"Plunk","href":"/platform/integrations/email/plunk"},{"title":"Anypost","href":"/platform/integrations/email/anypost"},{"title":"Email Webhook Email Integration with Novu","sidebarTitle":"Email Webhook","href":"/platform/integrations/email/webhook"},{"title":"Custom SMTP Email Integration with Novu","sidebarTitle":"Custom SMTP","href":"/platform/integrations/email/custom-smtp"},{"title":"How to Write Email Templates in Novu","sidebarTitle":"Writing Email Template","href":"/platform/integrations/email/writing-email-template"},{"group":"Activity Tracking","pages":[{"group":"Manual Configuration","pages":[{"title":"Amazon SES","href":"/platform/integrations/email/activity-tracking/manual-configuration/ses"},{"title":"Mailgun","href":"/platform/integrations/email/activity-tracking/manual-configuration/mailgun"},{"title":"Resend","href":"/platform/integrations/email/activity-tracking/manual-configuration/resend"},{"title":"SendGrid","href":"/platform/integrations/email/activity-tracking/manual-configuration/sendgrid"},{"title":"Anypost","href":"/platform/integrations/email/activity-tracking/manual-configuration/anypost"}]}]}]},{"group":"Push","root":{"title":"Push","href":"/platform/integrations/push"},"pages":[{"title":"FCM Push Integration with Novu","sidebarTitle":"FCM","href":"/platform/integrations/push/fcm"},{"title":"Expo Push Push Integration with Novu","sidebarTitle":"Expo Push","href":"/platform/integrations/push/expo-push"},{"title":"APNS Push Integration with Novu","sidebarTitle":"APNS","href":"/platform/integrations/push/apns"},{"title":"OneSignal Push Integration with Novu","sidebarTitle":"OneSignal","href":"/platform/integrations/push/onesignal"},{"title":"Push Webhook Push Integration with Novu","sidebarTitle":"Push Webhook","href":"/platform/integrations/push/push-webhook"},{"title":"Pusher Beams Push Integration with Novu","sidebarTitle":"Pusher Beams","href":"/platform/integrations/push/pusher-beams"},{"title":"Pushpad Push Integration with Novu","sidebarTitle":"Pushpad","href":"/platform/integrations/push/pushpad"},{"title":"Activity Tracking","href":"/platform/integrations/push/push-activity-tracking"}]},{"group":"Sms","root":{"title":"SMS","href":"/platform/integrations/sms"},"pages":[{"title":"Twilio SMS Integration with Novu","sidebarTitle":"Twilio","href":"/platform/integrations/sms/twilio"},{"title":"AWS SNS SMS Integration with Novu","sidebarTitle":"AWS SNS","href":"/platform/integrations/sms/aws-sns"},{"title":"Infobip SMS Integration with Novu","sidebarTitle":"Infobip - SMS","href":"/platform/integrations/sms/infobip"},{"title":"Sinch SMS Integration with Novu","sidebarTitle":"Sinch","href":"/platform/integrations/sms/sinch"},{"title":"Nexmo SMS Integration with Novu","sidebarTitle":"Nexmo","href":"/platform/integrations/sms/nexmo"},{"title":"MessageBird SMS Integration with Novu","sidebarTitle":"MessageBird","href":"/platform/integrations/sms/messagebird"},{"title":"Telnyx SMS Integration with Novu","sidebarTitle":"Telnyx","href":"/platform/integrations/sms/telnyx"},{"title":"CM.com SMS Integration with Novu","sidebarTitle":"CM.com","href":"/platform/integrations/sms/cm-com"},{"title":"Plivo SMS Integration with Novu","sidebarTitle":"Plivo","href":"/platform/integrations/sms/plivo"},{"title":"Bandwidth SMS Integration with Novu","sidebarTitle":"Bandwidth","href":"/platform/integrations/sms/bandwidth"},{"title":"RingCentral SMS Integration with Novu","sidebarTitle":"RingCentral","href":"/platform/integrations/sms/ring-central"},{"title":"Azure SMS SMS Integration with Novu","sidebarTitle":"Azure SMS","href":"/platform/integrations/sms/azure"},{"title":"Clicksend SMS Integration with Novu","sidebarTitle":"Clicksend","href":"/platform/integrations/sms/clicksend"},{"title":"Brevo SMS Integration with Novu","sidebarTitle":"Brevo - SMS","href":"/platform/integrations/sms/brevo"},{"title":"Clickatell SMS Integration with Novu","sidebarTitle":"Clickatell","href":"/platform/integrations/sms/clickatell"},{"title":"BulkSMS SMS Integration with Novu","sidebarTitle":"BulkSMS","href":"/platform/integrations/sms/bulk-sms"},{"title":"SMS77 SMS Integration with Novu","sidebarTitle":"SMS77","href":"/platform/integrations/sms/sms77"},{"title":"Africa's Talking SMS Integration with Novu","sidebarTitle":"Africa's Talking","href":"/platform/integrations/sms/africas-talking"},{"title":"Unifonic SMS Integration with Novu","sidebarTitle":"Unifonic","href":"/platform/integrations/sms/unifonic"},{"title":"Gupshup SMS Integration with Novu","sidebarTitle":"Gupshup","href":"/platform/integrations/sms/gupshup"},{"title":"Termii SMS Integration with Novu","sidebarTitle":"Termii","href":"/platform/integrations/sms/termii"},{"title":"Kudosity SMS Integration with Novu","sidebarTitle":"Kudosity","href":"/platform/integrations/sms/kudosity"},{"title":"Sendchamp SMS Integration with Novu","sidebarTitle":"Sendchamp","href":"/platform/integrations/sms/sendchamp"},{"title":"SimpleTexting SMS Integration with Novu","sidebarTitle":"SimpleTexting","href":"/platform/integrations/sms/simpletexting"},{"title":"46elks SMS Integration with Novu","sidebarTitle":"46elks","href":"/platform/integrations/sms/46elks"},{"title":"Firetext SMS Integration with Novu","sidebarTitle":"Firetext","href":"/platform/integrations/sms/firetext"},{"title":"SMS Central SMS Integration with Novu","sidebarTitle":"SMS Central","href":"/platform/integrations/sms/sms-central"},{"title":"Kannel SMS Integration with Novu","sidebarTitle":"Kannel","href":"/platform/integrations/sms/kannel"},{"title":"Maqsam SMS Integration with Novu","sidebarTitle":"Maqsam","href":"/platform/integrations/sms/maqsam"},{"title":"Mobishastra SMS Integration with Novu","sidebarTitle":"Mobishastra","href":"/platform/integrations/sms/mobishastra"},{"title":"Afro Message SMS Integration with Novu","sidebarTitle":"Afro Message","href":"/platform/integrations/sms/afro-message"},{"title":"smsmode SMS Integration with Novu","sidebarTitle":"smsmode","href":"/platform/integrations/sms/smsmode"},{"title":"iSend SMS Integration with Novu","sidebarTitle":"iSend SMS","href":"/platform/integrations/sms/isend-sms"},{"title":"iSendPro SMS Integration with Novu","sidebarTitle":"iSendPro","href":"/platform/integrations/sms/isendpro"},{"title":"iMedia SMS Integration with Novu","sidebarTitle":"iMedia","href":"/platform/integrations/sms/imedia"},{"title":"Eazy SMS Integration with Novu","sidebarTitle":"Eazy","href":"/platform/integrations/sms/eazy"},{"title":"Ruach SMS Integration with Novu","sidebarTitle":"Ruach SMS","href":"/platform/integrations/sms/ruach-sms"},{"title":"SMS Webhook SMS Integration with Novu","sidebarTitle":"SMS Webhook","href":"/platform/integrations/sms/sms-webhook"}]},{"group":"Tool","pages":[{"title":"PagerDuty Tool Integration with Novu","sidebarTitle":"PagerDuty","href":"/platform/integrations/tool/pagerduty"},{"title":"Opsgenie Tool Integration with Novu","sidebarTitle":"Opsgenie","href":"/platform/integrations/tool/opsgenie"},{"title":"Grafana Tool Integration with Novu","sidebarTitle":"Grafana","href":"/platform/integrations/tool/grafana"},{"title":"Tool Webhook Tool Integration with Novu","sidebarTitle":"Tool Webhook","href":"/platform/integrations/tool/webhook"}]},{"title":"Trigger Overrides","href":"/platform/integrations/trigger-overrides"}]},{"group":"SDKs","icon":"code","pages":[{"title":"Novu SDKs for server, web, and mobile apps","sidebarTitle":"Overview","href":"/platform/sdks"},{"group":"@novu/react","pages":[{"title":"@novu/react","href":"/platform/sdks/react"},{"group":"Hooks","pages":[{"title":"NovuProvider","href":"/platform/sdks/react/hooks/novu-provider"},{"title":"Subscription","href":"/platform/sdks/react/hooks/subscription"},{"title":"useWebChat","tag":"Beta","href":"/platform/sdks/react/hooks/use-web-chat"},{"title":"useCounts","href":"/platform/sdks/react/hooks/use-counts"},{"title":"useNotifications","href":"/platform/sdks/react/hooks/use-notifications"},{"title":"useNovu","href":"/platform/sdks/react/hooks/use-novu"},{"title":"usePreferences","href":"/platform/sdks/react/hooks/use-preferences"},{"title":"useSchedule","href":"/platform/sdks/react/hooks/use-schedule"}]},{"title":"Changelog","href":"/platform/sdks/react/changelog"}]},{"title":"@novu/js","href":"/platform/sdks/javascript"},{"group":"@novu/react-native","root":{"title":"Quickstart","href":"/platform/sdks/react-native"},"pages":[{"title":"Quickstart","href":"/platform/sdks/react-native"},{"group":"Hooks","pages":[{"title":"NovuProvider","href":"/platform/sdks/react-native/hooks/novu-provider"},{"title":"useNovu","href":"/platform/sdks/react-native/hooks/use-novu"},{"title":"useNotifications","href":"/platform/sdks/react-native/hooks/use-notifications"},{"title":"useCounts","href":"/platform/sdks/react-native/hooks/use-counts"},{"title":"usePreferences","href":"/platform/sdks/react-native/hooks/use-preferences"},{"title":"useSchedule","href":"/platform/sdks/react-native/hooks/use-schedule"}]}]},{"group":"Server-Side","root":{"title":"Server Side","description":"Explore Novu's comprehensive collection of server-side SDKs for seamless notification integration across multiple programming languages","href":"/platform/sdks/server"},"pages":[{"title":"Typescript","href":"/platform/sdks/server/typescript"},{"title":"Python","description":"Connect a Python application to Novu with the official server SDK to trigger workflows, manage subscribers, and send notifications from Python.","href":"/platform/sdks/server/python"},{"title":"Go SDK","href":"/platform/sdks/server/go"},{"title":"PHP SDK","href":"/platform/sdks/server/php"},{"title":".NET","href":"/platform/sdks/server/dotnet"},{"title":"Java","href":"/platform/sdks/server/java"},{"title":"Kotlin","href":"/platform/sdks/server/kotlin"},{"title":"Laravel","href":"/platform/sdks/server/laravel"},{"title":"Ruby","href":"/platform/sdks/server/ruby"}]}]},{"group":"Developer","icon":"terminal","pages":[{"title":"API keys","href":"/platform/developer/api-keys"},{"title":"Environments","href":"/platform/developer/environments"},{"title":"Environment Variables","href":"/platform/developer/environment-variables"},{"title":"Limits","href":"/platform/developer/limits"},{"title":"Delivery Retry Policy for Channels, Providers, and Steps","sidebarTitle":"Retry policy","href":"/platform/developer/delivery-retries"},{"group":"Inbound email","pages":[{"title":"Inbound Email","sidebarTitle":"Overview","href":"/platform/inbound-email/overview"}]},{"group":"Webhooks","pages":[{"title":"Webhooks","href":"/platform/developer/webhooks/webhooks"},{"title":"Event types","href":"/platform/developer/webhooks/event-types"},{"title":"Webhook connectors","href":"/platform/developer/webhooks/connectors"}]}]},{"group":"Account","icon":"building-2","pages":[{"title":"Authentication","href":"/platform/account/authentication"},{"title":"Organizations","href":"/platform/account/organizations"},{"title":"Roles and permissions","href":"/platform/account/roles-and-permissions"},{"title":"Team members","href":"/platform/account/manage-members"},{"title":"Billing","href":"/platform/account/billing"},{"title":"SAML SSO \u0026 SCIM","href":"/platform/account/sso"},{"group":"SSO providers","pages":[{"title":"Okta Workforce SSO","sidebarTitle":"Okta Workforce","href":"/platform/account/sso/okta"},{"title":"Microsoft Entra ID SSO","sidebarTitle":"Microsoft Entra ID","href":"/platform/account/sso/microsoft-entra"},{"title":"Google Workspace SSO","sidebarTitle":"Google Workspace","href":"/platform/account/sso/google-workspace"},{"title":"Custom SAML SSO","sidebarTitle":"Custom SAML","href":"/platform/account/sso/custom-saml"},{"title":"OpenID Connect SSO","sidebarTitle":"OpenID Connect","href":"/platform/account/sso/oidc"}]},{"group":"Directory sync","pages":[{"title":"Directory sync","href":"/platform/account/directory-sync"},{"title":"Okta directory sync","sidebarTitle":"Okta","href":"/platform/account/directory-sync/okta"},{"title":"Microsoft Entra ID directory sync","sidebarTitle":"Microsoft Entra ID","href":"/platform/account/directory-sync/microsoft-entra"},{"title":"Google Workspace directory sync","sidebarTitle":"Google Workspace","href":"/platform/account/directory-sync/google-workspace"},{"title":"Custom SCIM directory sync","sidebarTitle":"Custom SCIM","href":"/platform/account/directory-sync/custom-scim"}]}]},{"group":"Build with AI","icon":"sparkles","pages":[{"title":"Novu MCP Server","href":"/platform/build-with-ai/mcp"},{"title":"Agent Skills","href":"/platform/build-with-ai/skills"},{"title":"Agent Toolkit","href":"/platform/build-with-ai/agent-toolkit"}]},{"group":"Additional Resources","icon":"book-open","pages":[{"title":"Glossary","href":"/platform/additional-resources/glossary"},{"title":"Common errors","href":"/platform/additional-resources/errors"},{"title":"Security and Compliance","href":"/platform/additional-resources/security"},{"title":"v0.x Documentation","href":"/platform/additional-resources/legacy-documentation"}]}]},{"tab":"Agent Connect","pages":[{"title":"Agent Connect","href":"/agents"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference"}]},{"tab":"Resources","menu":[{"item":"Guides","pages":[{"title":"Guides","href":"/guides"}]},{"item":"Framework","pages":[{"title":"Framework","href":"/framework"}]},{"item":"Community","pages":[{"title":"Community","href":"/community"}]}],"pages":[{"title":"Resources","href":"/guides"}]}]},"title":"Typescript - Novu","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":[],"chunks":[]}