Webhook delivery is at-least-once: Nomos guarantees every event reaches your endpoint, but the same event can arrive more than once and not always in order. Build your handler around three rules:
Slow responses fail. Nomos waits 30 seconds for a 2xx. Hand long work to a background queue and acknowledge immediately.
Duplicates can happen. The same event id can arrive more than once, so make your handler idempotent: store processed IDs and skip them on repeat deliveries.
Order is not guaranteed.subscription.confirmed may land before subscription.created. Process events independently and fetch the resource when you need current state.
Any response other than 2xx counts as a failure, including 4xx, and so does a timeout or a connection error. A failed delivery is retried with exponential backoff: 12 attempts in total over roughly 34 hours, after which the delivery is dropped. Nomos never disables an endpoint because of failures; deliveries stop only when you deactivate it.
Retry
Delay after the previous attempt
1
1 minute
2
2 minutes
3
4 minutes
4
8 minutes
5
16 minutes
6
32 minutes
7
64 minutes
8
128 minutes
9
256 minutes
10
512 minutes
11
1024 minutes
Return a 2xx for events you receive but don’t act on, such as a subscription
your CRM has no record of. Any other status is retried.
Every event Nomos sends is stored. To inspect a delivery after the fact, retrieve it by id with Retrieve an event. The response uses the same envelope as the webhook payload.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Nomos","colors":{"primary":"#1b1915","light":"#ffffff","dark":"#1b1915"},"logo":{"light":"https://mintcdn.com/riverslate/0nQqndf6SGR4MtUC/logo/light.svg?fit=max\u0026auto=format\u0026n=0nQqndf6SGR4MtUC\u0026q=85\u0026s=99c5d32286bf07989f99539ad1584d34","dark":"https://mintcdn.com/riverslate/0nQqndf6SGR4MtUC/logo/dark.svg?fit=max\u0026auto=format\u0026n=0nQqndf6SGR4MtUC\u0026q=85\u0026s=1e24faf333cc5cbbaa6454764020bc7d"},"favicon":"https://mintcdn.com/riverslate/i0UKnKz5dNnV7CMC/favicon.ico?fit=max\u0026auto=format\u0026n=i0UKnKz5dNnV7CMC\u0026q=85\u0026s=019f4931cf3d704bd7a11ab89eec374e","api":{"openapi":["openapi/openapi.chucky.json"]},"appearance":{"default":"light"},"background":{"color":{"light":"#f6f3f0","dark":"#21262c"}},"navbar":{"links":[{"href":"https://dashboard.nomos.energy","label":"Dashboard"}],"primary":{"type":"button","label":"Book Demo","href":"https://nomos.energy/demo"}},"footer":{"socials":{"website":"https://nomos.energy","linkedin":"https://www.linkedin.com/company/nomos-energy"}},"fonts":{"family":"Soehne","source":"https://qnsvr1iaztsgci9a.public.blob.vercel-storage.com/soehne-buch-d177Pah3KmnkO2UpYz4Ru0Yx4QcPU8.woff2","format":"woff2"},"contextual":{"options":["copy","view","claude","chatgpt","cursor",{"title":"Get Support","description":"Email our team about this page","icon":"life-ring","href":{"base":"mailto:support@nomos.energy","query":[{"key":"subject","value":"Docs question"},{"key":"body","value":"Page: $path\n\n"}]}}],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"riverslate","hasAudioNarration":false,"actualSubdomain":"riverslate","customDomains":["docs.nomos.energy"],"gitSource":{"type":"github","owner":"nomos-energy","repo":"monorepo","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae4bddef2f7375d4fd960ea","collectionId":"ad23bb35-034c-46aa-b6ca-c1e650c42327","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae4bddef2f7375d4fd960ea"},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6ae4bddef2f7375d4fd960ea","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":323},{"language":"default","tag":"Subscriptions","count":24},{"language":"default","tag":"Webhooks","count":23},{"language":"default","tag":"Invoices","count":20},{"language":"default","tag":"Usage","count":19},{"language":"default","tag":"Documentation","count":16},{"language":"default","tag":"Leads","count":16},{"language":"default","tag":"Plans","count":16},{"language":"default","tag":"Authentication","count":15},{"language":"default","tag":"Customers","count":12}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".light #assistant-entry,.light #search-bar-entry,.light .navbar-link a,.light button[aria-label=\"Toggle dark mode\"]{background-color:#ebe8e3!important}.light #assistant-entry:hover,.light #search-bar-entry:hover,.light .navbar-link a:hover,.light button[aria-label=\"Toggle dark mode\"]:hover{background-color:#e2ded9!important}.light #navbar>div.bg-background-light,.light #page-context-menu button,.light #pagination>a,.light .card,.light [data-component-part=version-select-content],.light [role=menu][aria-labelledby^=page-context-menu],.light details.accordion,.light details.expandable{background-color:#fdfbfa}.dark #navbar>div.bg-background-light{background-color:#000}.dark #background-color{background-color:#0a0a0a}.dark #page-context-menu button,.dark #pagination>a,.dark [role=menu][aria-labelledby^=page-context-menu]{background-color:#21262c}#page-context-menu-button span{display:none}#page-context-menu{min-width:0;align-items:stretch}body:has(.is-home-page) #page-context-menu,body:has(.is-home-page) #pagination{display:none!important}.light div.bg-background-light:has(>div>.tryit-button){background-color:#fdfbfa}td code,th code{white-space:nowrap}@font-face{font-family:\"Soehne\";src:url(/fonts/soehne-kraftig.woff2) format(\"woff2\");font-weight:500 700;font-style:normal;font-display:swap}#navbar img[alt=\"dark logo\"],#navbar img[alt=\"light logo\"],#navbar img[src*=logo]{height:1.25rem;width:auto}h1,h2,h3,h4{font-weight:500!important}#navbar nav ul li a,.nav-tabs-item{font-weight:400!important}.nav-tabs-item{text-shadow:none!important}"}],"page":{"pagePath":"webhooks/retries","slug":"/webhooks/retries","pageMetadata":{"title":"Retries","description":"Handle webhook failures with exponential backoff.","href":"/webhooks/retries"},"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: \"Handle webhook failures with exponential backoff.\"\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`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Table,Tip}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Webhook delivery is at-least-once: Nomos guarantees every event reaches your endpoint, but the same event can arrive more than once and not always in order. Build your handler around three rules:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Slow responses fail.`}),` Nomos waits 30 seconds for a `,_jsx(_components.code,{children:`2xx`}),`. Hand long work to a background queue and acknowledge immediately.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Duplicates can happen.`}),` The same event `,_jsx(_components.code,{children:`id`}),` can arrive more than once, so make your handler idempotent: store processed IDs and skip them on repeat deliveries.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Order is not guaranteed.`}),` `,_jsx(_components.code,{children:`subscription.confirmed`}),` may land before `,_jsx(_components.code,{children:`subscription.created`}),`. Process events independently and fetch the resource when you need current state.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`retry-schedule`,children:`Retry schedule`}),`\n`,_jsxs(_components.p,{children:[`Any response other than `,_jsx(_components.code,{children:`2xx`}),` counts as a failure, including `,_jsx(_components.code,{children:`4xx`}),`, and so does a timeout or a connection error. A failed delivery is retried with exponential backoff: 12 attempts in total over roughly 34 hours, after which the delivery is dropped. Nomos never disables an endpoint because of failures; deliveries stop only when you deactivate it.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Retry`}),_jsx(_components.th,{children:`Delay after the previous attempt`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`1`}),_jsx(_components.td,{children:`1 minute`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`2`}),_jsx(_components.td,{children:`2 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`3`}),_jsx(_components.td,{children:`4 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`4`}),_jsx(_components.td,{children:`8 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`5`}),_jsx(_components.td,{children:`16 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`6`}),_jsx(_components.td,{children:`32 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`7`}),_jsx(_components.td,{children:`64 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`8`}),_jsx(_components.td,{children:`128 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`9`}),_jsx(_components.td,{children:`256 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`10`}),_jsx(_components.td,{children:`512 minutes`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`11`}),_jsx(_components.td,{children:`1024 minutes`})]})]})]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Return a `,_jsx(_components.code,{children:`2xx`}),` for events you receive but don’t act on, such as a subscription\nyour CRM has no record of. Any other status is retried.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`looking-up-past-events`,children:`Looking up past events`}),`\n`,_jsxs(_components.p,{children:[`Every event Nomos sends is stored. To inspect a delivery after the fact, retrieve it by `,_jsx(_components.code,{children:`id`}),` with `,_jsx(_components.a,{href:`/api-reference/events/retrieve-an-event`,children:`Retrieve an event`}),`. The response uses the same envelope as the webhook payload.`]})]})}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":"Retries","description":"Handle webhook failures with exponential backoff.","href":"/webhooks/retries"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Retry schedule","slug":"retry-schedule","depth":2,"children":[]},{"title":"Looking up past events","slug":"looking-up-past-events","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"riverslate","siteName":"Nomos","title":"Retries - Nomos","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-26T13:29:57.061Z","originalFileLocation":"webhooks/retries.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=\"light\"}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=\"Handle webhook failures with exponential backoff.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Nomos\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_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/riverslate/iILQM7kXCjcV9kRT/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Retries - Nomos\">\u003cmeta data-mint-head property=\"og:description\" content=\"Handle webhook failures with exponential backoff.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Nomos\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.nomos.energy/webhooks/retries\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://riverslate.mintlify.app/_mintlify/api/og/v2?division=+\u0026amp;title=Retries\u0026amp;description=Handle+webhook+failures+with+exponential+backoff.\u0026amp;theme=5668da0c231285124c856495\u0026amp;signature=51707c6f9ad2bac546bbb1a4d653aee27d6c65ab65ca8488b120199569e86755\">\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=\"Retries - Nomos\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Handle webhook failures with exponential backoff.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://riverslate.mintlify.app/_mintlify/api/og/v2?division=+\u0026amp;title=Retries\u0026amp;description=Handle+webhook+failures+with+exponential+backoff.\u0026amp;theme=5668da0c231285124c856495\u0026amp;signature=51707c6f9ad2bac546bbb1a4d653aee27d6c65ab65ca8488b120199569e86755\">\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/riverslate/iILQM7kXCjcV9kRT/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Nomos\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1b1915\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.nomos.energy/webhooks/retries\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/webhooks/retries.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.nomos.energy/#organization\",\"name\":\"Nomos\",\"url\":\"https://docs.nomos.energy\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/riverslate/0nQqndf6SGR4MtUC/logo/light.svg?fit=max\u0026auto=format\u0026n=0nQqndf6SGR4MtUC\u0026q=85\u0026s=99c5d32286bf07989f99539ad1584d34\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.nomos.energy#website\",\"name\":\"Nomos\",\"url\":\"https://docs.nomos.energy\",\"publisher\":{\"@id\":\"https://docs.nomos.energy/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.nomos.energy/webhooks/retries#webpage\",\"url\":\"https://docs.nomos.energy/webhooks/retries\",\"name\":\"Retries\",\"description\":\"Handle webhook failures with exponential backoff.\",\"dateModified\":\"2026-10-26T13:29:57.061Z\",\"isPartOf\":{\"@id\":\"https://docs.nomos.energy#website\"},\"breadcrumb\":{\"@id\":\"https://docs.nomos.energy/webhooks/retries#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.nomos.energy/webhooks/retries#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\" \",\"item\":\"https://docs.nomos.energy/webhooks/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Retries\",\"item\":\"https://docs.nomos.energy/webhooks/retries\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.nomos.energy/webhooks/retries#article\",\"headline\":\"Retries\",\"name\":\"Retries\",\"description\":\"Handle webhook failures with exponential backoff.\",\"url\":\"https://docs.nomos.energy/webhooks/retries\",\"mainEntityOfPage\":{\"@id\":\"https://docs.nomos.energy/webhooks/retries#webpage\"},\"dateModified\":\"2026-10-26T13:29:57.061Z\",\"publisher\":{\"@id\":\"https://docs.nomos.energy/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.nomos.energy#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Nomos\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Nomos","nav":{"global":null,"tabs":[{"tab":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/home"}]},{"tab":"API Reference","icon":"code","versions":[{"version":"2026-09-08.gauss","default":true,"groups":[{"group":" ","pages":[{"title":"API Reference","sidebarTitle":"Introduction","href":"/api-references/introduction"},{"title":"Authentication","href":"/api-references/authentication"},{"title":"Versioning","href":"/api-references/versioning"},{"title":"Pagination","href":"/api-references/pagination"},{"title":"Filtering","href":"/api-references/filtering"},{"title":"Errors","href":"/api-references/errors"},{"title":"Changelog","href":"/api-references/changelog"}]},{"group":"API Reference","pages":[{"group":"Plans","pages":[{"title":"Calculate a quote","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /plans/{id}/quote","href":"/api-reference/plans/calculate-a-quote"},{"title":"Calculate savings","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /plans/{id}/savings","href":"/api-reference/plans/calculate-savings"},{"title":"List plans","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /plans","href":"/api-reference/plans/list-plans"},{"title":"Retrieve a plan","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /plans/{id}","href":"/api-reference/plans/retrieve-a-plan"}]},{"group":"Leads","pages":[{"title":"Retrieve a lead","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /leads/{id}","href":"/api-reference/leads/retrieve-a-lead"},{"title":"Update a lead","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json patch /leads/{id}","href":"/api-reference/leads/update-a-lead"},{"title":"List leads","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /leads","href":"/api-reference/leads/list-leads"},{"title":"Create a lead","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /leads","href":"/api-reference/leads/create-a-lead"}]},{"group":"Subscriptions","pages":[{"title":"Retrieve a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /subscriptions/{id}","href":"/api-reference/subscriptions/retrieve-a-subscription"},{"title":"Update a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json patch /subscriptions/{id}","href":"/api-reference/subscriptions/update-a-subscription"},{"title":"Terminate a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /subscriptions/{id}/terminate","href":"/api-reference/subscriptions/terminate-a-subscription"},{"title":"List subscriptions","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /subscriptions","href":"/api-reference/subscriptions/list-subscriptions"},{"title":"Create a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /subscriptions","href":"/api-reference/subscriptions/create-a-subscription"}]},{"group":"Customers","pages":[{"title":"Retrieve a customer","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /customers/{id}","href":"/api-reference/customers/retrieve-a-customer"},{"title":"Update a customer","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json patch /customers/{id}","href":"/api-reference/customers/update-a-customer"},{"title":"List customers","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /customers","href":"/api-reference/customers/list-customers"}]},{"group":"Households","pages":[{"title":"List households","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /households","href":"/api-reference/households/list-households"},{"title":"Retrieve a household","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /households/{id}","href":"/api-reference/households/retrieve-a-household"}]},{"group":"Assets","pages":[{"title":"List assets","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /assets","href":"/api-reference/assets/list-assets"},{"title":"Add an asset","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /assets","href":"/api-reference/assets/add-an-asset"},{"title":"Retrieve an asset","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /assets/{id}","href":"/api-reference/assets/retrieve-an-asset"},{"title":"Update an asset","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json patch /assets/{id}","href":"/api-reference/assets/update-an-asset"},{"title":"Decommission an asset","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /assets/{id}/decommission","href":"/api-reference/assets/decommission-an-asset"},{"title":"List the newest asset snapshots","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /asset-snapshots","href":"/api-reference/assets/list-the-newest-asset-snapshots"},{"title":"Send asset snapshots","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /asset-snapshots","href":"/api-reference/assets/send-asset-snapshots"},{"title":"Retrieve an asset schedule","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /assets/{id}/schedule","href":"/api-reference/assets/retrieve-an-asset-schedule"}]},{"group":"Usage","pages":[{"title":"Retrieve usage data","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /subscriptions/{id}/usage","href":"/api-reference/usage/retrieve-usage-data"},{"title":"List meter readings","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /meter-readings","href":"/api-reference/usage/list-meter-readings"},{"title":"Create a meter reading","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /meter-readings","href":"/api-reference/usage/create-a-meter-reading"}]},{"group":"Prices","pages":[{"title":"Retrieve a subscription price time series","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /subscriptions/{id}/prices","href":"/api-reference/prices/retrieve-a-subscription-price-time-series"}]},{"group":"Invoices","pages":[{"title":"Retrieve an invoice","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /invoices/{id}","href":"/api-reference/invoices/retrieve-an-invoice"},{"title":"List invoices","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /invoices","href":"/api-reference/invoices/list-invoices"},{"title":"Retrieve an invoice PDF","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /invoices/{id}/file","href":"/api-reference/invoices/retrieve-an-invoice-pdf"}]},{"group":"Smart Meter Orders","pages":[{"title":"Retrieve a smart meter order","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /meter-orders/{id}","href":"/api-reference/smart-meter-orders/retrieve-a-smart-meter-order"},{"title":"List smart meter orders","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /meter-orders","href":"/api-reference/smart-meter-orders/list-smart-meter-orders"},{"title":"Create a smart meter order","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /meter-orders","href":"/api-reference/smart-meter-orders/create-a-smart-meter-order"}]},{"group":"Grid Fee Reductions","pages":[{"title":"List grid fee reductions","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /grid-fee-reductions","href":"/api-reference/grid-fee-reductions/list-grid-fee-reductions"},{"title":"Create a grid fee reduction","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /grid-fee-reductions","href":"/api-reference/grid-fee-reductions/create-a-grid-fee-reduction"},{"title":"Retrieve a grid fee reduction","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /grid-fee-reductions/{id}","href":"/api-reference/grid-fee-reductions/retrieve-a-grid-fee-reduction"}]},{"group":"Market Partners","pages":[{"title":"List market partners","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /market-partners","href":"/api-reference/market-partners/list-market-partners"}]},{"group":"Events","pages":[{"title":"Retrieve an event","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /events/{id}","href":"/api-reference/events/retrieve-an-event"}]},{"group":"Authentication","pages":[{"title":"Create a token","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /oauth/token","href":"/api-reference/authentication/create-a-token"},{"title":"Authorize","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json get /oauth/authorize","href":"/api-reference/authentication/authorize"},{"title":"Create a magic link (customer portal)","deprecated":null,"version":null,"openapi":"/openapi/openapi.gauss.json post /admin/magic_link","href":"/api-reference/authentication/create-a-magic-link-customer-portal"}]}]}]},{"version":"2026-05-27.curie","pages":[{"title":"2026-05-27.curie","href":"/api-references/introduction"}]},{"version":"2026-01-29.edison","pages":[{"title":"2026-01-29.edison","href":"/api-references/introduction"}]},{"version":"2025-12-16.batman","pages":[{"title":"2025-12-16.batman","href":"/api-references/introduction"}]},{"version":"2025-12-01.chucky","pages":[{"title":"2025-12-01.chucky","href":"/api-references/introduction"}]}]},{"tab":"Webhooks","icon":"webhook","groups":[{"group":" ","pages":[{"title":"Webhooks","sidebarTitle":"Introduction","href":"/webhooks/introduction"},{"title":"How to receive webhooks","href":"/webhooks/receiving"},{"title":"Verify webhook requests","description":"Reject forged and replayed webhook deliveries before they reach your handlers.","href":"/webhooks/verify-requests"},{"title":"Retries","href":"/webhooks/retries"}]},{"group":"Subscriptions","pages":[{"title":"subscription.created","description":"Sent when a customer completes signup.","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-gray.svg","href":"/webhooks/events/subscription-created"},{"title":"subscription.confirmed","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green-light.svg","href":"/webhooks/events/subscription-confirmed"},{"title":"subscription.activated","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green.svg","href":"/webhooks/events/subscription-activated"},{"title":"subscription.terminated","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red-light.svg","href":"/webhooks/events/subscription-terminated"},{"title":"subscription.ended","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red.svg","href":"/webhooks/events/subscription-ended"}]},{"group":"Invoices","pages":[{"title":"invoice.created","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-gray.svg","href":"/webhooks/events/invoice-created"},{"title":"invoice.paid","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green.svg","href":"/webhooks/events/invoice-paid"},{"title":"invoice.payment_failed","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red-light.svg","href":"/webhooks/events/invoice-payment_failed"},{"title":"invoice.voided","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red.svg","href":"/webhooks/events/invoice-voided"},{"title":"invoice.uncollectible","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red.svg","href":"/webhooks/events/invoice-uncollectible"}]},{"group":"Meter Orders","pages":[{"title":"meter_order.created","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-gray.svg","href":"/webhooks/events/meter_order-created"},{"title":"meter_order.placed","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-gray.svg","href":"/webhooks/events/meter_order-placed"},{"title":"meter_order.check_submitted","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-gray.svg","href":"/webhooks/events/meter_order-check_submitted"},{"title":"meter_order.check_reviewed","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green-light.svg","href":"/webhooks/events/meter_order-check_reviewed"},{"title":"meter_order.scheduled","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green-light.svg","href":"/webhooks/events/meter_order-scheduled"},{"title":"meter_order.installed","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green-light.svg","href":"/webhooks/events/meter_order-installed"},{"title":"meter_order.activated","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-green.svg","href":"/webhooks/events/meter_order-activated"},{"title":"meter_order.blocked","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red-light.svg","href":"/webhooks/events/meter_order-blocked"},{"title":"meter_order.cancelled","icon":"https://mintlify.s3.us-west-1.amazonaws.com/riverslate/images/dot-red.svg","href":"/webhooks/events/meter_order-cancelled"}]}]}]},"basePath":"","title":"Retries - Nomos","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":[],"chunks":[]}