Configure authentication rate limits to prevent issues during parallel testing
When running multiple tests in parallel, authentication rate limits from various providers can be triggered, causing user sessions to be logged out in the middle of tests. This guide covers how to configure rate limits for different authentication providers.
Supabase provides comprehensive rate limiting controls that are particularly important when running parallel tests against free or limited tier instances.
Some limits are per IP address, others are per project
Free tier projects have lower default limits than paid plans
Consider upgrading to a paid plan for higher default limits
Be cautious when significantly increasing rate limits in production
environments. Higher limits reduce protection against actual abuse and DDoS
attacks.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"QA.tech Docs","colors":{"primary":"#4F46E5","light":"#F672AB","dark":"#4F46E5"},"logo":{"light":"https://mintcdn.com/qatech/tn7srSYA67gRWgfI/logo/logo.svg?fit=max\u0026auto=format\u0026n=tn7srSYA67gRWgfI\u0026q=85\u0026s=2f0e3745a8079e74e66e0a904232888f","dark":"https://mintcdn.com/qatech/tn7srSYA67gRWgfI/logo/dark.svg?fit=max\u0026auto=format\u0026n=tn7srSYA67gRWgfI\u0026q=85\u0026s=8c39f071bcebaa8ec3c9b73c4e34faac","href":"https://docs.qa.tech"},"favicon":"https://mintcdn.com/qatech/tn7srSYA67gRWgfI/favicon.svg?fit=max\u0026auto=format\u0026n=tn7srSYA67gRWgfI\u0026q=85\u0026s=b34d80ecef9cd5e082545308e406134f","navbar":{"links":[{"href":"https://qa.tech/contact","label":"Support"}],"primary":{"type":"button","label":"Get Started","href":"https://qa.tech/demo"}},"footer":{"socials":{"x":"https://x.com/getqatech","github":"https://github.com/qAdottech","linkedin":"https://www.linkedin.com/company/qa-tech-ai"}},"seo":{"metatags":{"canonical":"https://docs.qa.tech"}},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Blog","icon":"newspaper","href":"https://qa.tech/blog/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"qatech","hasAudioNarration":false,"actualSubdomain":"qatech","customDomains":["docs.qa.tech"],"gitSource":{"type":"github","owner":"qadottech","repo":"qatech","deployBranch":"live","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae24e800eb4397cd026a309","collectionId":"13591c6f-f0b1-46c5-862c-8473884fccb2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae24e800eb4397cd026a309"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae24e800eb4397cd026a309","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"API and CLI","count":71},{"language":"default","tag":"Endpoints","count":55},{"language":"default","tag":"Build Tests","count":30},{"language":"default","tag":"Get Started","count":26},{"language":"default","tag":"Regression Testing","count":26},{"language":"default","tag":"Agents","count":15},{"language":"default","tag":"Integrations","count":15},{"language":"default","tag":"PR Testing","count":13},{"language":"default","tag":"Runs","count":12},{"language":"default","tag":"Choose your CI","count":11}]},"assistantConfig":{"enableAskAiButton":false,"enableAskAiSearchBar":false},"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":"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}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"a[href='/integrations/mcp']>svg{-webkit-mask-image:url(/images/mcp-logo.svg)!important;mask-image:url(/images/mcp-logo.svg)!important}"}],"page":{"pagePath":"configuration/auth-rate-limits","slug":"/configuration/auth-rate-limits","pageMetadata":{"title":"Authentication Rate Limits","description":"Configure authentication rate limits to prevent issues during parallel testing","icon":"shield-check","href":"/configuration/auth-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: \"Configure authentication rate limits to prevent issues during parallel testing\"\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={li:`li`,ol:`ol`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`When running multiple tests in parallel, authentication rate limits from various providers can be triggered, causing user sessions to be logged out in the middle of tests. This guide covers how to configure rate limits for different authentication providers.`}),`\n`,_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsx(_components.p,{children:`Authentication providers implement rate limiting to prevent abuse and ensure service stability. During testing, these limits can impact:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Parallel test execution`}),`\n`,_jsx(_components.li,{children:`Authentication flows in tests`}),`\n`,_jsx(_components.li,{children:`Session management during long-running tests`}),`\n`,_jsx(_components.li,{children:`User signup/verification processes`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`supabase-rate-limits`,children:`Supabase Rate Limits`}),`\n`,_jsx(_components.p,{children:`Supabase provides comprehensive rate limiting controls that are particularly important when running parallel tests against free or limited tier instances.`}),`\n`,_jsx(Heading,{level:`3`,id:`accessing-supabase-rate-limits`,children:`Accessing Supabase Rate Limits`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Navigate to your Supabase project dashboard`}),`\n`,_jsxs(_components.li,{children:[`Go to `,_jsx(_components.strong,{children:`Authentication`}),` → `,_jsx(_components.strong,{children:`Rate Limits`}),` in the sidebar`]}),`\n`,_jsx(_components.li,{children:`Configure the various rate limit settings`}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`rate-limit-settings`,children:`Rate Limit Settings`}),`\n`,_jsx(Heading,{level:`4`,id:`email-rate-limits`,children:`Email Rate Limits`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Purpose`}),`: Controls how many emails can be sent per hour`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Default`}),`: 500 emails per hour`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Testing Impact`}),`: Affects signup/verification flows in tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Recommendation`}),`: Increase if tests involve many user registrations`]}),`\n`]}),`\n`,_jsx(Heading,{level:`4`,id:`token-refresh-rate-limits`,children:`Token Refresh Rate Limits`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Purpose`}),`: Controls session refreshes in 5-minute intervals per IP`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Default`}),`: 300 refreshes per 5 minutes (3600 requests per hour)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Testing Impact`}),`: `,_jsx(_components.strong,{children:`High impact`}),` - Can cause session logouts during long-running tests`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Recommendation`}),`: Increase significantly for parallel testing (e.g., 1000-5000)`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`supabase-specific-notes`,children:`Supabase-Specific Notes`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Rate limit changes take effect immediately`}),`\n`,_jsx(_components.li,{children:`Some limits are per IP address, others are per project`}),`\n`,_jsx(_components.li,{children:`Free tier projects have lower default limits than paid plans`}),`\n`,_jsx(_components.li,{children:`Consider upgrading to a paid plan for higher default limits`}),`\n`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Be cautious when significantly increasing rate limits in production\nenvironments. Higher limits reduce protection against actual abuse and DDoS\nattacks.`})})]})}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":"Authentication Rate Limits","description":"Configure authentication rate limits to prevent issues during parallel testing","icon":"shield-check","href":"/configuration/auth-rate-limits"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Supabase Rate Limits","slug":"supabase-rate-limits","depth":2,"children":[{"title":"Accessing Supabase Rate Limits","slug":"accessing-supabase-rate-limits","depth":3,"children":[]},{"title":"Rate Limit Settings","slug":"rate-limit-settings","depth":3,"children":[]},{"title":"Email Rate Limits","slug":"email-rate-limits","depth":4,"children":[]},{"title":"Token Refresh Rate Limits","slug":"token-refresh-rate-limits","depth":4,"children":[]},{"title":"Supabase-Specific Notes","slug":"supabase-specific-notes","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"qatech","siteName":"QA.tech Docs","title":"Authentication Rate Limits - QA.tech Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-27T16:48:00.379Z","originalFileLocation":"configuration/auth-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=\"Configure authentication rate limits to prevent issues during parallel testing\">\u003cmeta data-mint-head name=\"application-name\" content=\"QA.tech Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_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/qatech/iMlZaRlMvi7xyIQO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Authentication Rate Limits - QA.tech Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Configure authentication rate limits to prevent issues during parallel testing\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"QA.tech Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.qa.tech/configuration/auth-rate-limits\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://qatech.mintlify.app/_mintlify/api/og/v2?division=Troubleshooting\u0026amp;title=Authentication+Rate+Limits\u0026amp;description=Configure+authentication+rate+limits+to+prevent+issues+during+parallel+testing\u0026amp;theme=1ae391f617cb8a464ae673d4\u0026amp;signature=2b74973978cffb867404ad06063908190b986c01d3186192cfb9db0fe6375c55\">\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=\"Authentication Rate Limits - QA.tech Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Configure authentication rate limits to prevent issues during parallel testing\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://qatech.mintlify.app/_mintlify/api/og/v2?division=Troubleshooting\u0026amp;title=Authentication+Rate+Limits\u0026amp;description=Configure+authentication+rate+limits+to+prevent+issues+during+parallel+testing\u0026amp;theme=1ae391f617cb8a464ae673d4\u0026amp;signature=2b74973978cffb867404ad06063908190b986c01d3186192cfb9db0fe6375c55\">\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/qatech/iMlZaRlMvi7xyIQO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"QA.tech Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4F46E5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.qa.tech/configuration/auth-rate-limits\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/configuration/auth-rate-limits.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.qa.tech/#organization\",\"name\":\"QA.tech Docs\",\"url\":\"https://docs.qa.tech\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/qatech/tn7srSYA67gRWgfI/logo/logo.svg?fit=max\u0026auto=format\u0026n=tn7srSYA67gRWgfI\u0026q=85\u0026s=2f0e3745a8079e74e66e0a904232888f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.qa.tech#website\",\"name\":\"QA.tech Docs\",\"url\":\"https://docs.qa.tech\",\"publisher\":{\"@id\":\"https://docs.qa.tech/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.qa.tech/configuration/auth-rate-limits#webpage\",\"url\":\"https://docs.qa.tech/configuration/auth-rate-limits\",\"name\":\"Authentication Rate Limits\",\"description\":\"Configure authentication rate limits to prevent issues during parallel testing\",\"dateModified\":\"2026-01-27T16:48:00.379Z\",\"isPartOf\":{\"@id\":\"https://docs.qa.tech#website\"},\"breadcrumb\":{\"@id\":\"https://docs.qa.tech/configuration/auth-rate-limits#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.qa.tech/configuration/auth-rate-limits#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Get Started\",\"item\":\"https://docs.qa.tech/best-practices/creating-tests\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Troubleshooting\",\"item\":\"https://docs.qa.tech/best-practices/troubleshooting\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Authentication Rate Limits\",\"item\":\"https://docs.qa.tech/configuration/auth-rate-limits\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.qa.tech/configuration/auth-rate-limits#article\",\"headline\":\"Authentication Rate Limits\",\"name\":\"Authentication Rate Limits\",\"description\":\"Configure authentication rate limits to prevent issues during parallel testing\",\"url\":\"https://docs.qa.tech/configuration/auth-rate-limits\",\"mainEntityOfPage\":{\"@id\":\"https://docs.qa.tech/configuration/auth-rate-limits#webpage\"},\"dateModified\":\"2026-01-27T16:48:00.379Z\",\"publisher\":{\"@id\":\"https://docs.qa.tech/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.qa.tech#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"QA.tech Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"QA.tech Docs","nav":{"global":{"anchors":[{"anchor":"Blog","icon":"newspaper","href":"https://qa.tech/blog/"}]},"tabs":[{"tab":"Get Started","icon":"book-open","pages":[{"title":"Get Started","href":"/core-concepts/ai-agent-testing"}]},{"tab":"AI Assistant","icon":"message-bot","pages":[{"title":"AI Assistant","href":"/core-concepts/ai-chat-assistant"}]},{"tab":"Build Tests","icon":"list-check","groups":[{"group":"Get Started","pages":[{"title":"Creating Tests","sidebarTitle":"Creating Tests","icon":"plus","href":"/best-practices/creating-tests"},{"title":"Test drafts and revisions","sidebarTitle":"Test Drafts and Revisions","icon":"toggle-on","href":"/core-concepts/test-drafts"},{"title":"Revision History","icon":"clock-rotate-left","href":"/test-features/revision-history"},{"group":"Troubleshooting","root":{"title":"Troubleshooting","description":"What can you do to make QA.tech work as well as possible for you?","icon":"triangle-exclamation","href":"/best-practices/troubleshooting"},"expanded":false,"pages":[{"title":"Authentication Rate Limits","icon":"shield-check","href":"/configuration/auth-rate-limits"}]}]},{"group":"Organize and run","pages":[{"title":"Shared Steps","description":"Reuse the same sequence of steps across multiple tests using dependencies, agent knowledge, or assistant docs","icon":"copy","href":"/core-concepts/shared-steps"},{"title":"Ownership","icon":"user-check","href":"/core-concepts/ownership"},{"title":"Parallel Tests","icon":"layer-group","href":"/core-concepts/parallel-test-execution"},{"title":"Agent Cache","icon":"bolt","href":"/core-concepts/agent-cache"},{"title":"Session State Lifetime","icon":"clock","href":"/core-concepts/session-state-lifetime"},{"title":"Session sync","icon":"rotate","href":"/core-concepts/session-sync"},{"title":"Limits","icon":"road-barrier","href":"/core-concepts/limits"}]},{"group":"Agents","pages":[{"title":"Agents","sidebarTitle":"Overview","icon":"robot","href":"/build-tests/agents"},{"group":"Web","icon":"globe","root":{"title":"Web","icon":"globe","href":"/build-tests/web"},"expanded":false,"pages":[{"title":"Testing API Calls","icon":"plug","href":"/test-features/api-calls"},{"title":"File Uploads","icon":"file-arrow-up","href":"/test-features/file-uploads"},{"title":"File Downloads","icon":"file-arrow-down","href":"/test-features/file-downloads"},{"title":"Dialog Handling","icon":"message-exclamation","href":"/test-features/dialog-handling"},{"title":"Dynamic Navigation","icon":"route","href":"/test-features/dynamic-navigation"},{"title":"Copy and Paste","icon":"clipboard","href":"/test-features/copy-paste"}]},{"group":"API","icon":"network-wired","root":{"title":"API Testing","sidebarTitle":"API","icon":"network-wired","href":"/core-concepts/api-testing"},"expanded":false,"pages":[{"title":"Creating API Tests","icon":"flask","href":"/best-practices/creating-api-tests"}]},{"title":"Mobile App Testing","sidebarTitle":"Mobile","icon":"mobile","href":"/test-features/mobile-app-testing"}]},{"group":"Test data","pages":[{"title":"Test Data","icon":"database","href":"/core-concepts/test-data"},{"title":"Configs","icon":"gear","href":"/core-concepts/configs"},{"title":"Config Environment Overrides","icon":"sliders","href":"/core-concepts/config-environment-overrides"},{"title":"Device Presets","icon":"browser","href":"/test-features/device-presets"}]},{"group":"Use Cases","pages":[{"title":"Test Responsiveness","icon":"tablet-screen-button","href":"/test-features/test-responsiveness"},{"title":"Authentication","sidebarTitle":"Test Authentication","icon":"key","href":"/best-practices/handle-auth"},{"title":"BankID","icon":"id-card","href":"/applications/se-bank-id"},{"title":"Email Inbox","icon":"envelope","href":"/test-features/email-inbox"},{"title":"SMS Inbox","icon":"comment-sms","href":"/test-features/sms-inbox"},{"title":"Cross-Application Tests","icon":"diagram-project","href":"/test-features/cross-application-tests"}]}]},{"tab":"PR Testing","icon":"code-pull-request","pages":[{"title":"PR Testing","href":"/pr-testing/overview"}]},{"tab":"Regression Testing","icon":"clipboard-list","pages":[{"title":"Regression Testing","href":"/regression-testing/overview"}]},{"tab":"Integrations","icon":"plug","pages":[{"title":"Integrations","href":"/configuration/github-app"}]},{"tab":"API and CLI","icon":"square-terminal","pages":[{"title":"API and CLI","href":"/api-reference/introduction"}]}]},"title":"Authentication Rate Limits - QA.tech Docs","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":[],"chunks":[]}