If your business needs multiple parties to be able to approve updates to or actions taken by wallets, the most common setup is to set up a key quorum consisting of a set of multiple authorization keys or users in your authentication system.You can define the quorum such that a certain number of members of the quorum must approve actions to wallets. This is known as the quorum’s authorization threshold. Privy’s TEE infrastructure enforces that at least that many members of the quorum must sign the request to take an action with a wallet. To allow multiple parties to unilaterally approve wallet actions, you can set this threshold to 1.Quorum approvals allow your app to create setups where multiple parties must sign-off on actions taken by wallets, enhancing security for sensitive operations.Key quorums can also include other key quorums as members (one level deep). This enables hierarchical approval structures. For example, a “Security Team” quorum can nest inside a broader “Org Admins” quorum. Once the nested quorum meets its own authorization threshold, it counts as one approval toward the parent quorum’s threshold.Learn more about configuring quorum approvals below.
Key quorums
Use key quorums to configure quorum approvals on wallet actions.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Privy Docs","colors":{"primary":"#010110","light":"#FFFFFF"},"logo":{"light":"https://mintcdn.com/privy-c2af3412/Ih_Fo3QYM486gzWq/logo/privy-logo-light.png?fit=max\u0026auto=format\u0026n=Ih_Fo3QYM486gzWq\u0026q=85\u0026s=bd297b680ace8a13db4d9ce977f93180","dark":"https://mintcdn.com/privy-c2af3412/Ih_Fo3QYM486gzWq/logo/privy-logo-dark.png?fit=max\u0026auto=format\u0026n=Ih_Fo3QYM486gzWq\u0026q=85\u0026s=24d83970695ab19a1803a2eb00dbea4e"},"favicon":"https://mintcdn.com/privy-c2af3412/YByWVKlFbSpnpSJG/favicon.png?fit=max\u0026auto=format\u0026n=YByWVKlFbSpnpSJG\u0026q=85\u0026s=ee4038168ea586e5f72041e5e2a1f5c8","api":{"openapi":{"source":"https://api.staging.privy.io/v1/openapi.json"},"playground":{"display":"interactive"},"examples":{"languages":["curl","java","javascript","php","go"]},"mdx":{"server":"https://api.privy.io"}},"background":{"color":{"light":"#FFFFFF","dark":"#010110"}},"navbar":{"links":[{"href":"https://demo.privy.io","label":"Demo"},{"href":"https://privy.io/slack","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.privy.io"}},"seo":{"metatags":{"og:type":"website","og:site_name":"Privy Docs","og:image":"https://assets.privy.io/docs-og.png","twitter:title":"Privy Docs","twitter:card":"summary_large_image","twitter:image":"https://assets.privy.io/docs-og.png"},"organization":{"id":"https://www.privy.io/#organization","name":"Privy","url":"https://www.privy.io","logo":"https://assets.privy.io/docs-og.png","sameAs":["https://x.com/privy_io","https://github.com/privy-io"]}},"styling":{"codeblocks":"system","latex":true},"integrations":{"gtm":{"tagId":"GTM-WV9MVTB3"}},"contextual":{"options":["claude","chatgpt","cursor","vscode","mcp","copy","view"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"privy-c2af3412","hasAudioNarration":false,"actualSubdomain":"privy-c2af3412","customDomains":["docs.privy.io"],"gitSource":{"type":"github","owner":"privy-io","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"issues":true,"thumbs":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aee6add0cb48ef71e0f1964","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"default","tag":"Wallets","count":291},{"language":"default","tag":"API reference","count":255},{"language":"default","tag":"Recipes","count":141},{"language":"default","tag":"All recipes","count":140},{"language":"default","tag":"Identity","count":137},{"language":"default","tag":"Signatures and transactions","count":91},{"language":"default","tag":"Users","count":87},{"language":"default","tag":"Basics","count":86},{"language":"default","tag":"Financial flows","count":82},{"language":"default","tag":"Controls","count":76}]},"assistantConfig":{},"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":"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":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/privy-c2af3412/106de3f982828597/style.css"}],"page":{"pagePath":"controls/common-use-cases/quorum-approval","slug":"/controls/common-use-cases/quorum-approval","pageMetadata":{"title":"Quorum approvals","description":null,"href":"/controls/common-use-cases/quorum-approval"},"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`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Card,OptimizedImage}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`If your business needs multiple parties to be able to approve updates to or actions taken by wallets, the most common setup is to set up a `,_jsx(_components.a,{href:`/controls/key-quorum/overview`,children:`key quorum`}),` consisting of a set of multiple `,_jsx(_components.a,{href:`/controls/authorization-keys/keys/create/key`,children:`authorization keys`}),` or `,_jsx(_components.a,{href:`/controls/authorization-keys/keys/create/user/overview`,children:`users`}),` in your authentication system.`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=a65b82a9df67965ebc6219a84979ad37`,alt:`quorum approval`,\"data-og-width\":`5529`,width:`5529`,\"data-og-height\":`3949`,height:`3949`,\"data-path\":`images/owner-setups/quorum.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=280\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=29fb8d11469bdea77f6ab33a04e15401 280w, https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=560\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=e4f6faedb48d53702a49926f5d85afc1 560w, https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=840\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=1c9407844b34cfa16030f8ba94798764 840w, https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=1100\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=11e9302738bde727a4021422bc1e6ee9 1100w, https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=1650\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=82a4a1dfcf568aacef2b1cbfd927bab3 1650w, https://mintcdn.com/privy-c2af3412/zlmLhiIqRR7ViKN0/images/owner-setups/quorum.png?w=2500\u0026fit=max\u0026auto=format\u0026n=zlmLhiIqRR7ViKN0\u0026q=85\u0026s=1f91df9fa159b0549c47985b18e29f93 2500w`}),`\n`,_jsxs(_components.p,{children:[`You can define the quorum such that a certain number of members of the quorum must approve actions to wallets. This is known as the quorum’s `,_jsx(_components.strong,{children:`authorization threshold`}),`. Privy’s TEE infrastructure enforces that at least that many members of the quorum must sign the request to take an action with a wallet. To allow multiple parties to unilaterally approve wallet actions, you can set this threshold to 1.`]}),`\n`,_jsx(_components.p,{children:`Quorum approvals allow your app to create setups where multiple parties must sign-off on actions taken by wallets, enhancing security for sensitive operations.`}),`\n`,_jsx(_components.p,{children:`Key quorums can also include other key quorums as members (one level deep). This enables hierarchical approval structures. For example, a “Security Team” quorum can nest inside a broader “Org Admins” quorum. Once the nested quorum meets its own authorization threshold, it counts as one approval toward the parent quorum’s threshold.`}),`\n`,_jsx(_components.p,{children:`Learn more about configuring quorum approvals below.`}),`\n`,_jsx(Card,{title:`Key quorums`,href:`/controls/key-quorum/overview`,icon:`diagram-project`,children:_jsx(_components.p,{children:`Use key quorums to configure quorum approvals on wallet actions.`})})]})}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":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Quorum approvals","description":null,"href":"/controls/common-use-cases/quorum-approval"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/privy-c2af3412/9a6cfa36ced76db0/welcome.js","/_mintlify/custom/privy-c2af3412/1af79d46bd64cd8b/fullstory.js","/_mintlify/custom/privy-c2af3412/e4d91321024fde21/recipes/recipes-search.js","/_mintlify/custom/privy-c2af3412/d31c5451398ab22c/check-links.js"],"subdomain":"privy-c2af3412","siteName":"Privy Docs","title":"Quorum approvals - Privy Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T22:36:08.671Z","originalFileLocation":"controls/common-use-cases/quorum-approval.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=\"application-name\" content=\"Privy 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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Quorum approvals - Privy Docs\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Privy Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.privy.io/controls/common-use-cases/quorum-approval\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://assets.privy.io/docs-og.png\">\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=\"Privy Docs\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://assets.privy.io/docs-og.png\">\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/privy-c2af3412/bJgmnaRQwH8sO8y5/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Privy Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#010110\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.privy.io/controls/common-use-cases/quorum-approval\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/controls/common-use-cases/quorum-approval.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://www.privy.io/#organization\",\"name\":\"Privy\",\"url\":\"https://www.privy.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://assets.privy.io/docs-og.png\"},\"sameAs\":[\"https://x.com/privy_io\",\"https://github.com/privy-io\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.privy.io#website\",\"name\":\"Privy Docs\",\"url\":\"https://docs.privy.io\",\"publisher\":{\"@id\":\"https://www.privy.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval#webpage\",\"url\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval\",\"name\":\"Quorum approvals\",\"dateModified\":\"2026-11-06T22:36:08.671Z\",\"isPartOf\":{\"@id\":\"https://docs.privy.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Controls\",\"item\":\"https://docs.privy.io/controls/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Common configurations\",\"item\":\"https://docs.privy.io/controls/common-use-cases/single-party-approval\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Quorum approvals\",\"item\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval#article\",\"headline\":\"Quorum approvals\",\"name\":\"Quorum approvals\",\"url\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval\",\"mainEntityOfPage\":{\"@id\":\"https://docs.privy.io/controls/common-use-cases/quorum-approval#webpage\"},\"image\":\"https://assets.privy.io/docs-og.png\",\"dateModified\":\"2026-11-06T22:36:08.671Z\",\"publisher\":{\"@id\":\"https://www.privy.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.privy.io#website\"}}]}\u003c/script>","siteName":"Privy Docs","nav":{"global":null,"tabs":[{"tab":"Basics","pages":[{"title":"Basics","href":"/basics/get-started/about"}]},{"tab":"Wallets","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/wallets/overview"}]},{"item":"Embedded wallets","pages":[{"title":"Embedded wallets","href":"/wallets/overview/embedded"}]},{"item":"Organization wallets","pages":[{"title":"Organization wallets","href":"/organizations/overview"}]},{"item":"External wallets","pages":[{"title":"External wallets","href":"/wallets/connectors/overview"}]},{"item":"Signatures and transactions","pages":[{"title":"Signatures and transactions","href":"/wallets/signatures-and-transactions"}]},{"item":"Balances and webhooks","pages":[{"title":"Balances and webhooks","href":"/wallets/gas-and-asset-management/assets/overview"}]},{"item":"Gas and fee management","pages":[{"title":"Gas and fee management","href":"/wallets/gas-and-asset-management/gas/overview"}]}],"pages":[{"title":"Wallets","href":"/wallets/overview"}]},{"tab":"Financial flows","menu":[{"item":"Overview","pages":[{"title":"Overview","href":"/financial-flows/overview"}]},{"item":"Deposits","pages":[{"title":"Deposits","href":"/financial-flows/deposits/overview"}]},{"item":"Payouts","pages":[{"title":"Payouts","href":"/financial-flows/payouts/overview"}]},{"item":"Earn","pages":[{"title":"Earn","href":"/wallets/actions/earn/overview"}]},{"item":"Cards","pages":[{"title":"Cards","href":"/financial-flows/cards/overview"}]},{"item":"Trade","pages":[{"title":"Trade","href":"/wallets/actions/swap/overview"}]},{"item":"Monetization","pages":[{"title":"Monetization","href":"/financial-flows/monetization"}]},{"item":"Treasury management","pages":[{"title":"Treasury management","href":"/treasury-management/overview"}]},{"item":"Private transactions","pages":[{"title":"Private transactions","href":"/financial-flows/private-transactions"}]}],"pages":[{"title":"Financial flows","href":"/financial-flows/overview"}]},{"tab":"Controls and policies","menu":[{"item":"Controls","groups":[{"group":"Controls","pages":[{"title":"Controls and policies","sidebarTitle":"Overview","href":"/controls/overview"},{"group":"Common configurations","pages":[{"title":"Single-party approvals","description":null,"href":"/controls/common-use-cases/single-party-approval"},{"title":"Quorum approvals","href":"/controls/common-use-cases/quorum-approval"},{"title":"Delegating permissions","description":null,"href":"/controls/common-use-cases/delegation"}]}]},{"group":"Owners \u0026 signers","pages":[{"title":"Overview","sidebarTitle":"Controls overview","href":"/controls/authorization-keys/owners/overview"},{"title":"Types of owners \u0026 signers","href":"/controls/authorization-keys/owners/types"}]},{"group":"Configuring your wallets","pages":[{"title":null,"href":"/controls/authorization-keys/owners/configuration/overview"},{"group":"Self-custodial user wallets","pages":[{"title":"Overview","href":"/controls/authorization-keys/owners/configuration/user/overview"},{"title":"Enabling offline actions","href":"/controls/authorization-keys/owners/configuration/user/offline"},{"sidebarTitle":"Requiring users and servers to approve transactions","title":"Requiring user and server approvals","href":"/controls/authorization-keys/owners/configuration/user/dual-approval"},{"title":"Sending transactions from your server","href":"/controls/authorization-keys/owners/configuration/user/server-transactions"},{"title":"Updating wallets from your server","href":"/controls/authorization-keys/owners/configuration/user/server-updates"},{"title":"Exporting wallets from your server","href":"/controls/authorization-keys/owners/configuration/user/server-export"}]},{"title":"Programmable controls","href":"/controls/authorization-keys/owners/configuration/programmable"}]},{"group":"Creating owners \u0026 signers","pages":[{"group":"Users","pages":[{"sidebarTitle":"Overview","title":"Users","href":"/controls/authorization-keys/keys/create/user/overview"},{"sidebarTitle":"Authentication settings","title":"Configure authentication settings","href":"/controls/authorization-keys/keys/create/user/authentication"},{"title":"Using user owners \u0026 signers","href":"/controls/authorization-keys/keys/create/user/request"}]},{"title":"Authorization keys","href":"/controls/authorization-keys/keys/create/key"},{"title":"Key quorums","href":"/controls/authorization-keys/keys/create/key-quorum"}]},{"group":"Using owners \u0026 signers","pages":[{"sidebarTitle":"Overview","title":"Using owners","href":"/controls/authorization-keys/using-owners/overview"},{"group":"Owners","pages":[{"sidebarTitle":"Owning resources","title":"Owning resources with owners","href":"/controls/authorization-keys/using-owners/assign"}]},{"group":"Additional signers","pages":[{"title":null,"href":"/wallets/using-wallets/signers/overview"},{"sidebarTitle":"Quickstart","title":"Enabling users or servers to execute transactions","href":"/wallets/using-wallets/signers/quickstart"},{"title":"Configure signers","href":"/wallets/using-wallets/signers/configure-signers"},{"title":"Add signers","href":"/wallets/using-wallets/signers/add-signers"},{"title":"Remove signers","href":"/wallets/using-wallets/signers/remove-signers"},{"title":"Use signers","href":"/wallets/using-wallets/signers/use-signers"}]},{"group":"Signing requests","pages":[{"sidebarTitle":"Overview","title":"Signing requests","href":"/controls/authorization-keys/using-owners/sign/overview"},{"title":"Signing on the client","href":"/controls/authorization-keys/using-owners/sign/signing-on-the-client"},{"title":"Signing on the server","href":"/controls/authorization-keys/using-owners/sign/signing-on-the-server"},{"group":"Advanced","pages":[{"title":"Signing with utility functions","href":"/controls/authorization-keys/using-owners/sign/utility-functions"},{"title":"Implementing signing directly","href":"/controls/authorization-keys/using-owners/sign/direct-implementation"}]}]}]},{"group":"Key quorums","pages":[{"title":"Overview","href":"/controls/key-quorum/overview"},{"title":"Creating key quorums","href":"/controls/key-quorum/create"},{"sidebarTitle":"Signing requests","title":"Signing requests with key quorums","href":"/controls/key-quorum/sign"}]}]},{"item":"Policies","pages":[{"title":"Policies","href":"/controls/policies/overview"}]},{"item":"Manual approvals","pages":[{"title":"Manual approvals","href":"/controls/dashboard/overview"}]}]},{"tab":"Identity","menu":[{"item":"Authentication","pages":[{"title":"Authentication","href":"/authentication/overview"}]},{"item":"Users","pages":[{"title":"Users","href":"/user-management/users/overview"}]},{"item":"KYC and KYB","pages":[{"title":"KYC and KYB","href":"/kyc-kyb/overview"}]}],"pages":[{"title":"Identity","href":"/authentication/overview"}]},{"tab":"Security","pages":[{"title":"Security","href":"/security/overview"}]},{"tab":"Recipes","pages":[{"title":"Recipes","href":"/recipes/overview"}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Quorum approvals - Privy Docs","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-BFbLClTf.js","lightbox-handle-r17bVUz3.js"]}