Understand Sudo API rate limits, headers, and retry guidance
Sudo enforces request rate limits to ensure fair usage and platform stability. This page describes the limits, response headers, and error codes you may encounter so you can implement appropriate backoff and retry logic.
Rate Limits
Sudo applies a general request rate of approximately 600 requests per minute (RPM) with short burst capacity. When you exceed the allowed rate, requests may be rejected.
What you’ll see when limited
HTTP status: 429 Too Many Requests
Headers: Standard rate-limiting headers are returned, including RateLimit-* headers when applicable, and a Retry-After header in some cases. Use these to determine when to retry.
Body: A brief message indicating the request was rate limited.
Example handling pattern:
# Pseudocode logic for client retriesif status == 429: wait = response.headers.get('Retry-After') or derive_from_rate_limit_headers() sleep(wait_seconds) retry()
Provider-level throttling
In addition to general request limits, upstream model providers (OpenAI, Anthropic, Google, xAI, etc.) may enforce their own quotas. When Sudo temporarily exhausts a provider’s budget, you may receive a response instructing you to retry later.
HTTP status: 503 Service Unavailable
Header: Retry-After: <seconds> — indicates when it is safe to retry
Implement exponential backoff and respect Retry-After before retrying.
Overload: HTTP 503
If the platform is temporarily overloaded (e.g., too many concurrent users or requests), you may receive:
HTTP status: 503 Service Unavailable
Header: Retry-After: <seconds> — how long to wait before retrying
Recommended handling:
Read the Retry-After header.
Wait the indicated number of seconds.
Retry with exponential backoff if needed.
Best Practices
Prefer exponential backoff with jitter for retries.
Always honor Retry-After when present.
Keep requests within reasonable volumes to avoid throttling.
Consider queuing or batching non-urgent work.
Some SDK methods include built-in retry mechanics. If you implement your own, make sure to cap maximum retries and total wait time to provide a responsive user experience.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Sudo Developer Platform","colors":{"primary":"#F74E00","light":"#FDFDFD","dark":"#000000"},"logo":{"light":"https://mintcdn.com/lita/J7nEUwxW1-PGv48x/SUDO.svg?fit=max\u0026auto=format\u0026n=J7nEUwxW1-PGv48x\u0026q=85\u0026s=73952c0e2019fd50f94b90e4431d8949","dark":"https://mintcdn.com/lita/J7nEUwxW1-PGv48x/SUDO_Darkmode.svg?fit=max\u0026auto=format\u0026n=J7nEUwxW1-PGv48x\u0026q=85\u0026s=f4276bf149da1733e72c5d4f2d6bbaa2"},"favicon":"/Favicon.svg","navbar":{"primary":{"type":"button","label":"Sudo Developer Portal","href":"https://sudoapp.dev/dev/login"}},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lita","hasAudioNarration":false,"actualSubdomain":"lita","customDomains":["docs.sudoapp.dev"],"gitSource":{"type":"github","owner":"lita-xyz","repo":"sudo","deployBranch":"docs-permanent","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6ae929382aa543bea3368595:success","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":15},{"language":"default","tag":"SDKs","count":13},{"language":"default","tag":"Sudo SDK","count":12},{"language":"default","tag":"Endpoints","count":10},{"language":"default","tag":"Router","count":7},{"language":"default","tag":"Overview","count":3},{"language":"default","tag":"System","count":2},{"language":"default","tag":"Responses API","count":1}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-ref/rate_limits","slug":"/api-ref/rate_limits","pageMetadata":{"title":"Rate Limits \u0026 Overload Handling","description":"Understand Sudo API rate limits, headers, and retry guidance","href":"/api-ref/rate_limits"},"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: \"Understand Sudo API rate limits, headers, and retry guidance\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tip}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Sudo enforces request rate limits to ensure fair usage and platform stability. This page describes the limits, response headers, and error codes you may encounter so you can implement appropriate backoff and retry logic.`}),`\n`,_jsx(Heading,{level:`2`,id:`rate-limits`,children:`Rate Limits`}),`\n`,_jsx(_components.p,{children:`Sudo applies a general request rate of approximately 600 requests per minute (RPM) with short burst capacity. When you exceed the allowed rate, requests may be rejected.`}),`\n`,_jsx(Heading,{level:`3`,id:`what-you’ll-see-when-limited`,children:`What you’ll see when limited`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`HTTP status`}),`: `,_jsx(_components.code,{children:`429 Too Many Requests`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Headers`}),`: Standard rate-limiting headers are returned, including `,_jsx(_components.code,{children:`RateLimit-*`}),` headers when applicable, and a `,_jsx(_components.code,{children:`Retry-After`}),` header in some cases. Use these to determine when to retry.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Body`}),`: A brief message indicating the request was rate limited.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Example handling pattern:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,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:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Pseudocode logic for client retries`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`if`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` status`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ==`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 429:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` wait`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` response.headers.get`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`'Retry-After'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`or`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` derive_from_rate_limit_headers`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` sleep(wait_seconds`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` retry`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`provider-level-throttling`,children:`Provider-level throttling`}),`\n`,_jsx(_components.p,{children:`In addition to general request limits, upstream model providers (OpenAI, Anthropic, Google, xAI, etc.) may enforce their own quotas. When Sudo temporarily exhausts a provider’s budget, you may receive a response instructing you to retry later.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`HTTP status`}),`: `,_jsx(_components.code,{children:`503 Service Unavailable`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Header`}),`: `,_jsx(_components.code,{children:`Retry-After: \u003cseconds>`}),` — indicates when it is safe to retry`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Body`}),` (JSON):`]}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,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:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_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:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"upstream_rate_limited\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"scope\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"provider:\u003cprovider>\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"detail\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Provider budget temporarily exhausted\"`})]}),`\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`]})})}),`\n`,_jsxs(_components.p,{children:[`Implement exponential backoff and respect `,_jsx(_components.code,{children:`Retry-After`}),` before retrying.`]}),`\n`,_jsx(Heading,{level:`2`,id:`overload-http-503`,children:`Overload: HTTP 503`}),`\n`,_jsx(_components.p,{children:`If the platform is temporarily overloaded (e.g., too many concurrent users or requests), you may receive:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`HTTP status`}),`: `,_jsx(_components.code,{children:`503 Service Unavailable`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Header`}),`: `,_jsx(_components.code,{children:`Retry-After: \u003cseconds>`}),` — how long to wait before retrying`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Recommended handling:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Read the `,_jsx(_components.code,{children:`Retry-After`}),` header.`]}),`\n`,_jsx(_components.li,{children:`Wait the indicated number of seconds.`}),`\n`,_jsx(_components.li,{children:`Retry with exponential backoff if needed.`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`best-practices`,children:`Best Practices`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Prefer exponential backoff with jitter for retries.`}),`\n`,_jsxs(_components.li,{children:[`Always honor `,_jsx(_components.code,{children:`Retry-After`}),` when present.`]}),`\n`,_jsx(_components.li,{children:`Keep requests within reasonable volumes to avoid throttling.`}),`\n`,_jsx(_components.li,{children:`Consider queuing or batching non-urgent work.`}),`\n`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Some SDK methods include built-in retry mechanics. If you implement your own, make sure to cap maximum retries and total wait time to provide a responsive user experience.`})})]})}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":"Rate Limits \u0026 Overload Handling","description":"Understand Sudo API rate limits, headers, and retry guidance","href":"/api-ref/rate_limits"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Rate Limits","slug":"rate-limits","depth":2,"children":[{"title":"What you’ll see when limited","slug":"what-you’ll-see-when-limited","depth":3,"children":[]},{"title":"Provider-level throttling","slug":"provider-level-throttling","depth":3,"children":[]}]},{"title":"Overload: HTTP 503","slug":"overload-http-503","depth":2,"children":[]},{"title":"Best Practices","slug":"best-practices","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"lita","siteName":"Sudo Developer Platform","title":"Rate Limits \u0026 Overload Handling - Sudo Developer Platform","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-11-14T23:43:30.211Z","originalFileLocation":"api-ref/rate_limits.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=\"Understand Sudo API rate limits, headers, and retry guidance\">\u003cmeta data-mint-head name=\"application-name\" content=\"Sudo Developer Platform\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_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/lita/7zMeY05SaDwaNF1n/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Rate Limits \u0026amp; Overload Handling - Sudo Developer Platform\">\u003cmeta data-mint-head property=\"og:description\" content=\"Understand Sudo API rate limits, headers, and retry guidance\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Sudo Developer Platform\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.sudoapp.dev/api-ref/rate_limits\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lita.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Rate+Limits+%26+Overload+Handling\u0026amp;description=Understand+Sudo+API+rate+limits%2C+headers%2C+and+retry+guidance\u0026amp;theme=432278ed1d3be2363893e220\u0026amp;signature=7200e9fbea2c8787632027ceeed3c6b61197f300f0362d343af47ee9df0ced9b\">\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=\"Rate Limits \u0026amp; Overload Handling - Sudo Developer Platform\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Understand Sudo API rate limits, headers, and retry guidance\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lita.mintlify.site/_mintlify/api/og/v2?division=API+Reference\u0026amp;title=Rate+Limits+%26+Overload+Handling\u0026amp;description=Understand+Sudo+API+rate+limits%2C+headers%2C+and+retry+guidance\u0026amp;theme=432278ed1d3be2363893e220\u0026amp;signature=7200e9fbea2c8787632027ceeed3c6b61197f300f0362d343af47ee9df0ced9b\">\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/lita/7zMeY05SaDwaNF1n/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Sudo Developer Platform\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#F74E00\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.sudoapp.dev/api-ref/rate_limits\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-ref/rate_limits.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.sudoapp.dev/#organization\",\"name\":\"Sudo Developer Platform\",\"url\":\"https://docs.sudoapp.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lita/J7nEUwxW1-PGv48x/SUDO.svg?fit=max\u0026auto=format\u0026n=J7nEUwxW1-PGv48x\u0026q=85\u0026s=73952c0e2019fd50f94b90e4431d8949\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.sudoapp.dev#website\",\"name\":\"Sudo Developer Platform\",\"url\":\"https://docs.sudoapp.dev\",\"publisher\":{\"@id\":\"https://docs.sudoapp.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.sudoapp.dev/api-ref/rate_limits#webpage\",\"url\":\"https://docs.sudoapp.dev/api-ref/rate_limits\",\"name\":\"Rate Limits \u0026 Overload Handling\",\"description\":\"Understand Sudo API rate limits, headers, and retry guidance\",\"dateModified\":\"2025-11-14T23:43:30.211Z\",\"isPartOf\":{\"@id\":\"https://docs.sudoapp.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.sudoapp.dev/api-ref/rate_limits#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.sudoapp.dev/api-ref/rate_limits#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.sudoapp.dev/api-ref/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rate Limits \u0026 Overload Handling\",\"item\":\"https://docs.sudoapp.dev/api-ref/rate_limits\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.sudoapp.dev/api-ref/rate_limits#article\",\"headline\":\"Rate Limits \u0026 Overload Handling\",\"name\":\"Rate Limits \u0026 Overload Handling\",\"description\":\"Understand Sudo API rate limits, headers, and retry guidance\",\"url\":\"https://docs.sudoapp.dev/api-ref/rate_limits\",\"mainEntityOfPage\":{\"@id\":\"https://docs.sudoapp.dev/api-ref/rate_limits#webpage\"},\"dateModified\":\"2025-11-14T23:43:30.211Z\",\"publisher\":{\"@id\":\"https://docs.sudoapp.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.sudoapp.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Sudo Developer Platform\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Sudo Developer Platform\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-ref/rate_limits.md","siteName":"Sudo Developer Platform","nav":{"global":null,"groups":[{"group":"Overview","pages":[{"title":"Introduction","href":"/overview/introduction"},{"title":"Quickstart","href":"/overview/quickstart-api"},{"title":"Supported AI Models","href":"/overview/models"}]},{"group":"SDKs","icon":"hammer","pages":[{"title":"OpenAI SDK Compatability","icon":"handshake","href":"/sdk/openai-sdk"},{"group":"Sudo SDK","icon":"code","pages":[{"title":"Introduction","href":"/sdk/sudo-sdk"},{"title":"Installation \u0026 Setup","href":"/sdk/sudo-sdk/installation"},{"title":"System Endpoints","href":"/sdk/sudo-sdk/system-endpoints"},{"title":"AI Router","href":"/sdk/sudo-sdk/ai-responses"},{"title":"Responses api","href":"/sdk/sudo-sdk/responses_api"},{"title":"Image Generation","href":"/sdk/sudo-sdk/image-generation"},{"title":"Streaming","href":"/sdk/sudo-sdk/streaming"},{"title":"Tool Calling","href":"/sdk/sudo-sdk/tool-calling"},{"title":"Structured Output","href":"/sdk/sudo-sdk/structured-output"},{"title":"Image Input","href":"/sdk/sudo-sdk/image-input"},{"title":"Audio Chat Completions","href":"/sdk/sudo-sdk/audio_chat_completions"},{"title":"Reasoning","href":"/sdk/sudo-sdk/reasoning"},{"title":"CRUD Operations","href":"/sdk/sudo-sdk/crud-operations"}]}]},{"group":"API Reference","icon":"square-terminal","pages":[{"title":"Overview","href":"/api-ref/overview"},{"title":"Headers \u0026 Auth","href":"/api-ref/auth"},{"title":"Streaming","href":"/api-ref/streaming"},{"title":"Responses API","description":"OpenAI Responses API via Sudo","href":"/api-ref/responses_api"},{"title":"Rate Limits \u0026 Overload Handling","href":"/api-ref/rate_limits"},{"group":"Endpoints","icon":"code","pages":[{"group":"handlers::accounts::developers","pages":[]},{"group":"handlers::accounts::users","pages":[]},{"group":"handlers::ads::ad_exchange","pages":[]},{"group":"System","pages":[{"title":"System Health","description":null,"deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json get /system/health","href":"/api-reference/system/system-health"},{"title":"Get supported models","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json get /v1/models","href":"/api-reference/system/get-supported-models"}]},{"group":"handlers::system::info","pages":[]},{"group":"Router","pages":[{"title":"List Chat Completions","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json get /v1/chat/completions","href":"/api-reference/router/list-chat-completions"},{"title":"Create Chat Completion","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json post /v1/chat/completions","href":"/api-reference/router/create-chat-completion"},{"title":"Get a Chat Completion","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json get /v1/chat/completions/{completion_id}","href":"/api-reference/router/get-a-chat-completion"},{"title":"Update Chat Completion","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json post /v1/chat/completions/{completion_id}","href":"/api-reference/router/update-chat-completion"},{"title":"Delete Chat Completion","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json delete /v1/chat/completions/{completion_id}","href":"/api-reference/router/delete-chat-completion"},{"title":"Chat Completion Messages","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json get /v1/chat/completions/{completion_id}/messages","href":"/api-reference/router/chat-completion-messages"},{"title":"Generate Image","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json post /v1/images/generations","href":"/api-reference/router/generate-image"}]},{"group":"Responses API","pages":[{"title":"Create Response","deprecated":null,"version":null,"openapi":"https://sudoapp.dev/api/openapi.json post /v1/responses","href":"/api-reference/responses-api/create-response"}]}]}]}]},"basePath":"","title":"Rate Limits \u0026 Overload Handling - Sudo Developer Platform","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}