Learn about API rate limits and how to work with them.
Tesouro API uses rate limiting to protect Tesouro against spikes of incoming traffic that can put our systems at risk. These limits help us ensure that Tesouro remains stable and usable for everyone.By default, Tesouro API allows 30 requests per second per partner client ID for most API calls, which should be enough for most high-traffic applications. We evaluate the number of requests sent to an API from every API client and throttle them if they surpass the allowed amount.
Depending on our requirements, we might change this limit or introduce different limits on some API calls, which result in highly intensive operations loading our systems. Also, we might have lower numbers allowed for our Sandbox accounts, compared to the Production environment.If the current rate limiting levels are not satisfactory for your integration, please contact your Account Manager at Tesouro to request an increased rate limit.
To avoid your systems becoming unavailable, we strongly recommend that you build custom logic handling rate limiting quotas provided by Tesouro. Thus, for every API request that does not exceed currently available rate limits, you receive a response with the following HTTP headers:
HTTP header
Description
RateLimit-Limit
The number of requests allowed per second. Same as X-RateLimit-Limit-Second.
RateLimit-Remaining
The number of available requests remaining in the current second. Same as X-RateLimit-Remaining-Second.
RateLimit-Reset
The time remaining, in seconds, until the rate limit quota is reset. Usually 1 second.
X-RateLimit-Limit-Second
The number of requests allowed per second. Same as RateLimit-Limit.
X-RateLimit-Remaining-Second
The number of available requests remaining in the current second. Same as RateLimit-Remaining.
If you surpassed the rate limit quota, you will receive a 429 Too Many Requests error indicating that you have sent too many requests within the quota period. If this happens, you will receive a Retry-After header with a value indicating how many seconds you need to wait before sending another request.Example:
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Tesouro","description":"Guides, references, and resources to integrate with the Tesouro platform.","colors":{"primary":"#8b5cf6","light":"#8b5cf6","dark":"#8b5cf6"},"logo":{"light":"https://mintcdn.com/tesouro-dc896113/EiyyRmHDHMxOKA4r/.shared/logo/logo-light.svg?fit=max\u0026auto=format\u0026n=EiyyRmHDHMxOKA4r\u0026q=85\u0026s=7806042ddc87fa143686df9c7b515c71","dark":"https://mintcdn.com/tesouro-dc896113/EiyyRmHDHMxOKA4r/.shared/logo/logo-dark.svg?fit=max\u0026auto=format\u0026n=EiyyRmHDHMxOKA4r\u0026q=85\u0026s=055476f7bf095ab7104d5f0dc91bd674"},"favicon":"https://mintcdn.com/tesouro-dc896113/OrJhEQvpoHU_GZRr/.shared/logo/favicon.ico?fit=max\u0026auto=format\u0026n=OrJhEQvpoHU_GZRr\u0026q=85\u0026s=3619a3722b157ddf06545cfe36402ec6","background":{"color":{"dark":"#121212"}},"navbar":{"links":[{"href":"/contact","label":"Support"}]},"fonts":{"family":"Figtree"},"integrations":{"posthog":{"apiKey":"phc_Y5Ie0oFk2jzq4TnDcK0SbVtj7HzeVRUqFoC9hJsOV8j"}},"metadata":{"timestamp":false},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"tesouro-dc896113","hasAudioNarration":false,"actualSubdomain":"tesouro-dc896113","customDomains":["docs.tesouro.com"],"gitSource":{"type":"github","owner":"tesourohq","repo":"tesouro.platform.frontends.docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adfce3b728ed5a3208384b0","collectionId":"4e256b65-7121-48dc-b374-8d3cbdb7a264","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adfce3b728ed5a3208384b0"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adfce3b728ed5a3208384b0","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"API reference","count":809},{"language":"default","tag":"FinOps","count":486},{"language":"default","tag":"Acquiring","count":330},{"language":"default","tag":"Types","count":318},{"language":"default","tag":"Guides","count":194},{"language":"default","tag":"Underwriting","count":150},{"language":"default","tag":"Accounts receivable","count":113},{"language":"default","tag":"Embedded Banking","count":110},{"language":"default","tag":"Accounts payable","count":62},{"language":"default","tag":"Organization \u0026 access","count":61}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"styles.css","content":".vertical-image img{max-height:400px;width:auto}.no-line-numbers .code-block-line-gutter>span{display:none}.no-line-numbers .code-block-line-content>.line{display:inline-block}#content-area a code{z-index:0!important}svg#mermaid-svg,svg.statediagram{display:block;margin:auto}.method-pill+[data-component-part=scroll-area] [data-component-part=scroll-area-viewport]{direction:rtl}.method-pill+[data-component-part=scroll-area] [data-component-part=scroll-area-viewport]>*{direction:ltr}"}],"page":{"pagePath":"finops/api/concepts/rate-limiting","slug":"/finops/api/concepts/rate-limiting","pageMetadata":{"title":"Rate limiting","description":"Learn about API rate limits and how to work with them.","href":"/finops/api/concepts/rate-limiting"},"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: \"Learn about API rate limits and how to work with them.\"\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`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Tesouro API uses `,_jsx(_components.a,{href:`https://en.wikipedia.org/wiki/Rate_limiting`,children:`rate limiting`}),` to protect Tesouro against spikes of incoming traffic that can put our systems at risk. These limits help us ensure that Tesouro remains stable and usable for everyone.`]}),`\n`,_jsxs(_components.p,{children:[`By default, Tesouro API allows `,_jsx(_components.strong,{children:`30 requests per second`}),` per partner client ID for most API calls, which should be enough for most high-traffic applications. We evaluate the number of requests sent to an API from every API client and throttle them if they surpass the allowed amount.`]}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:`Depending on our requirements, we might change this limit or introduce different limits on some API calls, which result in highly intensive operations loading our systems. Also, we might have lower numbers allowed for our Sandbox accounts, compared to the Production environment.`}),_jsx(_components.p,{children:`If the current rate limiting levels are not satisfactory for your integration, please contact your Account Manager at Tesouro to request an increased rate limit.`})]}),`\n`,_jsx(_components.p,{children:`To avoid your systems becoming unavailable, we strongly recommend that you build custom logic handling rate limiting quotas provided by Tesouro. Thus, for every API request that does not exceed currently available rate limits, you receive a response with the following HTTP headers:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`HTTP header`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`RateLimit-Limit`})}),_jsxs(_components.td,{children:[`The number of requests allowed per second. Same as `,_jsx(_components.code,{children:`X-RateLimit-Limit-Second`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`RateLimit-Remaining`})}),_jsxs(_components.td,{children:[`The number of available requests remaining in the current second. Same as `,_jsx(_components.code,{children:`X-RateLimit-Remaining-Second`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`RateLimit-Reset`})}),_jsx(_components.td,{children:`The time remaining, in seconds, until the rate limit quota is reset. Usually 1 second.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`X-RateLimit-Limit-Second`})}),_jsxs(_components.td,{children:[`The number of requests allowed per second. Same as `,_jsx(_components.code,{children:`RateLimit-Limit`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`X-RateLimit-Remaining-Second`})}),_jsxs(_components.td,{children:[`The number of available requests remaining in the current second. Same as `,_jsx(_components.code,{children:`RateLimit-Remaining`}),`.`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`If you surpassed the rate limit quota, you will receive a `,_jsx(_components.code,{children:`429 Too Many Requests`}),` error indicating that you have sent too many requests within the quota period. If this happens, you will receive a `,_jsx(_components.code,{children:`Retry-After`}),` header with a value indicating how many seconds you need to wait before sending another request.`]}),`\n`,_jsx(_components.p,{children:`Example:`}),`\n`,_jsx(CodeBlock,{filename:``,lines:`true`,numberOfLines:`15`,language:`http`,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:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`15`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`HTTP`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`/`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1.1`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 429`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Too Many Requests`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Date`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Thu, 07 Sep 2023 12:51:32 GMT`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Content-Type`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` application/json; charset=utf-8`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Content-Length`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 41`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Connection`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` keep-alive`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`RateLimit-Reset`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 1`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Retry-After`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 1`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`RateLimit-Limit`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 30`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`RateLimit-Remaining`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 0`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`X-RateLimit-Limit-Second`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 30`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`X-RateLimit-Remaining-Second`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 0`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\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:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"API rate limit exceeded\"`})]}),`\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":"Rate limiting","description":"Learn about API rate limits and how to work with them.","href":"/finops/api/concepts/rate-limiting"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"tesouro-dc896113","siteName":"Tesouro","title":"Rate limiting - Tesouro","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-02-26T01:30:28.327Z","originalFileLocation":"finops/api/concepts/rate-limiting.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=\"Learn about API rate limits and how to work with them.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Tesouro\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_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/tesouro-dc896113/7Bbt6o3aeKao26ng/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Rate limiting - Tesouro\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn about API rate limits and how to work with them.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Tesouro\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.tesouro.com/finops/api/concepts/rate-limiting\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://tesouro-dc896113.mintlify.app/_mintlify/api/og/v2?division=API+concepts\u0026amp;title=Rate+limiting\u0026amp;description=Learn+about+API+rate+limits+and+how+to+work+with+them.\u0026amp;theme=aea269d490030ed12aee6415\u0026amp;signature=8291fc80ce70127b07fdbb983c232e9ae8b3d53c08711edcf19e63eb6522061f\">\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 limiting - Tesouro\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn about API rate limits and how to work with them.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tesouro-dc896113.mintlify.app/_mintlify/api/og/v2?division=API+concepts\u0026amp;title=Rate+limiting\u0026amp;description=Learn+about+API+rate+limits+and+how+to+work+with+them.\u0026amp;theme=aea269d490030ed12aee6415\u0026amp;signature=8291fc80ce70127b07fdbb983c232e9ae8b3d53c08711edcf19e63eb6522061f\">\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/tesouro-dc896113/7Bbt6o3aeKao26ng/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Tesouro\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#8b5cf6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.tesouro.com/finops/api/concepts/rate-limiting\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/finops/api/concepts/rate-limiting.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.tesouro.com/#organization\",\"name\":\"Tesouro\",\"url\":\"https://docs.tesouro.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/tesouro-dc896113/EiyyRmHDHMxOKA4r/.shared/logo/logo-light.svg?fit=max\u0026auto=format\u0026n=EiyyRmHDHMxOKA4r\u0026q=85\u0026s=7806042ddc87fa143686df9c7b515c71\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.tesouro.com#website\",\"name\":\"Tesouro\",\"url\":\"https://docs.tesouro.com\",\"publisher\":{\"@id\":\"https://docs.tesouro.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting#webpage\",\"url\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting\",\"name\":\"Rate limiting\",\"description\":\"Learn about API rate limits and how to work with them.\",\"dateModified\":\"2026-02-26T01:30:28.327Z\",\"isPartOf\":{\"@id\":\"https://docs.tesouro.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Getting started\",\"item\":\"https://docs.tesouro.com/finops/guides/quickstart/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API concepts\",\"item\":\"https://docs.tesouro.com/finops/api/index\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Rate limiting\",\"item\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting#article\",\"headline\":\"Rate limiting\",\"name\":\"Rate limiting\",\"description\":\"Learn about API rate limits and how to work with them.\",\"url\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting\",\"mainEntityOfPage\":{\"@id\":\"https://docs.tesouro.com/finops/api/concepts/rate-limiting#webpage\"},\"dateModified\":\"2026-02-26T01:30:28.327Z\",\"publisher\":{\"@id\":\"https://docs.tesouro.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.tesouro.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Tesouro\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Tesouro","nav":{"global":null,"products":[{"product":"Home","icon":"house","description":"Documentation hub for all Tesouro products and platform guides","pages":[{"title":"Home","href":""}]},{"product":"Acquiring","icon":"credit-card","description":"Acceptor boarding, transaction processing, billing, funding, and dispute management","pages":[{"title":"Acquiring","href":"/acquiring"}]},{"product":"Embedded Banking","icon":"building-columns","description":"Integrate banking and finance tools directly within your software","pages":[{"title":"Embedded Banking","href":"/embedded-banking"}]},{"product":"FinOps","icon":"file-invoice-dollar","description":"Accounts payable, accounts receivable, invoicing, and expense management","tabs":[{"tab":"Guides","pages":[{"title":"FinOps Hub","sidebarTitle":"Introduction","mode":"wide","href":"/finops"},{"group":"Getting started","pages":[{"title":"Quick start","sidebarTitle":"Quick start","href":"/finops/guides/quickstart/index"},{"group":"API concepts","root":{"title":"API concepts","sidebarTitle":"API concepts","mode":"wide","href":"/finops/api/index"},"pages":[{"title":"Environments and URLs","href":"/finops/api/concepts/environments"},{"title":"HTTP headers","description":"Learn about HTTP headers that can be passed in request and responses when interacting with Tesouro API.","href":"/finops/api/concepts/http-headers"},{"title":"Rate limiting","href":"/finops/api/concepts/rate-limiting"},{"title":"Pagination, sorting, and filtering","description":"Learn how to optimize data you receive with GET API calls from Tesouro.","href":"/finops/api/concepts/pagination-sorting-filtering"},{"title":"Playground","href":"/finops/api/concepts/playground"}]},{"group":"Webhooks","pages":[{"title":"Webhooks","href":"/finops/guides/getting-started/webhooks/index"},{"title":"Webhook signatures","href":"/finops/guides/getting-started/webhooks/signatures"},{"title":"Webhook IP addresses","href":"/finops/guides/getting-started/webhooks/ip-addresses"}]}]},{"group":"Authentication","pages":[{"title":"Overview","href":"/finops/guides/authentication/overview"},{"title":"Client credentials","href":"/finops/guides/authentication/client-credentials"},{"title":"User token","href":"/finops/guides/authentication/user-token"}]},{"group":"Roles \u0026 permissions","pages":[{"title":"Roles","href":"/finops/guides/roles/index"},{"title":"Permissions reference","href":"/finops/guides/roles/permissions"}]},{"group":"Introduction","hidden":true,"pages":[{"title":"Welcome to Tesouro","href":"/finops/guides/intro/index"}]},{"group":"Manage organizations","pages":[{"title":"Organizations","href":"/finops/guides/organizations/index"},{"title":"Organization users","href":"/finops/guides/organizations/users"},{"title":"Organization bank accounts","href":"/finops/guides/organizations/bank-accounts"},{"title":"Organization settings","href":"/finops/guides/organizations/settings"}]},{"group":"Common objects","pages":[{"group":"Counterparts","pages":[{"title":"Counterparts","href":"/finops/guides/common/counterparts/index"},{"title":"Counterpart addresses","href":"/finops/guides/common/counterparts/addresses"},{"title":"Counterpart bank accounts","href":"/finops/guides/common/counterparts/bank-accounts"},{"title":"Counterpart contacts","href":"/finops/guides/common/counterparts/contacts"}]},{"title":"Tags","href":"/finops/guides/common/tags"},{"title":"Metadata","href":"/finops/guides/common/metadata"},{"title":"Payment terms","href":"/finops/guides/common/payment-terms"},{"title":"Payment records","href":"/finops/guides/common/payment-records"},{"title":"Projects","href":"/finops/guides/common/projects"}]},{"group":"Accounts payable","pages":[{"title":"Accounts payable","href":"/finops/guides/accounts-payable/index"},{"group":"Payables","pages":[{"title":"Payable lifecycle","href":"/finops/guides/accounts-payable/payables/index"},{"title":"Collect payables","href":"/finops/guides/accounts-payable/payables/collect"},{"title":"Manage payables","href":"/finops/guides/accounts-payable/payables/manage"},{"title":"Duplicate payables","href":"/finops/guides/accounts-payable/payables/duplicates"},{"title":"Line items in payables","href":"/finops/guides/accounts-payable/payables/line-items"},{"title":"Comments","href":"/finops/guides/accounts-payable/payables/comments"}]},{"group":"Approval processes","pages":[{"title":"Approval processes","href":"/finops/guides/accounts-payable/approvals/index"},{"group":"Approval policies","pages":[{"title":"Approval policies","href":"/finops/guides/accounts-payable/approvals/policies/index"},{"title":"Approval requests","href":"/finops/guides/accounts-payable/approvals/policies/approval-requests"},{"title":"Processes and steps","href":"/finops/guides/accounts-payable/approvals/policies/processes"},{"title":"Trigger examples","href":"/finops/guides/accounts-payable/approvals/policies/trigger-examples"},{"title":"Script examples","href":"/finops/guides/accounts-payable/approvals/policies/script-examples"}]},{"title":"Manual status transition","href":"/finops/guides/accounts-payable/approvals/manual-transition"}]},{"group":"Credit notes","pages":[{"title":"Credit notes (accounts payable)","href":"/finops/guides/accounts-payable/credit-notes/index"},{"title":"Credit note lifecycle (accounts payable)","href":"/finops/guides/accounts-payable/credit-notes/lifecycle"},{"title":"Manage credit notes (accounts payable)","href":"/finops/guides/accounts-payable/credit-notes/manage"},{"title":"Line items in credit notes (accounts payable)","href":"/finops/guides/accounts-payable/credit-notes/line-items"}]},{"title":"Purchase orders","href":"/finops/guides/accounts-payable/purchase-orders"},{"title":"Payable history","href":"/finops/guides/accounts-payable/payable-history"}]},{"group":"Accounts receivable","pages":[{"title":"Accounts receivable","href":"/finops/guides/accounts-receivable/index"},{"title":"Create and manage products","href":"/finops/guides/accounts-receivable/products"},{"group":"Invoices","pages":[{"title":"Invoice lifecycle","href":"/finops/guides/accounts-receivable/invoices/index"},{"title":"Create and send invoices","href":"/finops/guides/accounts-receivable/invoices/create"},{"title":"Manage invoices","href":"/finops/guides/accounts-receivable/invoices/manage"},{"title":"Invoice line items","href":"/finops/guides/accounts-receivable/invoices/line-items"},{"title":"Recurring invoices","href":"/finops/guides/accounts-receivable/invoices/recurring"},{"title":"Invoice payment reminders","href":"/finops/guides/accounts-receivable/invoices/payment-reminders"},{"title":"Overdue reminders","href":"/finops/guides/accounts-receivable/invoices/overdue-reminders"}]},{"title":"Invoice financing","tag":"BETA","href":"/finops/guides/accounts-receivable/invoice-financing"},{"title":"Invoice reconciliation","href":"/finops/guides/accounts-receivable/reconciliation"},{"group":"Quotes","pages":[{"title":"Quote lifecycle","href":"/finops/guides/accounts-receivable/quotes/index"},{"title":"Create and send quotes","href":"/finops/guides/accounts-receivable/quotes/create"},{"title":"Manage quotes","href":"/finops/guides/accounts-receivable/quotes/manage"},{"title":"Quote line items","href":"/finops/guides/accounts-receivable/quotes/line-items"}]},{"title":"Credit notes (accounts receivable)","href":"/finops/guides/accounts-receivable/credit-notes"},{"title":"Delivery notes","href":"/finops/guides/accounts-receivable/delivery-notes"},{"title":"Discounts","href":"/finops/guides/accounts-receivable/discounts"},{"title":"Special discounts and incentives","href":"/finops/guides/accounts-receivable/special-deductions"},{"title":"Invoice attachments","href":"/finops/guides/accounts-receivable/customization/attachments"},{"title":"Document history","href":"/finops/guides/accounts-receivable/document-history"},{"title":"Invoice compliance","href":"/finops/guides/accounts-receivable/regulatory-compliance/invoice-compliance"}]},{"group":"Expense management","pages":[{"title":"Expense management","href":"/finops/guides/expense-management/index"},{"title":"Setup","href":"/finops/guides/expense-management/setup"},{"title":"Expense lifecycle","href":"/finops/guides/expense-management/lifecycle"},{"title":"Receipts \u0026 OCR","href":"/finops/guides/expense-management/receipts"},{"title":"Expense history","href":"/finops/guides/expense-management/expense-history"}]},{"group":"Payments","pages":[{"title":"Payments","href":"/finops/guides/payments/index"},{"title":"Payment method codes","href":"/finops/guides/payments/payment-methods"},{"group":"Onboarding","pages":[{"title":"Organization onboarding for payments","href":"/finops/guides/payments/onboarding/index"},{"title":"Enable payment methods for an organization","href":"/finops/guides/payments/onboarding/enable-payment-methods"}]},{"title":"Payment links","href":"/finops/guides/payments/payment-links"},{"title":"Payment intents","href":"/finops/guides/payments/payment-intents"},{"title":"Payment Web Component","href":"/finops/guides/payments/payment-web-component"},{"title":"Payment page customization","href":"/finops/guides/payments/payment-page-customization"},{"title":"Testing payments","sidebarTitle":"Testing","href":"/finops/guides/payments/testing"}]},{"group":"Advanced","pages":[{"title":"Analytics","href":"/finops/guides/advanced/analytics"},{"title":"Document number customization","href":"/finops/guides/advanced/document-number-customization"},{"group":"Email templates","pages":[{"title":"Email templating and customization","href":"/finops/guides/advanced/email-templates/index"},{"title":"Create and manage email templates","href":"/finops/guides/advanced/email-templates/manage"}]},{"title":"Domains and mailboxes","href":"/finops/guides/advanced/mailboxes"},{"title":"Optical Character Recognition (OCR)","sidebarTitle":"OCR","href":"/finops/guides/advanced/ocr"},{"title":"PDF templates","href":"/finops/guides/advanced/pdf-templates"},{"title":"Text templates","href":"/finops/guides/advanced/text-templates"},{"title":"Template variables","href":"/finops/guides/advanced/variables"},{"title":"TesouroScript","href":"/finops/guides/advanced/tesouroscript"}]},{"group":"Accounting integrations","pages":[{"group":"Integration","pages":[{"title":"Accounting integration","href":"/finops/guides/accounting/integration/index"},{"title":"Set up accounting integration","href":"/finops/guides/accounting/integration/setup"},{"title":"Ledger accounts","href":"/finops/guides/accounting/integration/ledger-accounts"},{"title":"Push an invoice","href":"/finops/guides/accounting/integration/push-invoice"},{"title":"Manage accounting integrations","href":"/finops/guides/accounting/integration/manage"}]},{"title":"Data export","href":"/finops/guides/accounting/data-export"}]}]},{"tab":"Embedded components ↗","href":"https://components.tesouro.com/components?product=finops"},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/receivables/get-receivables"}]},{"tab":"GitHub","icon":"github","hidden":true,"href":"https://github.com/team-tesouro"},{"tab":"Support","pages":[{"title":"Support","href":"/finops/support"}]}]},{"product":"Underwriting","icon":"file-shield","description":"Submit KYB/KYC and financial information for underwriting review and decisioning","pages":[{"title":"Underwriting","href":"/underwriting"}]}]},"title":"Rate limiting - Tesouro","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":[],"chunks":[]}