{"version":1,"pages":[{"id":"GQgYkfJYVBWCjLKGAQvt","title":"Welcome to Picket","pathname":"/picket-docs","siteSpaceId":"sitesp_j7TaJ","emoji":"1f44b","description":"The easiest way to authenticate wallets & token gate anything"},{"id":"7vzFjsFF74CbB0d30qyW","title":"Quick Start Guides","pathname":"/picket-docs/quick-start-guides/quick-start-guides","siteSpaceId":"sitesp_j7TaJ","emoji":"1f680","description":"Get up and running with wallet authentication and token gating in minutes","breadcrumbs":[{"label":"Quick Start Guides"}]},{"id":"tGMw8MvkRvzGc9R96dcO","title":"Start Here: Setup","pathname":"/picket-docs/quick-start-guides/quick-start-guides/start-here-setup","siteSpaceId":"sitesp_j7TaJ","emoji":"2699","description":"Get your API key and install your picket library of choice","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"3ZyWHiDxag4LjDLwcESf","title":"Wallet Login","pathname":"/picket-docs/quick-start-guides/quick-start-guides/wallet-login","siteSpaceId":"sitesp_j7TaJ","emoji":"1f510","description":"A guide to start authenticating wallets in minutes.","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"kI2UKbucRGpukTikhLez","title":"Token Gating  (Ethereum / EVM)","pathname":"/picket-docs/quick-start-guides/quick-start-guides/token-gating-ethereum-evm","siteSpaceId":"sitesp_j7TaJ","emoji":"1fa99","description":"A guide to start token gating anything in minutes.","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"MKfcQAY9LbLh6p4odkNS","title":"Token Gating (Solana)","pathname":"/picket-docs/quick-start-guides/quick-start-guides/token-gating-solana","siteSpaceId":"sitesp_j7TaJ","emoji":"1f93a","description":"A guide to start token gating anything in minutes.","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"Gkrp3QCAYoNpZzmYXABz","title":"Incremental Token Gating","pathname":"/picket-docs/quick-start-guides/quick-start-guides/incremental-token-gating","siteSpaceId":"sitesp_j7TaJ","emoji":"1f939-2642","description":"A guide to start incremental token gating anything in minutes.","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"rjSDuw5RDppq3t6nbD8k","title":"Restrict Access to Specific Wallets","pathname":"/picket-docs/quick-start-guides/quick-start-guides/restrict-access-to-specific-wallets","siteSpaceId":"sitesp_j7TaJ","emoji":"26d4","description":"A guide to restricting access based on a list of allowed wallet addresses","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"3YW8Rjmq9MHeaksVLvOG","title":"Working with Access Tokens","pathname":"/picket-docs/quick-start-guides/quick-start-guides/working-with-access-tokens","siteSpaceId":"sitesp_j7TaJ","emoji":"1f511","description":"You've logged your user in, you have their access token, what's next?","breadcrumbs":[{"label":"Quick Start Guides"},{"label":"Quick Start Guides","emoji":"1f680"}]},{"id":"wOiQfj15gbvbLjshSQGT","title":"Concepts","pathname":"/picket-docs/reference/concepts","siteSpaceId":"sitesp_j7TaJ","emoji":"1f393","description":"","breadcrumbs":[{"label":"Reference"}]},{"id":"Khn8ZllHmPYmdbM1sf3w","title":"Auth Flow","pathname":"/picket-docs/reference/concepts/auth-flow","siteSpaceId":"sitesp_j7TaJ","emoji":"1f30a","description":"This article describes the steps required to authenticate and authorize wallets for purposes such as token gating.","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"xBE7E8MauA4FdmHRdYer","title":"Connect","pathname":"/picket-docs/reference/concepts/connect","siteSpaceId":"sitesp_j7TaJ","emoji":"1f5c3","description":"Connecting wallets and picket wallet objects","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"dRpPOqOVSOwREaeIDnse","title":"Signatures","pathname":"/picket-docs/reference/concepts/signatures","siteSpaceId":"sitesp_j7TaJ","emoji":"270d","description":"","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"Eh0PJYBYt2eNkzpheLc0","title":"Authentication and Authorization","pathname":"/picket-docs/reference/concepts/authentication-and-authorization","siteSpaceId":"sitesp_j7TaJ","emoji":"1f510","description":"Wallet authentication and authorization","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"AFDGfJuxAwlRjZ06J1Cc","title":"Incremental Authorization","pathname":"/picket-docs/reference/concepts/incremental-authorization","siteSpaceId":"sitesp_j7TaJ","emoji":"1f939","description":"Incrementally authorize users for different parts of your app","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"vD5ZNyxmvYvyOEnE2eHK","title":"Access Tokens","pathname":"/picket-docs/reference/concepts/access-tokens","siteSpaceId":"sitesp_j7TaJ","emoji":"1fa99","description":"Access tokens represent a secure and credible verification of wallet and/or token ownership that can be leveraged repeatedly without additional user interaction until expiration.","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"ZdRJgEzGTJum3GbnkxZX","title":"Testing","pathname":"/picket-docs/reference/concepts/testing","siteSpaceId":"sitesp_j7TaJ","emoji":"1f9ea","description":"Tips & tricks for testing your application integrations with Picket","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"fNm6LiHtf61LWvT1AMy5","title":"Errors","pathname":"/picket-docs/reference/concepts/errors","siteSpaceId":"sitesp_j7TaJ","emoji":"2049","description":"Error codes you may come across and their meaning. We work hard to ensure you don't need this page often.","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"8kwAbutx9BcK41I4EFwN","title":"Supported Blockchains","pathname":"/picket-docs/reference/concepts/supported-blockchains","siteSpaceId":"sitesp_j7TaJ","emoji":"26d3","description":"","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"X6poTnxuv6mMBcJQmHRC","title":"Supported Languages (Localization)","pathname":"/picket-docs/reference/concepts/supported-languages-localization","siteSpaceId":"sitesp_j7TaJ","emoji":"1f310","description":"Picket supports automatic signing message translation into over 100 languages.","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"TsjhTvlXI5FE4nOTfGfb","title":"Modal Themes","pathname":"/picket-docs/reference/concepts/modal-themes","siteSpaceId":"sitesp_j7TaJ","emoji":"1f3a8","description":"","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"3G0odfg5YEcPTvcjCTaA","title":"Open Source Web3 Client Libraries","pathname":"/picket-docs/reference/concepts/open-source-web3-client-libraries","siteSpaceId":"sitesp_j7TaJ","emoji":"1f4bf","description":"","breadcrumbs":[{"label":"Reference"},{"label":"Concepts","emoji":"1f393"}]},{"id":"eMPu7hM7DrKG1NaVEicr","title":"Libraries and SDKs","pathname":"/picket-docs/reference/libraries-and-sdks","siteSpaceId":"sitesp_j7TaJ","emoji":"1f4da","description":"","breadcrumbs":[{"label":"Reference"}]},{"id":"BVoMmGpoh2EZ1z61fRkQ","title":"Javascript Library - picket-js","pathname":"/picket-docs/reference/libraries-and-sdks/javascript-library-picket-js","siteSpaceId":"sitesp_j7TaJ","description":"Getting started with picket-js","breadcrumbs":[{"label":"Reference"},{"label":"Libraries and SDKs","emoji":"1f4da"}]},{"id":"7QI5tTuBaMr2ThFDgKw8","title":"React SDK - picket-react","pathname":"/picket-docs/reference/libraries-and-sdks/react-sdk-picket-react","siteSpaceId":"sitesp_j7TaJ","description":"The Picket React SDK, picket-react, is a JavaScript library for integrating Picket into React apps. It gives access to a Picket context provider and custom hook for securing your app.","breadcrumbs":[{"label":"Reference"},{"label":"Libraries and SDKs","emoji":"1f4da"}]},{"id":"Cq7T2ThG05qVsvKueqxQ","title":"Node.js Library - picket-node","pathname":"/picket-docs/reference/libraries-and-sdks/node.js-library-picket-node","siteSpaceId":"sitesp_j7TaJ","description":"Server side library for accessing picket endpoints.","breadcrumbs":[{"label":"Reference"},{"label":"Libraries and SDKs","emoji":"1f4da"}]},{"id":"g9ZqX8CwONGYJzCjCrex","title":"Go Library - picket-go","pathname":"/picket-docs/reference/libraries-and-sdks/go-library-picket-go","siteSpaceId":"sitesp_j7TaJ","description":"The official Go library for the Picket API","breadcrumbs":[{"label":"Reference"},{"label":"Libraries and SDKs","emoji":"1f4da"}]},{"id":"CLyXmjAj5NZg2SJMKAG3","title":"Python Library - picket-python","pathname":"/picket-docs/reference/libraries-and-sdks/python-library-picket-python","siteSpaceId":"sitesp_j7TaJ","description":"The official Python library for the Picket API","breadcrumbs":[{"label":"Reference"},{"label":"Libraries and SDKs","emoji":"1f4da"}]},{"id":"HzdzDnJvCE8M7EY21q8b","title":"Integrations","pathname":"/picket-docs/reference/integrations","siteSpaceId":"sitesp_j7TaJ","emoji":"1f525","description":"Picket builds ready-to-go integrations for the tools you use most with the goal of making wallet login and token gating as accessible as possible everywhere.","breadcrumbs":[{"label":"Reference"}]},{"id":"F7erq4DuxJEhonFY2QTa","title":"Picket Authentication with RainbowKit","pathname":"/picket-docs/reference/integrations/picket-authentication-with-rainbowkit","siteSpaceId":"sitesp_j7TaJ","emoji":"1f308","description":"Learn how to use Picket + RainbowKit to authenticate users","breadcrumbs":[{"label":"Reference"},{"label":"Integrations","emoji":"1f525"}]},{"id":"0DtlswHpFBt20HdKdSwl","title":"Supabase","pathname":"/picket-docs/reference/integrations/supabase","siteSpaceId":"sitesp_j7TaJ","emoji":"26a1","description":"A guide to allowing users to login with their wallet to your Supabase-powered app!","breadcrumbs":[{"label":"Reference"},{"label":"Integrations","emoji":"1f525"}]},{"id":"NtUWnQUItNHsmGwDk1ot","title":"Amazon Cognito","pathname":"/picket-docs/reference/integrations/amazon-cognito","siteSpaceId":"sitesp_j7TaJ","emoji":"2601","description":"A guide to get you started with using Picket as a Federated Identity Provider for Amazon Cognito","breadcrumbs":[{"label":"Reference"},{"label":"Integrations","emoji":"1f525"}]},{"id":"VCfnjaZVb88pJID9W26M","title":"Picket Shopify App - Merchant Documentation","pathname":"/picket-docs/reference/integrations/picket-shopify-app-merchant-documentation","siteSpaceId":"sitesp_j7TaJ","emoji":"1f6cd","description":"Token gated commerce with a few simple clicks from your Shopify dashboard","breadcrumbs":[{"label":"Reference"},{"label":"Integrations","emoji":"1f525"}]},{"id":"3J6UhAAGJJc7XUotJpF1","title":"Picket BigCommerce App - Merchant Documentation","pathname":"/picket-docs/reference/integrations/picket-bigcommerce-app-merchant-documentation","siteSpaceId":"sitesp_j7TaJ","emoji":"1f6d2","description":"Token gated commerce with a few simple clicks from your BigCommerce dashboard","breadcrumbs":[{"label":"Reference"},{"label":"Integrations","emoji":"1f525"}]},{"id":"Ec9bdoUQ5ddIXuiSDhin","title":"API Reference","pathname":"/picket-docs/reference/api-reference","siteSpaceId":"sitesp_j7TaJ","emoji":"1f4d6","description":"Open API 3.0 Spec","breadcrumbs":[{"label":"Reference"}]},{"id":"xYKoGcMRrvZ7k0m91RQV","title":"Projects & API Keys","pathname":"/picket-docs/reference/api-reference/projects-and-api-keys","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"lM1DjSUd5SXBKYBZeTKX","title":"Auth","pathname":"/picket-docs/reference/api-reference/auth","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"D3U6jRB6rMXGIyVyTo09","title":"Chains","pathname":"/picket-docs/reference/api-reference/chains","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"0aWRzXrcS0mAVDvuCjS7","title":"Wallets","pathname":"/picket-docs/reference/api-reference/wallets","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"kLzi2G04RBdSBwHKVQX8","title":"Contracts","pathname":"/picket-docs/reference/api-reference/contracts","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"dPPamBF9HczZwfM6WTfF","title":"OAuth 2.0","pathname":"/picket-docs/reference/api-reference/oauth-2.0","siteSpaceId":"sitesp_j7TaJ","description":"","breadcrumbs":[{"label":"Reference"},{"label":"API Reference","emoji":"1f4d6"}]},{"id":"o09oadDXIjhPFCY0QcN4","title":"Sign-In with Wallet (React)","pathname":"/picket-docs/tutorials/sign-in-with-wallet-react","siteSpaceId":"sitesp_j7TaJ","emoji":"1f30e","description":"","breadcrumbs":[{"label":"Tutorials","emoji":"1f579"}]},{"id":"Uf3HVBSG0NmRaSHBC6z1","title":"Token Gated Photo Board (React)","pathname":"/picket-docs/tutorials/token-gated-photo-board-react","siteSpaceId":"sitesp_j7TaJ","emoji":"1f3f0","description":"","breadcrumbs":[{"label":"Tutorials","emoji":"1f579"}]},{"id":"Lp0ru9nhDdlzvfZ6zpD7","title":"Link a Wallet to a Web 2.0 Account","pathname":"/picket-docs/tutorials/link-a-wallet-to-a-web-2.0-account","siteSpaceId":"sitesp_j7TaJ","emoji":"1f517","description":"Picket can be used to verify wallet ownership for a user in an existing application. Once you've linked a wallet to a user's account, you start integrating web3 information into your app!","breadcrumbs":[{"label":"Tutorials","emoji":"1f579"}]},{"id":"SxtkFSOWbJkzGpD0k7Xs","title":"Incremental Authorization (React)","pathname":"/picket-docs/tutorials/incremental-authorization-react","siteSpaceId":"sitesp_j7TaJ","emoji":"1f90f","description":"Picket can incrementally authorize users for different NFTs, SPL tokens, and more!","breadcrumbs":[{"label":"Tutorials","emoji":"1f579"}]}]}