<!DOCTYPE html><html lang="en" class="inter_1d81deff-module__CYM0aG__variable papermono_89c757f2-module__6aS5zq__variable dark" data-banner-state="visible" data-assistant-state="closed" data-page-mode="none" data-current-path="/"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/><link rel="preload" href="/mintlify-assets/_next/static/media/83afe278b6a6bb3c.p.3a6ba036.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/mintlify-assets/_next/static/media/PaperMono_Variable.p.aa32f7a0.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/mintlify-assets/_next/static/media/f67ad414ed34149c.p.84166d94.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" as="image" href="https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-Black.svg?fit=max&amp;auto=format&amp;n=HsZKO51bNmpAasdT&amp;q=85&amp;s=211d0e7bbefc29ce3b8feee1a05d76ee"/><link rel="preload" as="image" href="https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-White.svg?fit=max&amp;auto=format&amp;n=HsZKO51bNmpAasdT&amp;q=85&amp;s=4839c7a50a8bee830e943705c648297c"/><link rel="stylesheet" href="/mintlify-assets/_next/static/chunks/462bacc63bed9960.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" data-precedence="next"/><link rel="stylesheet" href="/mintlify-assets/_next/static/chunks/bf5dec8f24f39796.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" data-precedence="next"/><style data-precedence="base-ui:low" data-href="base-ui-disable-scrollbar">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style><link rel="preload" as="script" fetchPriority="low" href="/mintlify-assets/_next/static/chunks/6d55b684068fd47e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH"/><script src="/mintlify-assets/_next/static/chunks/44795504c795ca32.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/9432468c8b78c66c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/f486afc314643ce1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/589d59471cdd24e3.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/turbopack-0a20109ab773001c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/6a5cc962566389c8.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/6daf1a73800e2a3b.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/e0a92978f6764f5d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><script src="/mintlify-assets/_next/static/chunks/ef83d4b60122b4a4.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" async=""></script><title>API reference - Pinecone Docs</title><meta name="description" content="Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go."/><meta name="application-name" content="Pinecone Docs"/><meta name="generator" content="Mintlify"/><meta name="msapplication-config" content="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/browserconfig.xml"/><meta name="apple-mobile-web-app-title" content="Pinecone Docs"/><meta name="msapplication-TileColor" content="#002BFF"/><meta name="google-site-verification" content="woTBImNAcYO-gseVfFKIzQrDRUmLWzFjBWrYbYkOTlI"/><link rel="canonical" href="https://docs.pinecone.io/reference/api/introduction"/><link rel="alternate" type="application/xml" href="/sitemap.xml"/><link rel="alternate" type="text/markdown" href="/reference/api/introduction.md"/><meta property="og:title" content="API reference - Pinecone Docs"/><meta property="og:description" content="Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go."/><meta property="og:url" content="https://docs.pinecone.io/reference/api/introduction"/><meta property="og:site_name" content="Pinecone Docs"/><meta property="og:image" content="https://www.pinecone.io/images/docs_og_image_v2.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="The vector database to build knowledgeable AI | Pinecone"/><meta name="twitter:description" content="Search through billions of items for similar matches to any object, in milliseconds. It&#x27;s the next generation of search, an API call away."/><meta name="twitter:image" content="https://www.pinecone.io/images/docs_og_image_v2.png"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/android-chrome-192x192.png" type="image/png" sizes="192x192" media="(prefers-color-scheme: light)"/><link rel="apple-touch-icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/apple-touch-icon.png" type="image/png" sizes="180x180"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon-16x16.png" type="image/png" sizes="16x16" media="(prefers-color-scheme: light)"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon-32x32.png" type="image/png" sizes="32x32" media="(prefers-color-scheme: light)"/><link rel="shortcut icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon.ico" type="image/x-icon" media="(prefers-color-scheme: light)"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/android-chrome-192x192.png" type="image/png" sizes="192x192" media="(prefers-color-scheme: dark)"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon-16x16.png" type="image/png" sizes="16x16" media="(prefers-color-scheme: dark)"/><link rel="icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon-32x32.png" type="image/png" sizes="32x32" media="(prefers-color-scheme: dark)"/><link rel="shortcut icon" href="/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon.ico" type="image/x-icon" media="(prefers-color-scheme: dark)"/><script type="text/javascript">!function(){var b="";
function a(p){if(p==null)return"/";p=""+p;if(""===p)return"/";return"/"===p.charAt(0)?p:"/"+p}
function u(p){if(p==null)return p;p=""+p;if(!p||p.charAt(p.length-1)==="/")return p.slice(0,-1);return p}
function i(p){if(p==null)return p;p=""+p;if(6<=p.length&&p.substring(p.length-6)==="/index")return p.substring(0,p.length-6);if("index"===p)return"";return p}
var p=(location.pathname||"").split("?")[0].split("#")[0]||"";
if(b)if(p===b)p="";else if(0===p.indexOf(b+"/"))p=p.substring(b.length);
p=a(p);p=u(p);p=i(p);p=""===p||"index"===p?"/":a(p);
document.documentElement.setAttribute("data-current-path",p);
}();</script><script type="text/javascript">(() => {
  const isIOS =
    /iP(hone|ad|od)/.test(navigator.userAgent) ||
    (/Macintosh/.test(navigator.userAgent) && navigator.maxTouchPoints > 1);
  if (!isIOS) return;
  const apply = () => {
    for (const meta of document.querySelectorAll('meta[name="viewport"]')) {
      const content = meta.getAttribute('content') || '';
      if (!content.includes('maximum-scale')) {
        meta.setAttribute('content', content + ', maximum-scale=1');
      }
    }
  };
  apply();
  new MutationObserver(apply).observe(document.head, {
    childList: true,
    subtree: true,
    attributes: true,
    attributeFilter: ['content'],
  });
})();</script><script type="text/javascript">!function(){
function read(){try{
var e=performance.getEntriesByType?performance.getEntriesByType("navigation"):[];
var st=(e[0]&&e[0].serverTiming)||[];
var g={};
for(var i=0;i<st.length;i++){var n=st[i].name,d=st[i].description;if(!d)continue;try{d=decodeURIComponent(d)}catch(x){}
if(n==="country")g.country=d;else if(n==="region")g.region=d;else if(n==="continent")g.continent=d;}
var w=window;w.mintlify=w.mintlify||{};w.mintlify.geo=g;
}catch(x){}}
read();document.addEventListener("DOMContentLoaded",read);
}();</script><script type="text/javascript">!function(){try{
var w=window;w.mintlify=w.mintlify||{};
var q=w.mintlify.__apiPlaygroundInputsQueue;
if(!Array.isArray(q)){q=[];w.mintlify.__apiPlaygroundInputsQueue=q;}
w.mintlify.api=w.mintlify.api||{};
w.mintlify.api.playground=w.mintlify.api.playground||{};
if(typeof w.mintlify.api.playground.setServerVariables!=="function"){
w.mintlify.api.playground.setServerVariables=function(v){q.push({type:"set",variables:v});};
}
if(typeof w.mintlify.api.playground.clearServerVariables!=="function"){
w.mintlify.api.playground.clearServerVariables=function(){q.push({type:"clear"});};
}
}catch(e){}}();</script><script type="text/javascript">(function(a,b){try{let c=document.getElementById("banner")?.innerText;if(c){for(let d=0;d<localStorage.length;d++){let e=localStorage.key(d);if(e?.endsWith(a)&&localStorage.getItem(e)===c)return void document.documentElement.setAttribute(b,"hidden")}document.documentElement.setAttribute(b,"visible");return}for(let c=0;c<localStorage.length;c++){let d=localStorage.key(c);if(d?.endsWith(a)&&localStorage.getItem(d))return void document.documentElement.setAttribute(b,"hidden")}document.documentElement.setAttribute(b,"visible")}catch(a){document.documentElement.setAttribute(b,"hidden")}})(
  "bannerDismissed",
  "data-banner-state",
)</script><script src="/mintlify-assets/_next/static/chunks/a6dad97d9634a72d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" noModule=""></script></head><body class="antialiased"><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","isDarkMode","system",null,["dark","light","true","false","system"],{"true":"dark","false":"light","dark":"dark","light":"light"},true,false)</script><script>(function(){try{var f=null;var v=f||localStorage.getItem("isDarkMode");if(v==='true')v='dark';else if(v==='false')v='light';if(v!=='light'&&v!=='dark'&&v!=='system')v="system";document.documentElement.setAttribute("data-theme-preference",v)}catch(e){}})();</script><blockquote class="sr-only" data-agent-docs-index="true" aria-hidden="true"><h2>Documentation Index</h2><p>Fetch the complete documentation index at:<!-- --> <a href="/llms.txt" tabindex="-1">/llms.txt</a></p><p>Use this file to discover all available pages before exploring further.</p></blockquote><style>:root{--banner-height:0px!important}</style><script id="_mintlify-banner-script">(function i(a,b,c,d,e){try{let f,g,h=[];try{h=window.location.pathname.split("/").filter(a=>""!==a&&"global"!==a).slice(0,2)}catch{h=[]}let i=h.find(a=>c.includes(a)),j=[];for(let c of(i?j.push(i):j.push(b),j.push("global"),j)){if(!c)continue;let b=a[c];if(b?.content){f=b.content,g=c;break}}if(!f)return void document.documentElement.setAttribute(d,"hidden");let k=!0,l=0;for(;l<localStorage.length;){let a=localStorage.key(l);if(l++,!a?.endsWith(e))continue;let b=localStorage.getItem(a);if(b&&b===f){k=!1;break}g&&(a.startsWith(`lang:${g}_`)||!a.startsWith("lang:"))&&(localStorage.removeItem(a),l--)}document.documentElement.setAttribute(d,k?"visible":"hidden")}catch(a){console.error(a),document.documentElement.setAttribute(d,"hidden")}})(
  {},
  "en",
  [],
  "data-banner-state",
  "bannerDismissed",
)</script><style>:root {
    --primary: 0 43 255;
    --primary-light: 30 134 238;
    --primary-dark: 0 43 255;
    --tooltip-foreground: 255 255 255;
    --background-light: 251 251 252;
    --background-dark: 23 23 23;
    --gray-50: 242 244 250;
    --gray-100: 238 239 245;
    --gray-200: 222 223 230;
    --gray-300: 206 207 213;
    --gray-400: 158 159 166;
    --gray-500: 111 113 119;
    --gray-600: 79 81 87;
    --gray-700: 62 63 70;
    --gray-800: 37 38 45;
    --gray-900: 22 24 30;
    --gray-950: 10 11 17;
  }</style><div class="relative antialiased text-gray-500 dark:text-gray-400"><script id="_mintlify-navbar-transition-script">(function(a){let b,c=(b="navbar-transition","maple"===a&&(b+="-maple"),b);function d(){let a=!1;a=window.scrollY>50;let b=document.getElementById(c);b&&b.hasAttribute("data-is-opaque")&&b.setAttribute("data-is-opaque",`${!!a}`)}let e=function(){let a=document.createElement("style"),b=`#${c}`;return a.appendChild(document.createTextNode(`${b},${b} *,${b} *::before,${b} *::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`)),document.head.appendChild(a),function(){window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(a)},1)}}();function f(){window.removeEventListener("scroll",d),document.removeEventListener("DOMContentLoaded",d),d(),e()}window.addEventListener("scroll",d,{passive:!0}),document.addEventListener("DOMContentLoaded",d),("requestAnimationFrame"in globalThis?requestAnimationFrame:setTimeout)(d),"complete"===document.readyState?f():window.addEventListener("load",f,{once:!0})})("mint")</script><script id="_mintlify-scroll-margin-script">(function () {
  var measure = function(){let a=document.querySelectorAll("[id='navbar'], [data-top-chrome]"),b=0;a.forEach(a=>{let c=a.getBoundingClientRect();c.height>0&&(b=Math.max(b,c.bottom))});let c=0,d=document.getElementById("content-container");if(d){let{overflowY:a}=getComputedStyle(d);("auto"===a||"scroll"===a)&&(c=Math.max(0,d.getBoundingClientRect().top))}let e=`${Math.round(Math.max(0,b-c))+40}px`,f=document.documentElement.style;f.getPropertyValue("--scroll-mt")!==e&&f.setProperty("--scroll-mt",e)};
  (function(a){let b=[],c=0,d="undefined"==typeof ResizeObserver?null:new ResizeObserver(f);function e(){let c=Array.from(document.querySelectorAll("[id='navbar'], [data-top-chrome]"));(c.length!==b.length||c.some((a,c)=>a!==b[c]))&&d&&(d.disconnect(),c.forEach(a=>d.observe(a))),b=c,a()}function f(){c||(c=requestAnimationFrame(()=>{c=0,e()}))}let g="[id='navbar'], [data-top-chrome]";function h(a){let b=a.target;if(b instanceof Element&&b.closest(g))return!0;for(let b of a.addedNodes)if(b instanceof Element&&(b.matches(g)||b.querySelector(g)))return!0;for(let b of a.removedNodes)if(b instanceof Element&&(b.matches(g)||b.querySelector(g)))return!0;return!1}new MutationObserver(a=>{a.some(h)&&f()}).observe(document.documentElement,{childList:!0,subtree:!0}),window.addEventListener("resize",f),"loading"===document.readyState&&document.addEventListener("DOMContentLoaded",e),e()})(measure);
  (function(a){let b=window.location.hash.slice(1);if(!b)return;function c(){return"smooth"===getComputedStyle(document.documentElement).scrollBehavior}function d(c){let d=document.getElementById(b);return!!d&&(a(),d.scrollIntoView(c?{behavior:c}:void 0),!0)}if("complete"===document.readyState)return void d();let e=new MutationObserver(()=>{!c()&&d("instant")&&f()});function f(){e.disconnect(),window.removeEventListener("load",g)}function g(){let a=c();f(),a&&requestAnimationFrame(()=>{d(),function(){let a=["wheel","touchstart","keydown","pointerdown"],c=0,e=window.scrollY,f=setInterval(()=>{c+=1;let a=document.getElementById(b);if(!a||c>=6)return g();let f=Math.abs(window.scrollY-e)>1;if(e=window.scrollY,f)return;let h=parseFloat(getComputedStyle(a).scrollMarginTop)||0;Math.abs(a.getBoundingClientRect().top-h)>4&&d()},350);function g(){clearInterval(f),a.forEach(a=>window.removeEventListener(a,g))}a.forEach(a=>window.addEventListener(a,g,{passive:!0}))}()})}window.addEventListener("load",g),e.observe(document.documentElement,{childList:!0,subtree:!0}),!c()&&d("instant")&&f()})(measure);
})();</script><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5RCSPVG" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><a href="#content-area" class="sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-50 focus:p-2 focus:text-sm focus:bg-background-light dark:focus:bg-background-dark focus:rounded-md focus:outline-primary dark:focus:outline-primary-light">Skip to main content</a><script>(function i(a,b,c,d){try{if(window.matchMedia("(max-width: 1024px)").matches||!d){document.documentElement.style.setProperty(c,"0px"),document.documentElement.setAttribute("data-assistant-state","closed"),d||localStorage.setItem(a,"false");return}let e=localStorage.getItem(a);if(null===e){document.documentElement.style.setProperty(c,"0px"),document.documentElement.setAttribute("data-assistant-state","closed");return}let f=JSON.parse(e),g=localStorage.getItem(b),h=null!==g?JSON.parse(g):368;document.documentElement.style.setProperty(c,f?h+"px":"0px"),document.documentElement.setAttribute("data-assistant-state",f?"open":"closed")}catch(a){document.documentElement.style.setProperty(c,"0px"),document.documentElement.setAttribute("data-assistant-state","closed")}})(
    "chat-assistant-sheet-open",
    "chat-assistant-sheet-width",
    "--assistant-sheet-width",
    true
  )</script><div class="max-lg:contents lg:flex lg:w-full" data-docs-theme="mint"><div class="max-lg:contents lg:flex-1 lg:min-w-0 lg:overflow-x-clip"><header id="navbar" class="z-30 fixed lg:sticky top-0 w-full peer is-not-custom peer is-not-center peer is-not-wide peer is-not-frame"><div id="navbar-transition" class="absolute w-full h-full flex-none transition-colors duration-500 border-b border-gray-500/5 dark:border-gray-300/[0.06] bg-background-light dark:bg-background-dark" data-is-opaque="false"></div><div class="max-w-8xl mx-auto relative"><div><div class="relative"><div class="flex items-center lg:px-12 h-16 min-w-0 mx-4 lg:mx-0"><div class="h-full relative flex-1 flex items-center gap-x-4 min-w-0 border-b border-gray-500/5 dark:border-gray-300/[0.06]"><div class="flex-1 flex items-center gap-x-4"><a class="select-none" style="-webkit-touch-callout:none" href="https://www.pinecone.io"><span class="sr-only">Pinecone Docs<!-- --> home page</span><img class="nav-logo w-auto h-7 relative object-contain shrink-0 block dark:hidden" src="https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-Black.svg?fit=max&amp;auto=format&amp;n=HsZKO51bNmpAasdT&amp;q=85&amp;s=211d0e7bbefc29ce3b8feee1a05d76ee" alt="light logo"/><img class="nav-logo w-auto h-7 relative object-contain shrink-0 hidden dark:block" src="https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-White.svg?fit=max&amp;auto=format&amp;n=HsZKO51bNmpAasdT&amp;q=85&amp;s=4839c7a50a8bee830e943705c648297c" alt="dark logo"/></a><div class="hidden lg:flex items-center gap-x-2"><button type="button" tabindex="0" aria-haspopup="menu" id="base-ui-_R_3b2lpbsnlhjiuqsnpfiutb_" data-component-part="version-select-trigger" class="group disabled:pointer-events-none [&amp;&gt;span]:line-clamp-1 overflow-hidden group focus-visible:outline-2 focus-visible:-outline-offset-2 group-hover:text-gray-950/70 dark:group-hover:text-white/70 py-1.5 px-2.5 rounded-xl hover:bg-gray-600/5! dark:hover:bg-gray-200/5! aria-[expanded=true]:bg-gray-600/5 dark:aria-[expanded=true]:bg-gray-200/5 text-sm font-medium text-gray-900 h-8 focus-visible:outline-primary dark:focus-visible:outline-primary-light dark:text-gray-300 group/trigger flex items-center gap-2 whitespace-nowrap"><span class="truncate max-w-[12.5rem]">2026-07 (latest)</span><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 rotate-90 group-aria-[expanded=true]/trigger:rotate-[270deg] ml-auto"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></div><div class="relative hidden lg:flex items-center flex-1 z-20 gap-2.5"><button type="button" class="group/search flex pointer-events-auto rounded-xl w-full items-center text-sm leading-6 h-9 pl-3.5 pr-3 text-gray-500 dark:text-white/50 bg-background-light dark:bg-background-dark dark:brightness-[1.1] dark:ring-1 dark:hover:brightness-[1.25] ring-1 ring-gray-400/30 hover:ring-gray-600/30 dark:ring-gray-600/30 dark:hover:ring-gray-500/30 justify-between truncate gap-2" id="search-bar-entry" aria-label="Open search"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-4 min-w-4 flex-none text-gray-700 group-hover/search:text-gray-800 dark:text-gray-400 dark:group-hover/search:text-gray-200"><path d="M15.25 15.25L11.285 11.285" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M7.75 12.75C10.5114 12.75 12.75 10.5114 12.75 7.75C12.75 4.98858 10.5114 2.75 7.75 2.75C4.98858 2.75 2.75 4.98858 2.75 7.75C2.75 10.5114 4.98858 12.75 7.75 12.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><div class="truncate min-w-0">Search...</div></div><span class="flex-none text-xs font-semibold">⌘<!-- -->K</span></button><button type="button" class="group/ai flex-none hidden lg:flex items-center justify-center gap-1.5 pl-3 pr-3.5 h-9 rounded-xl bg-background-light dark:bg-background-dark dark:brightness-[1.1] dark:ring-1 dark:hover:brightness-[1.25] ring-1 ring-gray-400/30 hover:ring-gray-600/30 dark:ring-gray-600/30 dark:hover:ring-gray-500/30" id="assistant-entry" aria-label="Toggle assistant panel"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-4 shrink-0 text-gray-700 group-hover/ai:text-gray-800 dark:text-gray-400 dark:group-hover/ai:text-gray-200"><path d="M5.65799 2.99L4.39499 2.569L3.97399 1.306C3.83699 0.898 3.16199 0.898 3.02499 1.306L2.60399 2.569L1.34099 2.99C1.13699 3.058 0.998993 3.249 0.998993 3.464C0.998993 3.679 1.13699 3.87 1.34099 3.938L2.60399 4.359L3.02499 5.622C3.09299 5.826 3.28499 5.964 3.49999 5.964C3.71499 5.964 3.90599 5.826 3.97499 5.622L4.39599 4.359L5.65899 3.938C5.86299 3.87 6.00099 3.679 6.00099 3.464C6.00099 3.249 5.86199 3.058 5.65799 2.99Z" fill="currentColor" stroke="none"></path><path d="M9.5 2.75L11.412 7.587L16.25 9.5L11.412 11.413L9.5 16.25L7.587 11.413L2.75 9.5L7.587 7.587L9.5 2.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><span class="text-sm text-gray-500 dark:text-white/50 whitespace-nowrap">Ask Assistant</span><span class="flex-none text-xs font-semibold">⌘<!-- -->I</span></button></div><div class="flex-1 relative hidden lg:flex items-center ml-auto justify-end space-x-4"><nav aria-label="Main" class="text-sm"><ul class="flex space-x-6 items-center"><li class="navbar-link"><a href="https://status.pinecone.io" class="flex items-center gap-1.5 whitespace-nowrap font-medium text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" target="_blank" rel="noopener noreferrer"><span class="min-w-0 truncate">Status</span></a></li><li class="navbar-link"><a href="https://app.pinecone.io/organizations/-/settings/support" class="flex items-center gap-1.5 whitespace-nowrap font-medium text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" target="_blank" rel="noopener noreferrer"><span class="min-w-0 truncate">Support</span></a></li><li class="navbar-link"><a href="https://app.pinecone.io/?sessionType=login" class="flex items-center gap-1.5 whitespace-nowrap font-medium text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" target="_blank" rel="noopener noreferrer"><span class="min-w-0 truncate">Log In</span></a></li><li class="block lg:hidden"><a class="flex items-center gap-1.5 whitespace-nowrap font-medium text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" href="https://app.pinecone.io/?sessionType=signup"><span class="min-w-0 truncate">Sign up free</span></a></li><li class="whitespace-nowrap hidden lg:flex" id="topbar-cta-button"><a target="_blank" rel="noopener noreferrer" class="group pl-3 pr-2 py-2 relative inline-flex items-center text-sm font-medium" href="https://app.pinecone.io/?sessionType=signup"><span class="absolute inset-0 bg-primary-dark rounded-xl group-hover:opacity-[0.9]"></span><div class="z-10 gap-1 flex items-center"><span class="text-white">Sign up free</span><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-3 shrink-0 text-white/90"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></a></li></ul></nav><div class="flex items-center"><button type="button" tabindex="0" aria-haspopup="menu" id="theme-preference-menu-trigger" aria-label="Change theme preference" data-component-name="theme-preference-menu" data-component-part="theme-preference-menu-trigger" data-testid="theme-preference-menu-trigger" class="group disabled:pointer-events-none rounded-lg overflow-hidden gap-1 text-sm text-gray-950/50 dark:text-white/50 group-hover:text-gray-950/70 dark:group-hover:text-white/70 theme-preference-menu-trigger group p-2 flex items-center justify-center"><span data-theme-preference-icon="system"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="size-4 text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-200"><path d="M4.5 15.5L9 14.5L13.5 15.5" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M9 11.75V14.5" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M14.25 2.75H3.75C2.64543 2.75 1.75 3.64543 1.75 4.75V9.75C1.75 10.8546 2.64543 11.75 3.75 11.75H14.25C15.3546 11.75 16.25 10.8546 16.25 9.75V4.75C16.25 3.64543 15.3546 2.75 14.25 2.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></span><span data-theme-preference-icon="light"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="size-4 text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-200"><path d="M9 1.25V2.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M14.48 3.52002L13.773 4.22702" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M16.75 9H15.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M14.48 14.4799L13.773 13.7729" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M9 16.75V15.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M3.52 14.4799L4.227 13.7729" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M1.25 9H2.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M3.52 3.52002L4.227 4.22702" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M9 13.25C11.3472 13.25 13.25 11.3472 13.25 9C13.25 6.65279 11.3472 4.75 9 4.75C6.65279 4.75 4.75 6.65279 4.75 9C4.75 11.3472 6.65279 13.25 9 13.25Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></span><span data-theme-preference-icon="dark"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="size-4 text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-200"><path d="M13 11.75C9.548 11.75 6.75 8.95201 6.75 5.50001C6.75 4.14801 7.183 2.90101 7.912 1.87801C4.548 2.50601 2 5.45301 2 9.00001C2 13.004 5.246 16.25 9.25 16.25C12.622 16.25 15.448 13.944 16.259 10.826C15.309 11.409 14.196 11.75 13 11.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></span></button></div></div><div class="flex lg:hidden items-center gap-3"><button type="button" class="text-gray-500 w-8 h-8 flex items-center justify-center hover:text-gray-600 dark:text-gray-400 dark:hover:text-gray-300" id="search-bar-entry-mobile" aria-label="Open search"><span class="sr-only">Search...</span><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! h-4 w-4 bg-gray-500 dark:bg-gray-400 hover:bg-gray-600 dark:hover:bg-gray-300" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/magnifying-glass.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/magnifying-glass.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></button><button id="assistant-entry-mobile" aria-label="Toggle assistant panel"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-4.5 text-gray-500 dark:text-gray-400 hover:text-gray-600 dark:hover:text-gray-300"><path d="M5.65799 2.99L4.39499 2.569L3.97399 1.306C3.83699 0.898 3.16199 0.898 3.02499 1.306L2.60399 2.569L1.34099 2.99C1.13699 3.058 0.998993 3.249 0.998993 3.464C0.998993 3.679 1.13699 3.87 1.34099 3.938L2.60399 4.359L3.02499 5.622C3.09299 5.826 3.28499 5.964 3.49999 5.964C3.71499 5.964 3.90599 5.826 3.97499 5.622L4.39599 4.359L5.65899 3.938C5.86299 3.87 6.00099 3.679 6.00099 3.464C6.00099 3.249 5.86199 3.058 5.65799 2.99Z" fill="currentColor" stroke="none"></path><path d="M9.5 2.75L11.412 7.587L16.25 9.5L11.412 11.413L9.5 16.25L7.587 11.413L2.75 9.5L7.587 7.587L9.5 2.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button><button type="button" aria-label="More actions" class="h-7 w-5 flex items-center justify-center relative after:content-[&#x27;&#x27;] after:absolute after:-inset-y-2 after:-left-1 after:-right-4"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-4 shrink-0 bg-gray-500 dark:bg-gray-400 hover:bg-gray-600 dark:hover:bg-gray-300" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/ellipsis-vertical.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/ellipsis-vertical.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></button></div></div></div><button type="button" class="flex items-center h-14 py-4 px-5 lg:hidden focus:outline-0 w-full text-left"><div class="text-gray-500 hover:text-gray-600 dark:text-gray-400 dark:hover:text-gray-300"><span class="sr-only">Navigation</span><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 shrink-0"><path d="M2.25 9H15.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.25 3.75H15.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.25 14.25H15.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div class="ml-4 flex text-sm leading-6 whitespace-nowrap min-w-0 space-x-3 overflow-hidden"><div class="flex items-center space-x-3 shrink-0"><span>APIs</span><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-3 text-gray-400 shrink-0"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div class="font-semibold text-gray-900 truncate dark:text-gray-200 min-w-0 flex-1">API reference</div></div></button></div><div class="hidden lg:flex px-12 h-12"><div class="nav-tabs h-full flex text-sm gap-x-6"><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-300" href="/guides/get-started/overview">Guides<div class="absolute bottom-0 h-[1.5px] w-full left-0 group-hover:bg-gray-200 dark:group-hover:bg-gray-700"></div></a><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium hover:text-gray-800 dark:hover:text-gray-300 text-gray-800 dark:text-gray-200 [text-shadow:-0.2px_0_0_currentColor,0.2px_0_0_currentColor]" data-active="true" aria-current="location" href="/reference/api/introduction">Reference<div class="absolute bottom-0 h-[1.5px] w-full left-0 bg-primary dark:bg-primary-light"></div></a><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-300" href="/examples/notebooks">Examples<div class="absolute bottom-0 h-[1.5px] w-full left-0 group-hover:bg-gray-200 dark:group-hover:bg-gray-700"></div></a><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-300" href="/models/overview">Models<div class="absolute bottom-0 h-[1.5px] w-full left-0 group-hover:bg-gray-200 dark:group-hover:bg-gray-700"></div></a><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-300" href="/integrations/overview">Integrations<div class="absolute bottom-0 h-[1.5px] w-full left-0 group-hover:bg-gray-200 dark:group-hover:bg-gray-700"></div></a><a class="link nav-tabs-item group relative h-full gap-2 flex items-center font-medium text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-300" href="/troubleshooting/contact-support">Troubleshooting<div class="absolute bottom-0 h-[1.5px] w-full left-0 group-hover:bg-gray-200 dark:group-hover:bg-gray-700"></div></a></div></div><style>:root{--topbar-tabs-height:3rem}</style></div></div></header><div class="scroll-mt-(--scroll-mt) peer-[.is-custom]:max-w-none peer-[.is-center]:max-w-3xl peer-[.is-not-custom]:peer-[.is-not-center]:max-w-8xl peer-[.is-not-custom]:px-4 peer-[.is-not-custom]:mx-auto peer-[.is-not-custom]:lg:px-8 peer-[.is-wide]:lg:*:last:max-w-216 peer-[.is-not-custom]:peer-[.is-not-center]:lg:flex peer-[.is-custom]:[&amp;&gt;:first-child]:hidden! peer-[.is-custom]:[&amp;&gt;:first-child]:sm:hidden! peer-[.is-custom]:[&amp;&gt;:first-child]:md:hidden! peer-[.is-custom]:[&amp;&gt;:first-child]:lg:hidden! peer-[.is-custom]:[&amp;&gt;:first-child]:xl:hidden! peer-[.is-center]:[&amp;&gt;:first-child]:hidden! peer-[.is-center]:[&amp;&gt;:first-child]:sm:hidden! peer-[.is-center]:[&amp;&gt;:first-child]:md:hidden! peer-[.is-center]:[&amp;&gt;:first-child]:lg:hidden! peer-[.is-center]:[&amp;&gt;:first-child]:xl:hidden!"><nav aria-label="Pages" class="z-20 hidden lg:block sticky self-start shrink-0 w-[18rem] top-[calc(var(--mintlify-slot-header-height,calc(4rem+var(--topbar-tabs-height,0rem)))+var(--banner-height,0px))] h-[calc(100dvh-var(--mintlify-slot-header-height,calc(4rem+var(--topbar-tabs-height,0rem)))-var(--banner-height,0px))]" id="sidebar"><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" data-component-part="scroll-area" id="sidebar-content" class="min-w-0 absolute! inset-0 z-10"><div role="presentation" data-id="base-ui-_R_2tbsnlhjiuqsnpfiutb_-viewport" tabindex="-1" class="size-full rounded-[inherit] [--scroll-area-fade-size:32px] pr-8 pb-10 base-ui-disable-scrollbar" style="overflow:scroll" data-component-part="scroll-area-viewport"><div role="presentation" style="min-width:fit-content" data-component-part="scroll-area-content" class="min-w-0! w-full"><div class="relative lg:text-sm lg:leading-6"><div class="sticky top-0 h-8 pointer-events-none z-10 bg-linear-to-b from-background-light dark:from-background-dark"></div><div id="navigation-items"><button type="button" tabindex="0" aria-haspopup="menu" id="base-ui-_R_3bratbsnlhjiuqsnpfiutb_" class="group disabled:pointer-events-none [&amp;&gt;span]:line-clamp-1 overflow-hidden group focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light text-sm text-gray-950/50 dark:text-white/50 group-hover:text-gray-950/70 dark:group-hover:text-white/70 nav-dropdown-trigger mb-4 z-10 group flex w-full items-center pl-2 pr-3.5 py-1.5 rounded-[0.85rem] border border-gray-200/70 dark:border-white/[0.07] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 gap-1"><div class="nav-dropdown-item-icon size-8 flex items-center justify-center rounded-lg shrink-0 border border-gray-200/70 dark:border-white/[0.07]"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-4 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/database.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/solid/database.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="nav-dropdown-item-text-container flex-1 px-1 flex flex-col grow text-left"><p class="nav-dropdown-item-title text-base lg:text-sm font-medium text-gray-800 dark:text-gray-300">Pinecone Database</p></div><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 rotate-90"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>APIs</span></h3></div><ul class="sidebar-group space-y-px"><li id="/reference/api/introduction" class="relative scroll-m-4 first:scroll-m-20" data-title="Introduction" data-active="true" data-active-nav-item="true"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] bg-primary/10 text-primary [text-shadow:-0.2px_0_0_currentColor,0.2px_0_0_currentColor] dark:text-primary-light dark:bg-primary-light/10" style="padding-left:1rem" aria-current="page" href="/reference/api/introduction"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Introduction</span></div></div></a></li><li id="/reference/api/authentication" class="relative scroll-m-4 first:scroll-m-20" data-title="Authentication"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/api/authentication"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Authentication</span></div></div></a></li><li id="/reference/api/versioning" class="relative scroll-m-4 first:scroll-m-20" data-title="Versioning"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/api/versioning"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Versioning</span></div></div></a></li><li data-title="Database limits" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Database limits</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li id="/reference/api/errors" class="relative scroll-m-4 first:scroll-m-20" data-title="Errors"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/api/errors"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Errors</span></div></div></a></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>Database</span></h3></div><ul class="sidebar-group space-y-px"><li data-title="Indexes" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Indexes</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Namespaces" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Namespaces</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Vectors" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Vectors</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Search" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Search</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Documents" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Documents</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Imports" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Imports</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Backups" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Backups</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Backup schedules" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Backup schedules</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>Inference</span></h3></div><ul class="sidebar-group space-y-px"><li data-title="Embed" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Embed</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Rerank" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Rerank</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Models" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Models</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>Admin</span></h3></div><ul class="sidebar-group space-y-px"><li data-title="API keys" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>API keys</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Projects" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Projects</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Service accounts" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Service accounts</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Users" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Users</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Invites" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Invites</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Role bindings" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Role bindings</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>SDKs</span></h3></div><ul class="sidebar-group space-y-px"><li id="/reference/pinecone-sdks" class="relative scroll-m-4 first:scroll-m-20" data-title="Pinecone SDKs overview"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/pinecone-sdks"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Pinecone SDKs overview</span></div></div></a></li><li data-title="Python" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Python</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Node.js" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Node.js</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Java" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Java</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li><li data-title="Go" data-group-tag="" class="space-y-px"><button class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" aria-expanded="false"><div class=""><span>Go</span></div><div class="h-[1lh] flex items-center shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 w-2 h-[1lh] -mr-0.5"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></button></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>CLI</span></h3></div><ul class="sidebar-group space-y-px"><li id="/reference/cli/quickstart" class="relative scroll-m-4 first:scroll-m-20" data-title="Quickstart"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/cli/quickstart"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Quickstart</span></div></div></a></li><li id="/reference/cli/command-reference" class="relative scroll-m-4 first:scroll-m-20" data-title="Command reference"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/cli/command-reference"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Command reference</span></div></div></a></li><li id="/reference/cli/authentication" class="relative scroll-m-4 first:scroll-m-20" data-title="Authentication"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 break-words hyphens-auto rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/cli/authentication"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Authentication</span></div></div></a></li><li id="/reference/cli/target-context" class="relative scroll-m-4 first:scroll-m-20" data-title="Target context"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/cli/target-context"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Target context</span></div></div></a></li></ul></div><div class="mt-6 lg:mt-8"><div class="sidebar-group-header flex items-center gap-2.5 pl-4 mb-3.5 lg:mb-2.5 font-semibold text-gray-900 dark:text-gray-200"><h3 class="sidebar-title text-[length:inherit] font-[inherit] leading-[inherit]"><span>Tools</span></h3></div><ul class="sidebar-group space-y-px"><li id="/reference/tools/pinecone-spark-connector" class="relative scroll-m-4 first:scroll-m-20" data-title="Spark-Pinecone connector"><a class="group flex items-start pr-3 py-1.5 cursor-pointer gap-x-3 text-left focus-visible:-outline-offset-2 rounded-xl w-full outline-offset-[-1px] hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300" style="padding-left:1rem" href="/reference/tools/pinecone-spark-connector"><div class="flex-1 flex min-w-0 items-start gap-x-2.5"><div class="flex min-w-0 flex-1 flex-wrap items-center gap-1.5 [word-break:break-word]"><span class="min-w-0 max-w-full break-words hyphens-auto">Spark-Pinecone connector</span></div></div></a></li></ul></div><script>(function () {
  try {
    if (window.__mintlifyInitialSidebarScrollDone) return;
    window.__mintlifyInitialSidebarScrollDone = true;

    var path = (window.location.pathname || '/').split('#')[0].split('?')[0];
    if (path.endsWith('/index')) path = path.slice(0, -6);
    else if (path === 'index') path = '';

    var candidates = [];
    if (path) candidates.push(path);
    if (path.startsWith('/')) candidates.push(path.slice(1));
    else candidates.push('/' + path);

    var item = null;
    for (var i = 0; i < candidates.length && !item; i++) {
      var matches = document.querySelectorAll('[id="' + candidates[i].replace(/"/g, '\\"') + '"]');
      for (var j = 0; j < matches.length; j++) {
        if (matches[j].closest('#sidebar, #sidebar-content')) {
          item = matches[j];
          break;
        }
      }
    }
    if (!item) return;

    var parent = item.closest('[data-component-part="scroll-area-viewport"]');
    if (!parent) {
      parent = item.parentElement;
      while (parent) {
        var style = getComputedStyle(parent);
        if (style.overflowY === 'auto' || style.overflowY === 'scroll') break;
        parent = parent.parentElement;
      }
    }
    if (!parent) return;

    var parentRect = parent.getBoundingClientRect();
    var itemRect = item.getBoundingClientRect();
    if (itemRect.top >= parentRect.top && itemRect.bottom <= parentRect.bottom) return;

    var itemTopRelative = itemRect.top - parentRect.top + parent.scrollTop;
    parent.scrollTop = itemTopRelative - parentRect.height / 2 + itemRect.height / 2;
  } catch (e) {}
})();</script></div></div></div></div></div></nav><main id="content-container" class="lg:flex-1 lg:min-w-0"><script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://docs.pinecone.io/#organization","name":"Pinecone Docs","url":"https://docs.pinecone.io","logo":{"@type":"ImageObject","url":"https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-Black.svg?fit=max&auto=format&n=HsZKO51bNmpAasdT&q=85&s=211d0e7bbefc29ce3b8feee1a05d76ee"}},{"@type":"WebSite","@id":"https://docs.pinecone.io#website","name":"Pinecone Docs","url":"https://docs.pinecone.io","publisher":{"@id":"https://docs.pinecone.io/#organization"}},{"@type":"WebPage","@id":"https://docs.pinecone.io/reference/api/introduction#webpage","url":"https://docs.pinecone.io/reference/api/introduction","name":"API reference","description":"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.","dateModified":"2026-08-11T14:29:35.122Z","isPartOf":{"@id":"https://docs.pinecone.io#website"},"breadcrumb":{"@id":"https://docs.pinecone.io/reference/api/introduction#breadcrumb"}},{"@type":"BreadcrumbList","@id":"https://docs.pinecone.io/reference/api/introduction#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Pinecone Docs","item":"https://docs.pinecone.io"},{"@type":"ListItem","position":2,"name":"API reference","item":"https://docs.pinecone.io/reference/api/introduction"}]},{"@type":["Article","TechArticle"],"@id":"https://docs.pinecone.io/reference/api/introduction#article","headline":"API reference","name":"API reference","description":"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.","url":"https://docs.pinecone.io/reference/api/introduction","mainEntityOfPage":{"@id":"https://docs.pinecone.io/reference/api/introduction#webpage"},"image":"https://www.pinecone.io/images/docs_og_image_v2.png","dateModified":"2026-08-11T14:29:35.122Z","publisher":{"@id":"https://docs.pinecone.io/#organization"},"isPartOf":{"@id":"https://docs.pinecone.io#website"}}]}</script><script>document.documentElement.setAttribute('data-page-mode', "none");</script><span class="fixed inset-0 bg-background-light dark:bg-background-dark -z-10 pointer-events-none" id="background-color"></span><span class="block absolute dark:hidden inset-0 overflow-hidden pointer-events-none"></span><span class="hidden absolute dark:block inset-0 overflow-hidden pointer-events-none"></span><style data-custom-css-index="0" data-custom-css-path="styles.css">/* Global styles */

:root {
  --brand-blue: #002BFF;
  --primary-main: #002BFF;
  --primary-dark: #222160;
  --text-contrast: #FFFFFF;
  --background: #FBFBFC;
  --paper: #FFFFFF;
  --surface: #F2F3F6;
  --divider: #D8DDDF;
  --secondary: #72788D;
  --error: #E31957;
  --warning: #DD815D;
  --success: #15B077;
  --info: #0028FF;
  --text-primary: #1C1917;
  --text-secondary: #72788D;
  --text-disabled: #121142;
  --white: #FFFFFF;
  --black: #121142;
  --overlay: #2B3244;
  --border: #e7e5e4;
}

.dark {
  --brand-blue: #1E86EE;
  --primary-main: #002BFF;
  --primary-dark: #222160;
  --text-contrast: #FFFFFF;
  --background: #171717;
  --paper: #1E1E1E;
  --surface: #252525;
  --divider: #2A2A2A;
  --secondary: #72788D;
  --error: #E31957;
  --warning: #DD815D;
  --success: #15B077;
  --info: #0028FF;
  --text-primary: #FFFFFF;
  --text-secondary: #A0A0A0;
  --text-disabled: #666666;
  --white: #FFFFFF;
  --black: #000000;
  --overlay: #2B3244;
  --border: #303030;
}

.dark .dark-inverted {
  filter: invert(1);
}

#topbar-cta-button {
  margin-left: 1rem;
}

#topbar-cta-button > a {
  display: flex;
  align-items: center;
  padding: 0.375rem 1rem !important;
  gap: 0.5rem;
  background-color: var(--brand-blue);
  color: var(--text-contrast) !important;
  border-radius: 0.25rem;
  font-weight: 500;
  letter-spacing: 0.4px;
}

#topbar-cta-button a:hover {
  background-color: var(--primary-dark) !important;
}


/* #topbar-cta-button span {
  border-radius: 4px;
  font-weight: 500;
  letter-spacing: 0.4px;
} */

/* #topbar-cta-button div > svg {
  display: none;
} */

/* inserting svg via :after isn't working for some reason, used js instead */
/* #topbar-cta-button div::after {
  content: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="Icon Right"><path id="Vector" d="M8.08906 5L6.91406 6.175L10.7307 10L6.91406 13.825L8.08906 15L13.0891 10L8.08906 5Z" fill="white"/></g></svg>');
  content: "test";
  display: block;
  width: 20px;
  height: 20px;
  margin-left: 8px;
  background-image: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="Icon Right"><path id="Vector" d="M8.08906 5L6.91406 6.175L10.7307 10L6.91406 13.825L8.08906 15L13.0891 10L8.08906 5Z" fill="white"/></g></svg>');
  background-color: #000000;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
} */


.documentation-link {
  color: var(--brand-blue);
  text-decoration: none;
}

.documentation-link:hover {
  color: #000000;
  /* Black color when hovering */
}

.custom-button {
  display: inline-block;
  padding: 2px 8px;
  background-color: var(--surface);
  color: var(--text-primary);
  /* Text color */
  border: 1px solid var(--border);
  /* Border color */
  border-radius: 25px;
  /* Rounded borders */
  text-align: center;
  user-select: none;
  transition: background-color 0.3s ease;
  /* Smooth transition for background color */
}

/* Change the button color on hover (make it unclickable) */
.custom-button:hover {
  background-color: var(--primary-main);
  color: var(--text-contrast);
}

/* Adjust the width for the second column */
/* td:nth-child(2) {
  width: 200px; /* Adjust the width as per your requirement
} */

/* 
Add an announcement bar 
TODO: This can be version specific if you add a page-specific class/ID, but it doesn't seem to work for the OpenAI docs without rewriting the JSON
*/
/*  #navbar:before {
  background-color: #ff4c04;
  content: "The legacy version of the API, which required regional URLs for control plane operations, is deprecated as of April 15, 2024 and will be removed in a future, to be announced, release.";
  color: rgb(255, 255, 255);
  display: block;
  text-align: center;
  padding: 6px;
  font-size: 90%;
}
*/
/* Text color */
/* body {
  color: #121142 !important;
} */

/* Header */
#navbar {
  background: var(--background);
  position: fixed;
  /* position: sticky !important; */
  /* top: 0 !important; */
}

#navbar-transition {
  border-bottom: 1px solid var(--border);
}

#navbar .max-w-8xl {
  max-width: 100%;
}

/* Logo + "Docs" text + version select */
#navbar>div:first-of-type>div:first-of-type>div:first-of-type>div:first-of-type {
  flex: initial;
}

#navbar>div:first-of-type>div:first-of-type>div:first-of-type>div:first-of-type>a:first-of-type {
  flex: initial;
  display: flex;
}

#navbar img[alt="logo"] {
  max-width: 150px;
  min-width: 150px;
}

/* Ensure logo has min width*/
#navbar > div > div > div > div > div > div.flex-1.flex.items-center > a:first-child {
  min-width: 209px;
}

/* Version select */
[aria-haspopup="menu"] {
  border-radius: 0.25rem;
  border: 1px solid var(--border);
  background-color: transparent !important;
  color: var(--text-primary)
}

[aria-labelledby="headlessui-menu-button-:r0:"] {
  width: 11rem;
}

/* Right side nav container */
#navbar>div:first-of-type>div:first-of-type>div:first-of-type>div:nth-of-type(3) {
  flex: initial;
  margin-left: 0;
}

/* Prevent nav items from shrinking */
#navbar>div:first-of-type>div:first-of-type>div:first-of-type>div:nth-of-type(3)>nav {
  flex-shrink: 0;
}

/* nav links */
#navbar nav a {
  color: var(--text-primary);
  padding: 0.6rem 1rem;
  transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* #navbar a:hover {
  background-color: var(--paper);
  border-radius: 0.25rem;
} */

#navbar nav ul li:not(:last-of-type) {
  margin-left: 0;
}

/* Hide dark mode toggle */
/* #navbar>div:first-of-type>div:first-of-type>div:first-of-type>div:nth-of-type(3)>div {
  display: none;
} */

/* Second nav container */
/* Links */
#navbar a {
  color: var(--text-primary);
  margin: 0;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}

#navbar .nav-tabs {
  gap: 0 !important;
}

/* Selected links */
#navbar a.font-semibold {
  color: var(--brand-blue);
  border-bottom-width: 0.1875rem;
  border-color: var(--brand-blue);
}

#navbar div.absolute.bottom-0 {
  display: none;
}

/* Sidebar */
#sidebar {
  left: 0rem;
  padding-left: 3rem;
  background: var(--background);
  border-right: 1px solid var(--border);
  /* position: sticky; */
  /* flex-shrink: 0; */
  /* top: 0; */
}

#sidebar div.sticky {
  visibility: hidden;
}

#sidebar-content {
  padding-left: 2rem;
}

/* Sidebar headings and link color */
#sidebar-content h5,
#sidebar a,
#sidebar li div {
  color: var(--text-primary);
}

/* Sidebar Introduction link */
#sidebar>div>ul>div:first-of-type>li:only-of-type {
  margin-left: 0;
}

#sidebar>div>ul>div:first-of-type>li:only-of-type>a {
  font-weight: 600;
}

/* Nav items */
#navigation-items>div>ul>li {
  margin-left: 0.75rem;
}

/* Selected nav items */
#navigation-items>div>ul>li a.font-semibold {
  font-weight: 400;
  background-color: var(--surface);
}

#navigation-items #mobile-divider {
  display: none;
}

/* Main content area */
/* main > div:first-of-type > div:last-of-type > div:first-of-type {
  display: flex;
} */
@media screen and (min-width: 1024px) {
  #content-area>div:first-child:not(#header)>div.relative.w-full.flex.items-center.justify-center:first-child {
    margin-top: 7rem
  }
}


/* Content container */
/* #content-container {
  padding-left: 3.5rem !important;
} */
#content-container>div {
  padding-top: 10rem;
}

@media (min-width: 1024px) {
  #content-container>div {
    gap: 3rem;
  }

  #content-container #table-of-contents {
    padding-left: 0;
  }
}

/* Title eyebrow */
#header .eyebrow {
  text-transform: uppercase;
  color: var(--text-primary);
  font-size: 0.625rem;
  letter-spacing: 1px;
  line-height: 160%;
}

/* Hide empty eyebrow */
#header .eyebrow:empty {
  display: none;
}

/* Title container */
#header>div:first-of-type>div:nth-of-type(2) {
  margin-top: 0;
}

/* Title */
#header h1 {
  color: var(--text-primary);
}

/* Article text */
.prose h2,
.prose h3,
.prose h4,
.prose p,
.prose li {
  color: var(--text-primary);
}

.prose table th, .prose table td {
  color: var(--text-primary) !important;
}

.prose a {
  color: var(--brand-blue) !important;
  font-weight: 400;
}

/* Overwrite tailwind max-width */
.max-w-8xl {
  max-width: 94.5rem;
}

.card {
  box-shadow: none;
  border: 1px solid var(--border) !important;
  border-radius: 0.25rem;
  transition: box-shadow 0.3s ease;
  background-color: var(--paper) !important;
}

.card:hover {
  border: 1px solid var(--border) !important;
}

:not(.dark) .card:hover {
  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12) !important;
}

.dark .card:hover {
  box-shadow: none !important;
}

.card>div {
  padding: 1.5rem;
}

.card h2,
.example-card h2 {
  font-size: 1.25rem;
}

.card p,
.example-card p, .example-card span[data-as="p"] {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  color: var(--text-primary);
}

.card .eyebrow {
  font-size: 0.625rem;
  text-transform: uppercase;
  line-height: 160%;
  letter-spacing: 1px;
}

.card .integration-logo { 
  width: 3.125rem;  
  height: 3.125rem; 
  display: flex; 
  justify-content: center; 
  align-items: center; 
} 
.card .integration-logo-long { 
  width: 5.125rem; 
  height: 3.125rem; 
  display: flex; 
  justify-content: center; 
  align-items: center; 
}

.card-grid {
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .card-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  .card-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.example-card {
  box-shadow: none;
  border: 1px solid var(--border);
  border-radius: 0.25rem;
  transition: box-shadow 0.3s ease;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  background-color: var(--paper);
}

.example-card .arrow {
  margin-left: auto;
  margin-top: auto;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.example-card:hover .arrow {
  opacity: 1;
}

.example-card:hover {
  border: 1px solid var(--border) !important;
}

:not(.dark) .example-card:hover {
  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12);
}

.dark .example-card:hover {
  box-shadow: none !important;
}

.example-card .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.example-card .card-tag {
  border-radius: 1rem;
  background-color: var(--background);
  color: var(--text-primary);
  font-size: 0.8125rem;
  line-height: 138%;
  letter-spacing: 0.16px;
  padding: 0.1875rem 0.375rem;
  display: flex;
  gap: 0.375rem;
  align-items: center;
}

.example-card .vectors {
  color: var(--background);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.875rem;
  line-height: 150%;
  letter-spacing: 0.15px;
  padding-top: 2.875rem;
  margin-top: auto;
}

.examples-h2 {
  font-size: 1.25rem;
  margin-bottom: 1.5rem;
}

/* Integrations related articles */
#related-articles {
  display: flex;
  flex-direction: column;
  width: 100%;
}

#related-articles h2 {
  color: var(--text-primary);
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.15px;
  line-height: 150%;
  margin-bottom: 1rem;
}

#related-articles a {
  padding: 1.0625rem 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  color: var(--text-primary);
  font-size: 0.875rem;
  line-height: 150%;
  letter-spacing: 0.15px;
}

#related-articles a:not(:last-of-type) {
  border-bottom: 1px solid var(--border);
}

#related-articles a:hover {
  opacity: 0.7;
}

#related-articles a>svg {
  flex-shrink: 0;
}

/* Integrations back button */
#back-button {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  color: var(--text-primary) !important;
  font-size: 0.875rem;
  line-height: 150%;
  letter-spacing: 0.15px;
  margin-bottom: 1.5rem;
}

#back-button:hover {
  opacity: 0.7;
}

#back-button>svg {
  flex-shrink: 0;
}

/* Sample apps */

.sample-app {
  color: var(--text-primary);
}

.sample-app h2 {
  font-size: 2.125rem;
  font-weight: 600;
  line-height: 123.5%;
  letter-spacing: 0.25px;
}

.sample-app h2:not(:first-of-type) {
  margin: 4rem 0 0 0;
}

.sample-app h2:first-of-type {
  margin: 0;
}

.sample-app h3 {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.15px;
  margin: 3rem 0 0 0;
}

.sample-app h4 {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.15px;
  margin: 3rem 0 0 0;
}

.sample-app p,
.sample-app ul {
  margin: 1.5rem 0 0 0;
  font-size: 0.875rem;
  list-style-type: disc;
}

.sample-app li::before {
  display: none;
}

.sample-app li {
  padding-left: 0 !important;
  margin-left: 1.25rem;
}

.sample-app li::marker {
  color: var(--text-primary);
}

.sample-app-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.sample-app-heading .eyebrow {
  color: var(--text-primary);
  font-size: 0.625rem;
  line-height: 160%;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.sample-app-heading h1 {
  color: var(--text-primary);
  margin: 0.5rem 0 0 0;
  font-size: 2.125rem;
  font-weight: 600;
  line-height: 123.5%;
  letter-spacing: 0.25px;
}

.sample-app-heading p {
  color: var(--text-primary);
  margin: 0.5rem 0 1.5rem 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.15px;
}

/* Sample apps content area with sidebar */
.sample-app-split {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.sample-app-split .sidebar a:not(.connect-with-pinecone) {
  font-size: 0.875rem;
  color: var(--text-primary);
  border-bottom: none;
}

.sample-app-split .toc-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.sample-app-split .toc-list a.bold {
  font-weight: 700;
  margin-top: 0.5rem;
}

.sample-app-split>.content.no-margin>p:first-of-type {
  margin-top: 0 !important;
}

.connect-with-pinecone {
  border: 1px solid var(--border);
  border-radius: 0.25rem;
  padding: 0.5rem 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  letter-spacing: 0.4px;
  color: var(--text-primary) !important;
  text-decoration: none;
  align-self: flex-start;
}

@media (min-width: 1280px) {
  .sample-app-split {
    flex-direction: row;
  }

  .sample-app-split .content {
    overflow-x: auto;
  }

  .sample-app-split .sidebar {
    width: 20.625rem;
    flex-shrink: 0;
  }
}

/* Hacky codeblock targeting */
/* div[class*="bg-codeblock"].relative {
  border-radius: 0.25rem; */
  /* border: 1px solid var(--border); */
/* } */

/* :not(.dark) div[class*="bg-codeblock"].relative {
  background: var(--black);
}

.dark div[class*="bg-codeblock"].relative {
  background: var(--paper);
}  */

p>code {
  font-size: 0.75rem;
  line-height: 150%;
  letter-spacing: 0.5px;
  border-radius: 0.25rem;
  padding: 0.125rem 0.5rem;
  background-color: var(--paper) !important;
  color: var(--text-primary) !important;
  border: none;
}

code .api-key.set {
  color: orange;
}

.pinecone-connect-connected {
  width: 100%;
  max-width: 31.25rem;
  background-color: var(--paper);
  transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
  border-radius: 0.25rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  border: 1px solid var(--border);
}

.pinecone-connect-connected img {
  height: 1.875rem;
  margin: 0;
}

.pinecone-connect-connected p {
  color: var(--text-primary) !important;
}

.pinecone-connect-connected p:last-of-type {
  margin-top: 0.75rem;
}

.remove-api-key {
  display: flex;
  width: 100%;
  max-width: 31.25rem;
  margin-top: -1.25rem;
}

.remove-api-key>button {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--brand-blue);
  margin-left: auto;
}

.connect-widget-skeleton {
  margin-block: 45px;
  width: 100%;
  max-width: 31.25rem;
  height: 180px;
  background: var(--paper);
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  border: 1px solid var(--border);
}

.skeleton-content {
  width: 100%;
  max-width: 450px;
  height: 180px;
  background: linear-gradient(90deg,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.6) 50%,
      rgba(255, 255, 255, 0) 100%);
  animation: shimmer 1.5s infinite;
  position: absolute;
  top: 0;
  left: 0;
}

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(100%);
  }
}

/* Model Gallery */

.featured-card-container {
  padding: 0 1rem;
  position: relative;
  width: 100%;
  margin: 1rem 0;
  overflow: visible;
  -webkit-overflow-scrolling: touch;
}

.featured-model-cards {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc(25% - 0.75rem);
  gap: 1rem;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding: 1rem 0;
  margin: -1rem 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
  cursor: grab;
}

.featured-model-cards>* {
  scroll-snap-align: start;
}

.carousel-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: var(--paper);
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
  border: 1px solid var(--border);
  padding: 0;
}

.carousel-button:hover {
  background-color: var(--background);
  transform: translateY(-50%) scale(1.05);
  box-shadow: 0 6px 8px -2px rgb(0 0 0 / 0.15);
}

.carousel-button.prev {
  left: -1.25rem;
}

.carousel-button.next {
  right: -1.25rem;
}

/* Make sure parent containers don't clip the buttons */
#content-container,
#content-area,
main {
  overflow: visible !important;
}

@media (max-width: 1280px) {
  .featured-model-cards {
    grid-auto-columns: calc(33.333% - 0.67rem);
  }
}

@media (max-width: 1024px) {
  .featured-model-cards {
    grid-auto-columns: calc(50% - 0.5rem);
  }
}

@media (max-width: 768px) {
  .featured-model-cards {
    grid-auto-columns: 90%;
    padding-bottom: 1rem;
  }

  .carousel-button {
    display: none !important;
  }

  .featured-card-container {
    padding: 0;
  }
}

:not(.dark) .model-card:hover {
  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12);
}

.dark .model-card:hover {
  box-shadow: none !important;
}

.outlined-button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 36px;
  padding: 4px;
  border-radius: 4px;
  border: 1px solid var(--border);
  color: var(--paper);
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 0.4;
  text-align: center;
  color: var(--text-primary);
  font-weight: 500;
  transition: background-color 0.3s ease, border 0.3s ease, color 0.3s ease;
}

.outlined-button:hover {
  background-color: var(--paper);
  border: 1px solid var(--brand-blue);
  color: var(--text-primary);
}


.control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.3s ease;
}

.control:hover {
  opacity: 1;
}

.prev-slide {
  left: 10px;
}

.next-slide {
  right: 10px;
}

.inference-text p {
  margin-top: 0rem;
}


/* Model page */
.model-page-card {
  padding: 1.5rem;
  border-radius: 0.25rem;
  border: 1px solid var(--border);
  background: var(--paper);
  margin-bottom: 2.5rem;
}

.model-page-card-title {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}

.model-page-card-title>h1 {
  font-size: 1.5rem;
  color: var(--text-primary);
}

.model-page-card-logo {
  width: 2.125rem;
  height: 2.125rem;
  flex-shrink: 0;
}

.model-page-card-logo>img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.model-page-card-inference {
  border-radius: 1rem;
  border: 1px solid var(--border);
  padding: 0.25rem 0.375rem 0.25rem 0.25rem;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
}

.model-page-card-stats {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin-top: 1rem;
}

.model-page-card-stats>div>span {
  font-size: 0.625rem;
  color: var(--text-secondary);
  letter-spacing: 0.2px;
  font-weight: 500;
}

.model-page-card-stats>div>p, .model-page-card-stats>div>span[data-as="p"] {
  display: block;
  font-size: 0.75rem;
  color: var(--text-primary);
  letter-spacing: 0.17px;
}

.model-page-card-stats>div.price {
  margin-left: auto;
}

.model-page-card-stats>div.price>p {
  margin-left: auto;
  font-weight: 600;
}

.model-page-tabs {
  display: flex;
  width: 100%;
  border-bottom: 1px solid var(--border);
  margin-bottom: 2rem;
}

.model-page-tabs>button {
  padding: 0.5625rem 1rem;
  border-bottom: 1px solid transparent;
  color: var(--secondary);
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-weight: 500;
  letter-spacing: 0.4px;
}

.model-page-tabs>button>svg>path {
  fill: var(--secondary);
}

.model-page-tabs>button.active {
  border-bottom: 2px solid var(--brand-blue);
  color: var(--brand-blue);
}

.model-page-tabs>button.active>svg>path {
  fill: var(--brand-blue);
}

.model-page-playground {
  display: none;
}

.model-page-guides {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.model-page-content {
  flex-shrink: 1;
  width: auto;
  max-width: 1050px;

  @media (max-width: 1500px) {
    max-width: 700px;
  }
}

.model-page-content> :first-child {
  margin-top: 0;
}

.model-page-content pre {
  white-space: pre-wrap;
}

.model-page-sidebar {
  width: 100%;
  flex-shrink: 1;
}

.model-page-sidebar .iframe-placeholder {
  height: 800px;
}

/* removing inline padding for now */
@media (min-width: 1280px) {
  .model-search-container {
    padding-inline: 0px;
  }
}

.model-page-sidebar-readmore {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.15px
}

.model-page-sidebar-readmore svg {
  margin-bottom: 2px;
}

.model-search-container {
  min-height: 2000px;

  @media (max-width: 768px) {
    min-height: 2000px;
  }
}

#model-search-iframe {
  min-height: 2000px;
}

@media (min-width: 1080px) {
  .model-page-guides {
    flex-direction: row;
  }

  .model-page-sidebar {
    max-width: 20.6875rem;
    flex-shrink: 0;
  }

}

/* Hide scrollbar for Chrome/Safari */
.featured-model-cards::-webkit-scrollbar {
  display: none;
}

/* Show grabbing cursor while actively scrolling */
.featured-model-cards:active {
  cursor: grabbing;
}

/* Add minimum width for model card buttons */
.featured-model-cards .example-card button,
.featured-model-cards .model-card button {
  min-width: 200px;
  /* Ensures button doesn't shrink below this width */
  width: 100%;
  /* Allows button to grow with container */
  max-width: 400px;
  /* Prevents button from getting too wide */
  margin: 0 auto;
  /* Centers the button if container is wider */
}

@media (max-width: 576px) {
  #pinecone-connect-widget {
    scale: 0.95 !important;
    transform-origin: top left;
  }
  .connect-widget-skeleton {
    height: 180px;
    margin-block: 30px;
  }
  
  .skeleton-content {
    height: 180px;
  }
}

/* Target the iframe specifically */
#pinecone-connect-widget iframe {
  width: 100% !important;
  max-width: 500px !important;
}

/* Media query for smaller screens */
@media (max-width: 576px) {
  #pinecone-connect-widget,
  #pinecone-connect-widget > div,
  #pinecone-connect-widget iframe {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  
  /* Also adjust parent container if needed */
  div[style*="min-width"] {
    min-width: 0 !important;
    width: 100% !important;
  }
}


/* Style for the copy tooltip */
.absolute.top-11.left-1\/2.transform.-translate-x-1\/2.-translate-y-1\/2.peer-hover\:opacity-100.opacity-0.text-black.rounded-lg.px-1\.5.py-0\.5.text-xs.bg-white,
div[class*="absolute top-11 left-1/2 transform -translate-x-1/2 -translate-y-1/2"][class*="text-black rounded-lg px-1.5 py-0.5 text-xs bg-white"],
div[aria-hidden="true"][class*="absolute top-11 left-1/2 transform -translate-x-1/2 -translate-y-1/2"][class*="opacity-0"][class*="text-white rounded-lg px-1.5 py-0.5 text-xs"] {
  background-color: var(--brand-blue) !important;
  color: white !important;
}

/* Also target the tooltip in the InlineCode component */
.absolute.top-11.left-1\/2.transform.-translate-x-1\/2.-translate-y-1\/2.hidden.group-hover\:block.text-white.rounded-lg.px-1\.5.py-0\.5.text-xs {
  background-color: var(--brand-blue) !important;
  color: white !important;
}

/* Styles for when embedded in the Console. See console-iframe.js for more details. */
.pinecone-console-embed {
  /* Hide logo */
  #navbar img {
    display: none;
  }

  /* Hide top part of navbar */
  #navbar .relative:first-of-type > div:first-of-type {
    height: 0 !important;
  }

  /* Hide navbar links */
  #navbar nav {
    display: none;
  }

  /* Hide dark mode toggle */
  #navbar [aria-label="Toggle dark mode"] {
    display: none;
  }

  /* Move API version selector to the right edge */
  #navbar button[aria-haspopup="menu"] {
    position: absolute;
    top: 12px;
    right: 0px;
  }

  /* Move content up to account for smaller navbar */
  #content-container,
  #sidebar {
    margin-top: -4rem;
  }

  /* Hide mobile and desktop search button */
  #search-bar-entry-mobile,
  #search-bar-entry {
    display: none;
  }

  /* Hide actions menu */
  button[aria-label='More actions'] {
    display: none;
  }

  /* Move header link action to the right edge */
  h2 > .absolute:first-of-type,
  h3 > .absolute:first-of-type,
  h4 > .absolute:first-of-type {
    right: -12px;
  }
}

/* Make specific buttons have non-rounded corners */
#page-context-menu-button {
  border-start-start-radius: 0.25rem !important;
  border-end-start-radius: 0.25rem !important;
}

#page-context-menu button:last-child {
  border-radius: 0 !important;
  border-start-end-radius: 0.25rem !important;
  border-end-end-radius: 0.25rem !important;
}

/*
 * Agent tool callout on quickstart page.
 * Visually distinguishes the portable search function
 * as a "grab this and go" artifact.
 */
.agent-tool {
  border-left: 4px solid var(--brand-blue, #002BFF);
  padding: 1rem 1.25rem;
  border-radius: 0.375rem;
  background-color: #f0f4ff;
  margin: 0.5rem 0 1rem 0;
}

.agent-tool > p:first-child {
  margin-top: 0;
  font-size: 0.875rem;
  letter-spacing: 0.025em;
}

.dark .agent-tool {
  background-color: rgba(0, 43, 255, 0.08);
  border-left-color: #4d6fff;
}

/* ---------------------------------------------------------------------------
   Release notes: sidebar filter panel.

   Mintlify renders its own tag filters in the right rail (`#changelog-filters`),
   but that rail is `hidden xl:flex`, so they disappear below 1280px. script.js
   rebuilds the controls in the left sidebar under the year list instead.

   Colors come from the tokens at the top of this file, which already flip for
   dark mode, so almost nothing here needs a `.dark` rule. Note that Mintlify's
   own `--primary` and `--gray-*` variables hold space-separated RGB channels
   rather than colors, so they only work wrapped in `rgb()`.

   The filters are custom dropdowns rather than <select>, since a native select
   popup overlays its own control instead of opening beneath it.
   --------------------------------------------------------------------------- */

/* `mode: "wide"` already stops the rail and this panel from rendering, so this
   is a guard rather than the mechanism: without it, dropping that frontmatter
   from a year page would silently show Mintlify's filters alongside ours. */
#changelog-filters {
  display: none !important;
}

#pc-cl-filters {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--divider);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.pc-cl-heading {
  margin: 0 0 0.25rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-primary);
}

.pc-cl-search {
  width: 100%;
  padding: 0.375rem 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: inherit;
  background-color: transparent;
  border: 1px solid var(--divider);
  border-radius: 0.5rem;
  appearance: none;
}

.pc-cl-search::placeholder {
  color: var(--text-secondary);
}

.pc-cl-search:focus {
  outline: none;
  border-color: var(--brand-blue);
}

/* Dropdowns */

.pc-cl-dd-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.375rem 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  text-align: left;
  color: inherit;
  cursor: pointer;
  background-color: transparent;
  border: 1px solid var(--divider);
  border-radius: 0.5rem;
}

.pc-cl-dd-toggle:hover {
  background-color: var(--surface);
}

.pc-cl-dd.is-active .pc-cl-dd-toggle {
  border-color: var(--brand-blue);
  font-weight: 500;
}

.pc-cl-dd-caret {
  flex: none;
  width: 0.75rem;
  height: 0.75rem;
  opacity: 0.6;
}

.pc-cl-dd-toggle[aria-expanded="true"] .pc-cl-dd-caret {
  transform: rotate(180deg);
}

/* Fixed, not absolute: the sidebar scrolls, and a scroll container clips
   absolutely positioned descendants whatever their z-index. script.js sets
   `top`, `left`, `width`, and `max-height` from the toggle's rect. */
.pc-cl-dd-menu {
  position: fixed;
  z-index: 50;
  margin: 0;
  padding: 0.25rem;
  overflow-y: auto;
  list-style: none;
  background-color: var(--paper);
  border: 1px solid var(--divider);
  border-radius: 0.5rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.dark .pc-cl-dd-menu {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

/* Mintlify's prose styles bullet and indent list items. */
.pc-cl-dd-menu li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pc-cl-dd-menu li::marker,
.pc-cl-dd-menu li::before {
  content: none;
  display: none;
}

.pc-cl-dd-menu button {
  width: 100%;
  padding: 0.3125rem 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.4;
  text-align: left;
  color: inherit;
  cursor: pointer;
  background-color: transparent;
  border: 0;
  border-radius: 0.375rem;
}

.pc-cl-dd-menu button:hover {
  background-color: var(--surface);
}

/* Clear and result count */

.pc-cl-clear {
  align-self: flex-start;
  padding: 0;
  font-size: 0.8125rem;
  color: var(--brand-blue);
  cursor: pointer;
  background: none;
  border: 0;
}

.pc-cl-clear:hover {
  text-decoration: underline;
}

.pc-cl-count {
  margin: 0;
  font-size: 0.75rem;
  color: var(--text-secondary);
}

/* Shown in the content column when a filter matches nothing. */
.pc-cl-empty {
  color: var(--text-secondary);
}

/* ---------------------------------------------------------------------------
   Changelog: <Update> tag pills.

   Mintlify renders each <Update> tag as a rounded span with no padding or
   border, so multiple tags run together (e.g. "DatabaseSearch") and read as one
   label. Add the padding and outline Mintlify omits so each tag reads as its
   own pill. The filter logic in script.js (tagsOf) selects the same spans, so a
   Mintlify markup change could break one without the other; this selector was
   verified to match only the changelog tag spans. --divider flips for dark
   mode, so no .dark rule is needed.
   --------------------------------------------------------------------------- */
[class*="flex-wrap"][class*="gap-2"][class*="text-secondary"] > span[class*="rounded-lg"][class*="font-medium"] {
  padding: 0.1875rem 0.625rem;
  border-radius: 9999px;
  border: 1px solid var(--divider);
  background: transparent;
}
</style><!--$--><!--/$--><div class="flex flex-row-reverse gap-12 box-border w-full pt-[calc(10rem+var(--banner-height,2.5rem))] lg:pt-10"><div class="hidden xl:flex self-start sticky xl:flex-col max-w-[28rem] z-21 h-[calc(100vh-9.5rem)] top-[9.5rem] [[data-banner-state=visible]_&amp;]:h-[calc(100vh-12rem)] [[data-banner-state=visible]_&amp;]:top-[12rem]" id="content-side-layout"><div class="z-10 hidden xl:flex box-border max-h-full pl-10 w-[19rem]" id="table-of-contents-layout"><div role="presentation" style="position:relative;--scroll-area-corner-height:0px;--scroll-area-corner-width:0px" data-component-part="scroll-area" id="table-of-contents" class="min-w-0 text-gray-600 text-sm leading-6 w-[16.5rem] -mt-10"><div role="presentation" data-id="base-ui-_R_1dktbsnlhjiuqsnpfiutb_-viewport" tabindex="-1" class="size-full rounded-[inherit] [--scroll-area-fade-size:32px] pt-10 pb-4 base-ui-disable-scrollbar" style="overflow:scroll" data-component-part="scroll-area-viewport"><div role="presentation" style="min-width:fit-content" data-component-part="scroll-area-content" class="min-w-0! w-full space-y-2"><nav aria-labelledby="_R_dktbsnlhjiuqsnpfiutb_"><h2 id="_R_dktbsnlhjiuqsnpfiutb_" class="m-0 font-normal"><button type="button" class="text-gray-700 dark:text-gray-300 font-medium flex items-center space-x-2 hover:text-gray-900 dark:hover:text-gray-100 transition-colors cursor-pointer"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-3 shrink-0"><path d="M2.75 14.25H15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.75 3.75H15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.75 9H8.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><span>On this page</span></button></h2><div><ul id="table-of-contents-content" class="toc"><li class="toc-item relative" data-depth="0"><a style="--toc-padding-left:0rem" href="#database" class="break-words py-1 block pl-[calc(var(--toc-padding-left)+var(--toc-focus-padding,0rem))] focus-visible:[--toc-focus-padding:0.25rem] focus-visible:-ml-1 focus-visible:-outline-offset-2 dark:text-gray-400 [li:not([data-active])&gt;&amp;:hover]:text-gray-900 dark:[li:not([data-active])&gt;&amp;:hover]:text-gray-300 [[data-active]&gt;&amp;]:text-primary dark:[[data-active]&gt;&amp;]:text-primary-light [[data-active]&gt;&amp;]:[text-shadow:-0.15px_0_0_currentColor,0.15px_0_0_currentColor]">Database</a></li><li class="toc-item relative" data-depth="0"><a style="--toc-padding-left:0rem" href="#inference" class="break-words py-1 block pl-[calc(var(--toc-padding-left)+var(--toc-focus-padding,0rem))] focus-visible:[--toc-focus-padding:0.25rem] focus-visible:-ml-1 focus-visible:-outline-offset-2 dark:text-gray-400 [li:not([data-active])&gt;&amp;:hover]:text-gray-900 dark:[li:not([data-active])&gt;&amp;:hover]:text-gray-300 [[data-active]&gt;&amp;]:text-primary dark:[[data-active]&gt;&amp;]:text-primary-light [[data-active]&gt;&amp;]:[text-shadow:-0.15px_0_0_currentColor,0.15px_0_0_currentColor]">Inference</a></li></ul></div></nav></div></div></div></div></div><div class="relative grow box-border flex-col w-full mx-auto px-1 lg:pl-[5.7rem] lg:-ml-12 xl:w-[calc(100%-28rem)]" id="content-area"><header id="header" class="relative leading-none @container/page-header"><div class="mt-0.5 space-y-2.5"><div class="eyebrow h-5 text-primary dark:text-primary-light text-sm font-semibold">APIs</div><div class="flex flex-col sm:flex-row items-start sm:items-center relative gap-2 min-w-0"><h1 id="page-title" class="text-3xl sm:text-4xl text-gray-900 tracking-tight dark:text-gray-200 [overflow-wrap:anywhere] font-semibold">API reference</h1><div id="page-context-menu" class="items-center shrink-0 min-w-[156px] justify-end ml-auto hidden @[520px]/page-header:flex"><button id="page-context-menu-button" class="rounded-l-xl px-3 text-gray-700 dark:text-gray-300 py-1.5 border border-gray-200 dark:border-white/[0.07] bg-background-light dark:bg-background-dark hover:bg-gray-600/5 dark:hover:bg-gray-200/5 border-r-0" aria-label="Copy page"><div class="flex items-center gap-2 text-sm text-center font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 shrink-0"><path d="M14.25 5.25H7.25C6.14543 5.25 5.25 6.14543 5.25 7.25V14.25C5.25 15.3546 6.14543 16.25 7.25 16.25H14.25C15.3546 16.25 16.25 15.3546 16.25 14.25V7.25C16.25 6.14543 15.3546 5.25 14.25 5.25Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.80103 11.998L1.77203 5.07397C1.61003 3.98097 2.36403 2.96397 3.45603 2.80197L10.38 1.77297C11.313 1.63397 12.19 2.16297 12.528 3.00097" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><span class="grid"><span aria-hidden="true" class="invisible col-start-1 row-start-1">Copy page</span><span class="col-start-1 row-start-1">Copy page</span></span></div></button><button type="button" tabindex="0" aria-haspopup="menu" id="base-ui-_R_1mshlktbsnlhjiuqsnpfiutb_" aria-label="More actions" class="group disabled:pointer-events-none [&amp;&gt;span]:line-clamp-1 overflow-hidden group focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light py-0.5 gap-1 text-sm text-gray-950/50 dark:text-white/50 group-hover:text-gray-950/70 dark:group-hover:text-white/70 rounded-none rounded-r-xl border flex items-center justify-center h-[34px] border-gray-200 aspect-square dark:border-white/[0.07] bg-background-light dark:bg-background-dark hover:bg-gray-600/5 dark:hover:bg-gray-200/5"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 rotate-90"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></div></div><div class="mt-2 text-lg prose prose-gray dark:prose-invert [&amp;&gt;*]:[overflow-wrap:anywhere]"><p>Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.</p></div><div id="page-context-menu" class="flex items-center shrink-0 min-w-[156px] mt-3 @[520px]/page-header:hidden"><button id="page-context-menu-button" class="rounded-l-xl px-3 text-gray-700 dark:text-gray-300 py-1.5 border border-gray-200 dark:border-white/[0.07] bg-background-light dark:bg-background-dark hover:bg-gray-600/5 dark:hover:bg-gray-200/5 border-r-0" aria-label="Copy page"><div class="flex items-center gap-2 text-sm text-center font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 shrink-0"><path d="M14.25 5.25H7.25C6.14543 5.25 5.25 6.14543 5.25 7.25V14.25C5.25 15.3546 6.14543 16.25 7.25 16.25H14.25C15.3546 16.25 16.25 15.3546 16.25 14.25V7.25C16.25 6.14543 15.3546 5.25 14.25 5.25Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.80103 11.998L1.77203 5.07397C1.61003 3.98097 2.36403 2.96397 3.45603 2.80197L10.38 1.77297C11.313 1.63397 12.19 2.16297 12.528 3.00097" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><span class="grid"><span aria-hidden="true" class="invisible col-start-1 row-start-1">Copy page</span><span class="col-start-1 row-start-1">Copy page</span></span></div></button><button type="button" tabindex="0" aria-haspopup="menu" id="base-ui-_R_3dhlktbsnlhjiuqsnpfiutb_" aria-label="More actions" class="group disabled:pointer-events-none [&amp;&gt;span]:line-clamp-1 overflow-hidden group focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light py-0.5 gap-1 text-sm text-gray-950/50 dark:text-white/50 group-hover:text-gray-950/70 dark:group-hover:text-white/70 rounded-none rounded-r-xl border flex items-center justify-center h-[34px] border-gray-200 aspect-square dark:border-white/[0.07] bg-background-light dark:bg-background-dark hover:bg-gray-600/5 dark:hover:bg-gray-200/5"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3 transition-transform text-gray-400 group-hover:text-gray-600 dark:text-gray-600 dark:group-hover:text-gray-400 shrink-0 rotate-90"><path d="M6.5 2.75L12.75 9L6.5 15.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></header><div class="mdx-content @container/columns-container relative mt-8 prose prose-gray dark:prose-invert [contain:inline-size] isolate empty:hidden mb-14" data-page-title="API reference" data-page-href="/reference/api/introduction" id="content"><span data-as="p">Pinecone’s APIs let you interact programmatically with your Pinecone account.</span>
<div role="note" aria-label="Note" class="callout my-4 px-5 py-4 overflow-hidden rounded-2xl flex gap-3 border border-blue-200 bg-blue-50 dark:border-blue-900 dark:bg-blue-600/20" data-callout-type="note"><div class="mt-0.5 w-4" data-component-part="callout-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 text-blue-800 dark:text-blue-300"><path d="M 9 1.6714 C 13.0371 1.6714 16.3286 4.9629 16.3286 9 C 16.3286 13.0371 13.0371 16.3286 9 16.3286 C 7.0574 16.3252 5.1953 15.552 3.8217 14.1783 C 2.448 12.8047 1.6748 10.9426 1.6714 9 C 1.6714 4.9629 4.9629 1.6714 9 1.6714 Z M 9 0 C 4.0371 0 0 4.0371 0 9 C 0 13.9629 4.0371 18 9 18 C 13.9629 18 18 13.9629 18 9 C 18 4.0371 13.9629 0 9 0 Z M 10.2857 3.8571 H 7.7143 V 10.2857 H 10.2857 V 3.8571 Z M 10.2857 11.5714 H 7.7143 V 14.1429 H 10.2857 V 11.5714 Z" fill="currentColor" stroke="none" fill-rule="evenodd" clip-rule="evenodd"></path></svg></div><div class="text-sm prose dark:prose-invert min-w-0 w-full [&amp;_kbd]:bg-background-light dark:[&amp;_kbd]:bg-background-dark [&amp;_code]:text-current! [&amp;_kbd]:text-current! [&amp;_a]:text-current! [&amp;_a]:border-current [&amp;_strong]:text-current! text-blue-800 dark:text-blue-300" data-component-part="callout-content"><span data-as="p"><a class="link" href="/reference/pinecone-sdks#sdk-versions">SDK versions</a> are pinned to specific API versions.</span></div></div>
<h2 class="flex whitespace-pre-wrap group font-semibold" id="database"><div class="absolute" tabindex="-1"><a href="#database" class="-ml-10 flex items-center opacity-0 border-0 group-hover:opacity-100 focus:opacity-100 focus:outline-0 group/link" aria-label="Navigate to header">​<div class="size-6 rounded-md flex items-center justify-center shadow-xs text-gray-400 dark:text-white/50 dark:bg-background-dark dark:brightness-[1.35] dark:ring-1 dark:hover:brightness-150 bg-white ring-1 ring-gray-400/30 dark:ring-gray-700/25 hover:ring-gray-400/60 dark:hover:ring-white/20 group-focus/link:border-2 group-focus/link:border-primary dark:group-focus/link:border-primary-light"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-3 shrink-0"><path d="M8.50001 6.827C8.14801 6.995 7.81801 7.225 7.52701 7.517L7.51701 7.527C6.13601 8.908 6.13601 11.146 7.51701 12.527L9.69201 14.702C11.073 16.083 13.311 16.083 14.692 14.702L14.702 14.692C16.083 13.311 16.083 11.073 14.702 9.692L13.771 8.761" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M9.50002 11.173C9.85202 11.005 10.182 10.775 10.473 10.483L10.483 10.473C11.864 9.092 11.864 6.854 10.483 5.473L8.30802 3.298C6.92702 1.917 4.68902 1.917 3.30802 3.298L3.29802 3.308C1.91702 4.689 1.91702 6.927 3.29802 8.308L4.22902 9.239" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></a></div><span class="min-w-0 break-words cursor-pointer">Database</span></h2>
<span data-as="p">Use the Database API to store and query records in <a class="link" href="/guides/get-started/quickstart">Pinecone Database</a>.</span>
<span data-as="p">The following Pinecone SDKs support the Database API:</span>
<div class="columns prose dark:prose-invert grid max-w-none gap-4 @2xl/columns-container:grid-cols-[repeat(var(--cols),minmax(0,1fr))] @[0px]/columns-container:grid-cols-1 card-group dark:prose-dark gap-y-0 sm:grid-cols-[repeat(var(--cols),minmax(0,1fr))]!" style="--cols:3"><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_5cllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/regular/terminal.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/regular/terminal.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_5cllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">CLI</h2><div id="_R_5cllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_9cllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/python.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/python.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_9cllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Python SDK</h2><div id="_R_9cllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_dcllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/node-js.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/node-js.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_dcllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Node.js SDK</h2><div id="_R_dcllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_hcllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/java.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/java.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_hcllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Java SDK</h2><div id="_R_hcllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_lcllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/golang.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/golang.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_lcllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Go SDK</h2><div id="_R_lcllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div></div>
<h2 class="flex whitespace-pre-wrap group font-semibold" id="inference"><div class="absolute" tabindex="-1"><a href="#inference" class="-ml-10 flex items-center opacity-0 border-0 group-hover:opacity-100 focus:opacity-100 focus:outline-0 group/link" aria-label="Navigate to header">​<div class="size-6 rounded-md flex items-center justify-center shadow-xs text-gray-400 dark:text-white/50 dark:bg-background-dark dark:brightness-[1.35] dark:ring-1 dark:hover:brightness-150 bg-white ring-1 ring-gray-400/30 dark:ring-gray-700/25 hover:ring-gray-400/60 dark:hover:ring-white/20 group-focus/link:border-2 group-focus/link:border-primary dark:group-focus/link:border-primary-light"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-3 shrink-0"><path d="M8.50001 6.827C8.14801 6.995 7.81801 7.225 7.52701 7.517L7.51701 7.527C6.13601 8.908 6.13601 11.146 7.51701 12.527L9.69201 14.702C11.073 16.083 13.311 16.083 14.692 14.702L14.702 14.692C16.083 13.311 16.083 11.073 14.702 9.692L13.771 8.761" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M9.50002 11.173C9.85202 11.005 10.182 10.775 10.473 10.483L10.483 10.473C11.864 9.092 11.864 6.854 10.483 5.473L8.30802 3.298C6.92702 1.917 4.68902 1.917 3.30802 3.298L3.29802 3.308C1.91702 4.689 1.91702 6.927 3.29802 8.308L4.22902 9.239" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div></a></div><span class="min-w-0 break-words cursor-pointer">Inference</span></h2>
<span data-as="p">Use the Inference API to generate vector embeddings and rerank results using <a class="link" href="/guides/index-data/create-an-index#embedding-models">embedding models</a> and <a class="link" href="/guides/search/rerank-results#reranking-models">reranking models</a> hosted on Pinecone’s infrastructure.</span>
<span data-as="p">There are two ways to use the Inference API:</span>
<ul>
<li>As a standalone service, through the <a class="link" href="/reference/api/latest/inference/rerank">Rerank documents</a> and <a class="link" href="/reference/api/latest/inference/generate-embeddings">Generate vectors</a> endpoints.</li>
<li>As an integrated part of database operations, through the <a class="link" href="/reference/api/latest/control-plane/create_for_model">Create an index with integrated embedding</a>, <a class="link" href="/reference/api/latest/data-plane/upsert_records">Upsert text</a>, and <a class="link" href="/reference/api/latest/data-plane/search_records">Search with text</a> endpoints.</li>
</ul>
<span data-as="p">The following Pinecone SDKs support using the Inference API:</span>
<div class="columns prose dark:prose-invert grid max-w-none gap-4 @2xl/columns-container:grid-cols-[repeat(var(--cols),minmax(0,1fr))] @[0px]/columns-container:grid-cols-1 card-group dark:prose-dark gap-y-0 sm:grid-cols-[repeat(var(--cols),minmax(0,1fr))]!" style="--cols:3"><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_6sllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/python.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/python.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_6sllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Python SDK</h2><div id="_R_6sllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_asllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/node-js.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/node-js.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_asllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Node.js SDK</h2><div id="_R_asllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_esllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/java.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/java.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_esllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Java SDK</h2><div id="_R_esllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div><div class="card block font-normal group relative my-2 ring-2 ring-transparent rounded-2xl bg-white dark:bg-background-dark border border-gray-950/10 dark:border-white/10 overflow-hidden w-full cursor-pointer hover:border-primary! dark:hover:border-primary-light!" aria-labelledby="_R_isllktbsnlhjiuqsnpfiutb_" tabindex="0" role="link"><div class="px-6 py-5 relative" data-component-part="card-content-container"><div class="absolute text-gray-400 dark:text-gray-500 group-hover:text-primary dark:group-hover:text-primary-light top-5 right-5 hidden"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="m-0.5 size-3 shrink-0"><path d="M14.25 3.75L3.75525 14.2446" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.71301 3.75H14.2499V13.2869" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></div><div aria-hidden="true" class="size-6 fill-gray-800 dark:fill-gray-100 text-gray-800 dark:text-gray-100 [&amp;&gt;svg]:size-6" data-component-part="card-icon"><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! size-6 m-0! shrink-0 bg-primary dark:bg-primary-light" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/golang.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/golang.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></div><div class="w-full"><h2 id="_R_isllktbsnlhjiuqsnpfiutb_" class="not-prose font-semibold text-base text-gray-800 dark:text-white mt-4" contentEditable="false" data-component-part="card-title">Go SDK</h2><div id="_R_isllktbsnlhjiuqsnpfiutbH1_" class="prose mt-1 font-normal text-base leading-6 text-gray-600 dark:text-gray-400" data-component-part="card-content"></div></div></div></div></div></div><div class="feedback-toolbar pb-16 w-full flex flex-col gap-y-8"><div class="flex flex-row flex-wrap gap-4 items-center justify-between"><p class="inline-block text-sm text-gray-600 dark:text-gray-400 whitespace-nowrap">Was this page helpful?</p><div class="flex flex-wrap grow gap-3 items-center justify-end"><div class="flex gap-3 items-center"><button id="feedback-thumbs-up" class="px-3.5 py-2 flex flex-row gap-3 items-center border-standard rounded-xl text-gray-600 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 bg-white/50 dark:bg-codeblock/50 hover:border-gray-500 hover:dark:border-gray-500 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 shrink-0 text-current"><path d="M5.25 7.494C5.25 7.014 5.423 6.55 5.736 6.187L10 1.25C10.854 1.677 11.25 2.678 10.92 3.574L9.75 6.75H14.152C15.465 6.75 16.421 7.993 16.085 9.262L14.894 13.762C14.662 14.639 13.868 15.25 12.961 15.25H7.25C6.145 15.25 5.25 14.355 5.25 13.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.25 6.75H2.75C2.19772 6.75 1.75 7.19772 1.75 7.75V14.25C1.75 14.8023 2.19772 15.25 2.75 15.25H4.25C4.80228 15.25 5.25 14.8023 5.25 14.25V7.75C5.25 7.19772 4.80228 6.75 4.25 6.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><small class="text-sm font-normal leading-4">Yes</small></button><button id="feedback-thumbs-down" class="px-3.5 py-2 flex flex-row gap-3 items-center border-standard rounded-xl text-gray-600 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 bg-white/50 dark:bg-codeblock/50 hover:border-gray-500 hover:dark:border-gray-500 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-4 shrink-0 text-current"><path d="M5.25 10.506C5.25 10.986 5.423 11.45 5.736 11.813L10 16.75C10.854 16.323 11.25 15.322 10.92 14.426L9.75 11.25H14.152C15.465 11.25 16.421 10.007 16.085 8.738L14.894 4.238C14.662 3.361 13.868 2.75 12.961 2.75H7.25C6.145 2.75 5.25 3.645 5.25 4.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4.25 2.75H2.75C2.19772 2.75 1.75 3.19772 1.75 3.75V10.25C1.75 10.8023 2.19772 11.25 2.75 11.25H4.25C4.80228 11.25 5.25 10.8023 5.25 10.25V3.75C5.25 3.19772 4.80228 2.75 4.25 2.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><small class="text-sm font-normal leading-4">No</small></button></div><div class="flex gap-3"></div></div></div></div><nav id="pagination" aria-label="Pagination" class="px-0.5 flex items-center gap-6 text-sm font-semibold text-gray-700 dark:text-gray-200"><a rel="next" aria-label="Next: Authentication" data-component-part="pagination-next" class="group flex items-center min-w-0 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary dark:focus-visible:outline-primary-light gap-3 rounded-sm ml-auto pagination-next" href="/reference/api/authentication"><div class="truncate group-hover:text-gray-900 dark:group-hover:text-white" data-component-part="pagination-title">Authentication</div><svg viewBox="0 0 3 6" aria-hidden="true" data-component-part="pagination-chevron" class="h-1.5 shrink-0 stroke-gray-400 overflow-visible group-hover:stroke-gray-600 dark:group-hover:stroke-gray-300 rotate-180"><path d="M3 0L0 3L3 6" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></nav><div data-assistant-bar="" class="left-0 right-0 sticky bottom-0 w-full overflow-hidden z-20 pointer-events-none print:hidden"><div class="chat-assistant-floating-input w-full group/assistant-bar relative before:content-[&quot;&quot;] before:absolute before:left-0 before:right-0 before:top-[calc(50%-0.5rem)] sm:before:top-[calc(50%-0.75rem)] before:h-[200px] before:bg-background-light dark:before:bg-background-dark translate-y-[100px] opacity-0"><div class="relative pb-4 sm:pb-6"><div class="flex flex-col w-full rounded-2xl pointer-events-auto bg-background-light dark:bg-background-dark border border-gray-200 dark:border-white/10 focus-within:border-primary dark:focus-within:border-primary-light transition-colors"><div class="relative flex items-end"><textarea id="chat-assistant-textarea" aria-label="Ask a question..." autoComplete="off" placeholder="Ask a question..." class="chat-assistant-input w-full bg-transparent border-0 peer/input text-gray-900 dark:text-gray-100 placeholder-gray-600 dark:placeholder-gray-300 outline-hidden! focus:outline-hidden! focus:ring-0 py-2.5 pl-3.5 pr-10 font-bodyWeight text-sm" style="resize:none"></textarea><button class="chat-assistant-send-button flex justify-center items-center rounded-full p-1 size-6 bg-primary/30 dark:bg-primary-dark/30 absolute right-2.5 bottom-2" aria-label="Send message" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-2.5 shrink-0 text-white dark:text-white"><path d="M9.0 1.5754L8.9999 16.4171" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.2563 8.319L8.9999 1.5754L15.7435 8.3191" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></div></div></div></div><footer id="footer" class="flex gap-12 justify-between pt-10 border-t border-gray-100 sm:flex dark:border-gray-800/50 pb-28"><div class="flex gap-6 flex-wrap"><a href="https://x.com/pinecone?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor" target="_blank" rel="noopener noreferrer" class="h-fit"><span class="sr-only">x</span><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! w-5 h-5 bg-gray-400 dark:bg-gray-500 hover:bg-gray-500 dark:hover:bg-gray-400" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/x-twitter.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/x-twitter.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></a><a href="https://www.linkedin.com/company/pinecone-io" target="_blank" rel="noopener noreferrer" class="h-fit"><span class="sr-only">linkedin</span><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! w-5 h-5 bg-gray-400 dark:bg-gray-500 hover:bg-gray-500 dark:hover:bg-gray-400" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/linkedin.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/linkedin.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></a><a href="https://www.youtube.com/@pinecone-io" target="_blank" rel="noopener noreferrer" class="h-fit"><span class="sr-only">youtube</span><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! w-5 h-5 bg-gray-400 dark:bg-gray-500 hover:bg-gray-500 dark:hover:bg-gray-400" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/youtube.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/youtube.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></a><a href="https://github.com/pinecone-io" target="_blank" rel="noopener noreferrer" class="h-fit"><span class="sr-only">github</span><svg class="forced-colors:forced-color-adjust-none forced-colors:bg-[color:CanvasText]! w-5 h-5 bg-gray-400 dark:bg-gray-500 hover:bg-gray-500 dark:hover:bg-gray-400" aria-hidden="true" focusable="false" style="-webkit-mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/github.svg&quot;);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:url(&quot;https://d3gk2c5xim1je2.cloudfront.net/fontawesome/v7.2.0/brands/github.svg&quot;);mask-repeat:no-repeat;mask-position:center"></svg></a></div></footer></div></div></main></div><!--$--><!--/$--></div><div data-assistant-sheet-container="" class="sticky shrink-0 z-22 bg-background-light dark:bg-background-dark mt-(--banner-height,0px) top-(--banner-height,0px) h-[calc(100vh-var(--banner-height,0px))] max-lg:hidden print:hidden" style="width:var(--assistant-sheet-width, 0px);overflow:hidden"><div class="absolute left-0 top-0 bottom-0 w-px z-10 cursor-col-resize after:content-[&quot;&quot;] after:absolute after:inset-y-0 after:-inset-x-2 after:select-none bg-gray-100 dark:bg-gray-800 hover:bg-gray-200 dark:hover:bg-gray-700"></div><div id="chat-assistant-sheet" class="flex flex-col overflow-hidden shrink-0 relative h-full bg-background-light dark:bg-background-dark chat-assistant-sheet" aria-hidden="true"><div class="w-full flex flex-col flex-1 min-h-0 lg:pt-3"><div class="chat-assistant-sheet-header flex items-center justify-between pb-3 px-4"><div class="flex items-center gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="size-5 text-primary dark:text-primary-light shrink-0" aria-hidden="true"><path d="M5.65799 2.99L4.39499 2.569L3.97399 1.306C3.83699 0.898 3.16199 0.898 3.02499 1.306L2.60399 2.569L1.34099 2.99C1.13699 3.058 0.998993 3.249 0.998993 3.464C0.998993 3.679 1.13699 3.87 1.34099 3.938L2.60399 4.359L3.02499 5.622C3.09299 5.826 3.28499 5.964 3.49999 5.964C3.71499 5.964 3.90599 5.826 3.97499 5.622L4.39599 4.359L5.65899 3.938C5.86299 3.87 6.00099 3.679 6.00099 3.464C6.00099 3.249 5.86199 3.058 5.65799 2.99Z" fill="currentColor" stroke="none"></path><path d="M9.5 2.75L11.412 7.587L16.25 9.5L11.412 11.413L9.5 16.25L7.587 11.413L2.75 9.5L7.587 7.587L9.5 2.75Z" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg><span class="font-medium text-gray-900 dark:text-gray-100">Assistant</span></div><div class="flex items-center gap-1"><button class="group hover:bg-gray-100 dark:hover:bg-white/10 p-1.5 rounded-lg" aria-label="Maximize assistant panel"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-4 sm:size-3.5 text-gray-500 group-hover:text-gray-700 dark:group-hover:text-gray-300 shrink-0"><path d="M10.75 2.75H15.25V7.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M15.25 2.75L10.75 7.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.75 10.75V15.25H7.25" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.75 15.25L7.25 10.75" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button><button class="group hover:bg-gray-100 dark:hover:bg-white/10 p-1.5 rounded-lg" aria-label="Close assistant panel"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-[20px] sm:size-4 text-gray-500 group-hover:text-gray-700 dark:group-hover:text-gray-300 shrink-0"><path d="M14 4L4 14" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M4 4L14 14" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></div><div id="chat-content" class="chat-assistant-sheet-content flex flex-col-reverse flex-1 overflow-y-auto relative px-5 min-h-0"><div class="grow"></div><div class="h-full flex flex-col justify-between"><div class="mt-4 flex flex-col items-center text-sm"><div class="mx-8 text-center text-gray-400 dark:text-gray-600 text-xs chat-assistant-disclaimer-text">Responses are generated using AI and may contain mistakes.</div></div></div></div><div class="px-4 pb-4 shrink-0"><div class=""><div class="flex flex-col w-full rounded-2xl pointer-events-auto bg-background-light dark:bg-background-dark border border-gray-200 dark:border-white/10 focus-within:border-primary dark:focus-within:border-primary-light transition-colors"><div class="relative flex items-end"><textarea id="chat-assistant-textarea" aria-label="Ask a question..." autoComplete="off" placeholder="Ask a question..." class="chat-assistant-input w-full bg-transparent border-0 peer/input text-gray-900 dark:text-gray-100 placeholder-gray-600 dark:placeholder-gray-300 outline-hidden! focus:outline-hidden! focus:ring-0 py-2.5 pl-3.5 pr-10 font-bodyWeight text-sm pb-0!" style="resize:none" rows="2"></textarea></div><div class="flex items-center justify-between px-2 pb-2"><input type="file" accept="image/*,.pdf,.js,.jsx,.ts,.tsx,.mjs,.cjs,.md,.mdx,.json,.html,.css,.py,.csv,.txt,.yaml,.yml,.xml,.sql,.sh,.bash,.zsh,.graphql,.gql,.toml,.env,.go,.rs,.rb,.java,.kt,.swift,.c,.cpp,.cc,.h,.hpp,.cs,.php,.dart,.lua,.r,.scala,.ini,.cfg,.conf,.log,.dockerfile,.makefile,.gitignore" multiple="" class="hidden"/><button type="button" class="p-1 rounded-lg text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 hover:bg-gray-100 dark:hover:bg-white/10" aria-label="Add attachment"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="size-3.5 shrink-0"><path d="M7.75 5V11.75C7.75 12.578 8.422 13.25 9.25 13.25C10.078 13.25 10.75 12.578 10.75 11.75V4.75C10.75 3.093 9.407 1.75 7.75 1.75C6.093 1.75 4.75 3.093 4.75 4.75V11.75C4.75 14.235 6.765 16.25 9.25 16.25C11.735 16.25 13.75 14.235 13.75 11.75V5" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button><button class="chat-assistant-send-button flex justify-center items-center rounded-full p-1 size-6 bg-primary/30 dark:bg-primary-dark/30" aria-label="Send message" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" class="size-2.5 shrink-0 text-white dark:text-white"><path d="M9.0 1.5754L8.9999 16.4171" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path><path d="M2.2563 8.319L8.9999 1.5754L15.7435 8.3191" stroke="currentColor" width="1.5" linecap="round" linejoin="round"></path></svg></button></div></div></div></div></div></div></div></div></div><script src="/mintlify-assets/_next/static/chunks/6d55b684068fd47e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\na:I[168027,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n:HL[\"/mintlify-assets/_next/static/chunks/462bacc63bed9960.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"style\"]\n:HL[\"/mintlify-assets/_next/static/chunks/bf5dec8f24f39796.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"style\"]\n:HL[\"/mintlify-assets/_next/static/media/83afe278b6a6bb3c.p.3a6ba036.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/mintlify-assets/_next/static/media/PaperMono_Variable.p.aa32f7a0.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/mintlify-assets/_next/static/media/f67ad414ed34149c.p.84166d94.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"emAapN7r3IScb0MN7QRch\",\"p\":\"/mintlify-assets\",\"c\":[\"\",\"_sites\",\"pinecone\",\"reference\",\"api\",\"introduction\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"%5Fsites\",{\"children\":[[\"subdomain\",\"pinecone\",\"d\"],{\"children\":[\"(multitenant)\",{\"children\":[[\"slug\",\"reference/api/introduction\",\"oc\"],{\"children\":[\"__PAGE__\",{}]}]}]}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/mintlify-assets/_next/static/chunks/462bacc63bed9960.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/mintlify-assets/_next/static/chunks/bf5dec8f24f39796.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"suppressHydrationWarning\":true,\"lang\":\"en\",\"className\":\"inter_1d81deff-module__CYM0aG__variable papermono_89c757f2-module__6aS5zq__variable dark\",\"data-banner-state\":\"visible\",\"data-assistant-state\":\"closed\",\"data-page-mode\":\"none\",\"data-current-path\":\"/\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"!function(){var b=\\\"\\\";\\nfunction a(p){if(p==null)return\\\"/\\\";p=\\\"\\\"+p;if(\\\"\\\"===p)return\\\"/\\\";return\\\"/\\\"===p.charAt(0)?p:\\\"/\\\"+p}\\nfunction u(p){if(p==null)return p;p=\\\"\\\"+p;if(!p||p.charAt(p.length-1)===\\\"/\\\")return p.slice(0,-1);return p}\\nfunction i(p){if(p==null)return p;p=\\\"\\\"+p;if(6\u003c=p.length\u0026\u0026p.substring(p.length-6)===\\\"/index\\\")return p.substring(0,p.length-6);if(\\\"index\\\"===p)return\\\"\\\";return p}\\nvar p=(location.pathname||\\\"\\\").split(\\\"?\\\")[0].split(\\\"#\\\")[0]||\\\"\\\";\\nif(b)if(p===b)p=\\\"\\\";else if(0===p.indexOf(b+\\\"/\\\"))p=p.substring(b.length);\\np=a(p);p=u(p);p=i(p);p=\\\"\\\"===p||\\\"index\\\"===p?\\\"/\\\":a(p);\\ndocument.documentElement.setAttribute(\\\"data-current-path\\\",p);\\n}();\"}}],[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"(() =\u003e {\\n  const isIOS =\\n    /iP(hone|ad|od)/.test(navigator.userAgent) ||\\n    (/Macintosh/.test(navigator.userAgent) \u0026\u0026 navigator.maxTouchPoints \u003e 1);\\n  if (!isIOS) return;\\n  const apply = () =\u003e {\\n    for (const meta of document.querySelectorAll('meta[name=\\\"viewport\\\"]')) {\\n      const content = meta.getAttribute('content') || '';\\n      if (!content.includes('maximum-scale')) {\\n        meta.setAttribute('content', content + ', maximum-scale=1');\\n      }\\n    }\\n  };\\n  apply();\\n  new MutationObserver(apply).observe(document.head, {\\n    childList: true,\\n    subtree: true,\\n    attributes: true,\\n    attributeFilter: ['content'],\\n  });\\n})();\"}}],[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"!function(){\\nfunction read(){try{\\nvar e=performance.getEntriesByType?performance.getEntriesByType(\\\"navigation\\\"):[];\\nvar st=(e[0]\u0026\u0026e[0].serverTiming)||[];\\nvar g={};\\nfor(var i=0;i\u003cst.length;i++){var n=st[i].name,d=st[i].description;if(!d)continue;try{d=decodeURIComponent(d)}catch(x){}\\nif(n===\\\"country\\\")g.country=d;else if(n===\\\"region\\\")g.region=d;else if(n===\\\"continent\\\")g.continent=d;}\\nvar w=window;w.mintlify=w.mintlify||{};w.mintlify.geo=g;\\n}catch(x){}}\\nread();document.addEventListener(\\\"DOMContentLoaded\\\",read);\\n}();\"}}],[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"!function(){try{\\nvar w=window;w.mintlify=w.mintlify||{};\\nvar q=w.mintlify.__apiPlaygroundInputsQueue;\\nif(!Array.isArray(q)){q=[];w.mintlify.__apiPlaygroundInputsQueue=q;}\\nw.mintlify.api=w.mintlify.api||{};\\nw.mintlify.api.playground=w.mintlify.api.playground||{};\\nif(typeof w.mintlify.api.playground.setServerVariables!==\\\"function\\\"){\\nw.mintlify.api.playground.setServerVariables=function(v){q.push({type:\\\"set\\\",variables:v});};\\n}\\nif(typeof w.mintlify.api.playground.clearServerVariables!==\\\"function\\\"){\\nw.mintlify.api.playground.clearServerVariables=function(){q.push({type:\\\"clear\\\"});};\\n}\\n}catch(e){}}();\"}}],\"$L2\",false]}],\"$L3\"]}]]}],{\"children\":[\"%5Fsites\",\"$L4\",{\"children\":[[\"subdomain\",\"pinecone\",\"d\"],\"$L5\",{\"children\":[\"(multitenant)\",\"$L6\",{\"children\":[[\"slug\",\"reference/api/introduction\",\"oc\"],\"$L7\",{\"children\":[\"__PAGE__\",\"$L8\",{},null,false]},null,false]},null,false]},null,false]},null,false]},null,false],\"$L9\",false]],\"m\":\"$undefined\",\"G\":[\"$a\",[\"$Lb\",\"$Lc\"]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"d:I[667786,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"MintlifyApiPlaygroundInputsInit\"]\ne:I[339756,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"f:I[556357,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/6a5cc962566389c8.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"10:I[837457,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"11:I[894587,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ThemeProvider\"]\n"])</script><script>self.__next_f.push([1,"12:I[152823,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ColorVariables\"]\n"])</script><script>self.__next_f.push([1,"13:I[531961,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"FontScript\"]\n"])</script><script>self.__next_f.push([1,"14:I[649328,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"RoundedVariables\"]\n"])</script><script>self.__next_f.push([1,"15:I[702910,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/6daf1a73800e2a3b.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"RecommendedPagesList\"]\n"])</script><script>self.__next_f.push([1,"16:I[570420,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"DataCurrentPathUpdater\"]\n"])</script><script>self.__next_f.push([1,"17:I[341175,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e0a92978f6764f5d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"1a:I[897367,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"OutletBoundary\"]\n1c:I[711533,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"AsyncMetadataOutlet\"]\n1e:I[897367,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ViewportBoundary\"]\n20:I[897367,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"MetadataBoundary\"]\n21:\"$Sreact.suspense\"\n"])</script><script>self.__next_f.push([1,"2:[\"$\",\"script\",null,{\"type\":\"text/javascript\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function(a,b){try{let c=document.getElementById(\\\"banner\\\")?.innerText;if(c){for(let d=0;d\u003clocalStorage.length;d++){let e=localStorage.key(d);if(e?.endsWith(a)\u0026\u0026localStorage.getItem(e)===c)return void document.documentElement.setAttribute(b,\\\"hidden\\\")}document.documentElement.setAttribute(b,\\\"visible\\\");return}for(let c=0;c\u003clocalStorage.length;c++){let d=localStorage.key(c);if(d?.endsWith(a)\u0026\u0026localStorage.getItem(d))return void document.documentElement.setAttribute(b,\\\"hidden\\\")}document.documentElement.setAttribute(b,\\\"visible\\\")}catch(a){document.documentElement.setAttribute(b,\\\"hidden\\\")}})(\\n  \\\"bannerDismissed\\\",\\n  \\\"data-banner-state\\\",\\n)\"}}]\n"])</script><script>self.__next_f.push([1,"3:[\"$\",\"body\",null,{\"className\":\"antialiased\",\"children\":[[\"$\",\"$Ld\",null,{}],false,[\"$\",\"$Le\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$f\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-1\",{\"src\":\"/mintlify-assets/_next/static/chunks/6a5cc962566389c8.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-2\",{\"src\":\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-3\",{\"src\":\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-4\",{\"src\":\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}]],\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"$L11\",null,{\"children\":[[\"$\",\"$L12\",null,{}],[\"$\",\"$L13\",null,{}],[\"$\",\"$L14\",null,{}],[\"$\",\"style\",null,{\"children\":\":root {\\n  --primary: 17 120 102;\\n  --primary-light: 74 222 128;\\n  --primary-dark: 22 101 52;\\n  --background-light: 255 255 255;\\n  --background-dark: 15 17 23;\\n}\"}],[\"$\",\"main\",null,{\"className\":\"h-screen bg-background-light dark:bg-background-dark text-left\",\"children\":[\"$\",\"article\",null,{\"className\":\"bg-custom bg-fixed bg-center bg-cover relative flex flex-col items-center justify-center h-full\",\"children\":[\"$\",\"div\",null,{\"className\":\"w-full max-w-xl px-10\",\"children\":[[\"$\",\"span\",null,{\"className\":\"inline-flex mb-6 rounded-full px-3 py-1 text-sm font-semibold mr-4 text-white p-1 bg-primary\",\"children\":[\"Error \",404]}],[\"$\",\"h1\",null,{\"className\":\"font-semibold mb-3 text-3xl\",\"children\":\"Page not found!\"}],[\"$\",\"p\",null,{\"className\":\"text-lg text-gray-600 dark:text-gray-400 mb-6\",\"children\":\"We couldn't find the page.\"}],[\"$\",\"$L15\",null,{}]]}]}]}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],false,[\"$\",\"$L16\",null,{}]]}]\n"])</script><script>self.__next_f.push([1,"4:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$Le\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n"])</script><script>self.__next_f.push([1,"5:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$Le\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$17\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-1\",{\"src\":\"/mintlify-assets/_next/static/chunks/e0a92978f6764f5d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-2\",{\"src\":\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-3\",{\"src\":\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}],[\"$\",\"script\",\"script-4\",{\"src\":\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true}]],\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"$L11\",null,{\"children\":[[\"$\",\"$L12\",null,{}],[\"$\",\"$L13\",null,{}],[\"$\",\"$L14\",null,{}],[\"$\",\"style\",null,{\"children\":\":root {\\n  --primary: 17 120 102;\\n  --primary-light: 74 222 128;\\n  --primary-dark: 22 101 52;\\n  --background-light: 255 255 255;\\n  --background-dark: 15 17 23;\\n}\"}],[\"$\",\"main\",null,{\"className\":\"h-screen bg-background-light dark:bg-background-dark text-left\",\"children\":[\"$\",\"article\",null,{\"className\":\"bg-custom bg-fixed bg-center bg-cover relative flex flex-col items-center justify-center h-full\",\"children\":[\"$\",\"div\",null,{\"className\":\"w-full max-w-xl px-10\",\"children\":[[\"$\",\"span\",null,{\"className\":\"inline-flex mb-6 rounded-full px-3 py-1 text-sm font-semibold mr-4 text-white p-1 bg-primary\",\"children\":[\"Error \",404]}],[\"$\",\"h1\",null,{\"className\":\"font-semibold mb-3 text-3xl\",\"children\":\"Page not found!\"}],[\"$\",\"p\",null,{\"className\":\"text-lg text-gray-600 dark:text-gray-400 mb-6\",\"children\":\"We couldn't find the page.\"}],[\"$\",\"$L15\",null,{}]]}]}]}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n"])</script><script>self.__next_f.push([1,"6:[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-8\",{\"src\":\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-9\",{\"src\":\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-10\",{\"src\":\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-11\",{\"src\":\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-12\",{\"src\":\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-13\",{\"src\":\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-14\",{\"src\":\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L18\"]}]\n"])</script><script>self.__next_f.push([1,"7:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$Le\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n"])</script><script>self.__next_f.push([1,"8:[\"$\",\"$1\",\"c\",{\"children\":[\"$L19\",[[\"$\",\"script\",\"script-0\",{\"src\":\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-6\",{\"src\":\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-7\",{\"src\":\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L1a\",null,{\"children\":[\"$L1b\",[\"$\",\"$L1c\",null,{\"promise\":\"$@1d\"}]]}]]}]\n"])</script><script>self.__next_f.push([1,"9:[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$L1e\",null,{\"children\":\"$L1f\"}],null],[\"$\",\"$L20\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$21\",null,{\"fallback\":null,\"children\":\"$L22\"}]}]}]]}]\nb:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/mintlify-assets/_next/static/chunks/462bacc63bed9960.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\nc:[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/mintlify-assets/_next/static/chunks/bf5dec8f24f39796.css?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"1f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover\"}]]\n1b:null\n"])</script><script>self.__next_f.push([1,"1d:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"API reference - Pinecone Docs\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"application-name\",\"content\":\"Pinecone Docs\"}],[\"$\",\"meta\",\"3\",{\"name\":\"generator\",\"content\":\"Mintlify\"}],[\"$\",\"meta\",\"4\",{\"name\":\"msapplication-config\",\"content\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/browserconfig.xml\"}],[\"$\",\"meta\",\"5\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Pinecone Docs\"}],[\"$\",\"meta\",\"6\",{\"name\":\"msapplication-TileColor\",\"content\":\"#002BFF\"}],[\"$\",\"meta\",\"7\",{\"name\":\"google-site-verification\",\"content\":\"woTBImNAcYO-gseVfFKIzQrDRUmLWzFjBWrYbYkOTlI\"}],[\"$\",\"link\",\"8\",{\"rel\":\"canonical\",\"href\":\"https://docs.pinecone.io/reference/api/introduction\"}],[\"$\",\"link\",\"9\",{\"rel\":\"alternate\",\"type\":\"application/xml\",\"href\":\"/sitemap.xml\"}],[\"$\",\"link\",\"10\",{\"rel\":\"alternate\",\"type\":\"text/markdown\",\"href\":\"/reference/api/introduction.md\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:title\",\"content\":\"API reference - Pinecone Docs\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:description\",\"content\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:url\",\"content\":\"https://docs.pinecone.io/reference/api/introduction\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:site_name\",\"content\":\"Pinecone Docs\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:image\",\"content\":\"https://www.pinecone.io/images/docs_og_image_v2.png\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:title\",\"content\":\"The vector database to build knowledgeable AI | Pinecone\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:description\",\"content\":\"Search through billions of items for similar matches to any object, in milliseconds. It's the next generation of search, an API call away.\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:image\",\"content\":\"https://www.pinecone.io/images/docs_og_image_v2.png\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"link\",\"25\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/android-chrome-192x192.png\",\"type\":\"image/png\",\"sizes\":\"192x192\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"link\",\"26\",{\"rel\":\"apple-touch-icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/apple-touch-icon.png\",\"type\":\"image/png\",\"sizes\":\"180x180\",\"media\":\"$undefined\"}],[\"$\",\"link\",\"27\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon-16x16.png\",\"type\":\"image/png\",\"sizes\":\"16x16\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"link\",\"28\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon-32x32.png\",\"type\":\"image/png\",\"sizes\":\"32x32\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"link\",\"29\",{\"rel\":\"shortcut icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"$undefined\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"link\",\"30\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/android-chrome-192x192.png\",\"type\":\"image/png\",\"sizes\":\"192x192\",\"media\":\"(prefers-color-scheme: dark)\"}],[\"$\",\"link\",\"31\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon-16x16.png\",\"type\":\"image/png\",\"sizes\":\"16x16\",\"media\":\"(prefers-color-scheme: dark)\"}],\"$L23\",\"$L24\",\"$L25\"],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"22:\"$1d:metadata\"\n"])</script><script>self.__next_f.push([1,"26:I[27201,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"IconMark\"]\n23:[\"$\",\"link\",\"32\",{\"rel\":\"icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon-32x32.png\",\"type\":\"image/png\",\"sizes\":\"32x32\",\"media\":\"(prefers-color-scheme: dark)\"}]\n24:[\"$\",\"link\",\"33\",{\"rel\":\"shortcut icon\",\"href\":\"/mintlify-assets/_mintlify/favicons/pinecone/JqxxUxUkDTnX7oN2/_generated/favicon-dark/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"$undefined\",\"media\":\"(prefers-color-scheme: dark)\"}]\n25:[\"$\",\"$L26\",\"34\",{}]\n"])</script><script>self.__next_f.push([1,"27:I[707934,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"WebMcpRegistration\"]\n"])</script><script>self.__next_f.push([1,"28:I[590280,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"LivePreviewProvider\"]\n"])</script><script>self.__next_f.push([1,"29:I[973254,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"LivePreviewFavicon\"]\n"])</script><script>self.__next_f.push([1,"2a:I[197336,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"2b:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"AuthProvider\"]\n"])</script><script>self.__next_f.push([1,"2c:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"DeploymentMetadataProvider\"]\n"])</script><script>self.__next_f.push([1,"2d:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"DocsConfigProvider\"]\n"])</script><script>self.__next_f.push([1,"2f:I[597003,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ScopedNavProvider\"]\n"])</script><script>self.__next_f.push([1,"18:[null,[\"$\",\"$L27\",null,{\"subdomain\":\"pinecone\"}],[\"$\",\"$L28\",null,{\"isLivePreviewRoute\":false,\"children\":[[\"$\",\"$L29\",null,{}],[\"$\",\"$L11\",null,{\"appearance\":{\"default\":\"system\",\"strict\":false},\"codeblockTheme\":\"system\",\"children\":[[\"$\",\"blockquote\",null,{\"className\":\"sr-only\",\"data-agent-docs-index\":true,\"aria-hidden\":\"true\",\"children\":[[\"$\",\"h2\",null,{\"children\":\"Documentation Index\"}],[\"$\",\"p\",null,{\"children\":[\"Fetch the complete documentation index at:\",\" \",[\"$\",\"a\",null,{\"href\":\"/llms.txt\",\"tabIndex\":-1,\"children\":\"/llms.txt\"}]]}],[\"$\",\"p\",null,{\"children\":\"Use this file to discover all available pages before exploring further.\"}]]}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root{--banner-height:0px!important}\"}}],false,null,null,[\"$\",\"script\",null,{\"id\":\"_mintlify-banner-script\",\"dangerouslySetInnerHTML\":{\"__html\":\"(function i(a,b,c,d,e){try{let f,g,h=[];try{h=window.location.pathname.split(\\\"/\\\").filter(a=\u003e\\\"\\\"!==a\u0026\u0026\\\"global\\\"!==a).slice(0,2)}catch{h=[]}let i=h.find(a=\u003ec.includes(a)),j=[];for(let c of(i?j.push(i):j.push(b),j.push(\\\"global\\\"),j)){if(!c)continue;let b=a[c];if(b?.content){f=b.content,g=c;break}}if(!f)return void document.documentElement.setAttribute(d,\\\"hidden\\\");let k=!0,l=0;for(;l\u003clocalStorage.length;){let a=localStorage.key(l);if(l++,!a?.endsWith(e))continue;let b=localStorage.getItem(a);if(b\u0026\u0026b===f){k=!1;break}g\u0026\u0026(a.startsWith(`lang:${g}_`)||!a.startsWith(\\\"lang:\\\"))\u0026\u0026(localStorage.removeItem(a),l--)}document.documentElement.setAttribute(d,k?\\\"visible\\\":\\\"hidden\\\")}catch(a){console.error(a),document.documentElement.setAttribute(d,\\\"hidden\\\")}})(\\n  {},\\n  \\\"en\\\",\\n  [],\\n  \\\"data-banner-state\\\",\\n  \\\"bannerDismissed\\\",\\n)\"}}],[\"$\",\"$L2a\",null,{\"appId\":\"$undefined\",\"autoBoot\":true,\"children\":[\"$\",\"$L2b\",null,{\"value\":{\"auth\":\"$undefined\",\"userAuth\":\"$undefined\"},\"children\":[\"$\",\"$L2c\",null,{\"value\":{\"subdomain\":\"pinecone\",\"actualSubdomain\":\"pinecone\",\"customDomains\":[\"docs.pinecone.io\"],\"gitSource\":{\"type\":\"github\",\"owner\":\"pinecone-io\",\"repo\":\"docs\",\"deployBranch\":\"main\",\"contentDirectory\":\"\",\"isPrivate\":false,\"mountPath\":\"\",\"label\":\"\"},\"chroma\":{\"liveDeploymentHistoryId\":\"6a9b35b1f5490ed88a33d61d\",\"collectionId\":\"b3c7b798-da55-44a4-b298-cf71d1d33a05\",\"schemaVersion\":\"v3\",\"latestBuiltDeploymentHistoryId\":\"6a9b35b1f5490ed88a33d61d\"},\"feedback\":{\"thumbs\":true,\"issues\":false,\"edits\":false},\"entitlements\":{\"AI_CHAT\":{\"status\":\"ENABLED\"},\"REMOVE_BRANDING\":{\"status\":\"ENABLED\"},\"CONTEXTUAL_FEEDBACK\":{\"status\":\"ENABLED\"},\"CODE_SNIPPET_FEEDBACK\":{\"status\":\"ENABLED\"}},\"buildId\":\"6a9b53a1b9a1ca5f3220b04a\",\"clientVersion\":\"0.0.3558\",\"preview\":\"$undefined\",\"searchFilterCounts\":[{\"language\":\"default\",\"tag\":\"Pinecone Database\",\"count\":508},{\"language\":\"default\",\"tag\":\"Reference\",\"count\":488},{\"language\":\"default\",\"tag\":\"Database\",\"count\":234},{\"language\":\"default\",\"tag\":\"Guides\",\"count\":162},{\"language\":\"default\",\"tag\":\"Pinecone Assistant\",\"count\":129},{\"language\":\"default\",\"tag\":\"Admin\",\"count\":119},{\"language\":\"default\",\"tag\":\"Pinecone Nexus\",\"count\":75},{\"language\":\"default\",\"tag\":\"Backups\",\"count\":64},{\"language\":\"default\",\"tag\":\"Integrations\",\"count\":60},{\"language\":\"default\",\"tag\":\"Connect an integration\",\"count\":57}],\"searchSettings\":\"$undefined\",\"disableKonamiCode\":\"$undefined\"},\"children\":[\"$\",\"$L2d\",null,{\"value\":{\"docsConfig\":{\"theme\":\"mint\",\"$schema\":\"https://mintlify.com/docs.json\",\"name\":\"Pinecone Docs\",\"description\":\"Official Pinecone documentation for the vector database, Assistant, inference APIs, SDKs, and building production search and AI applications.\",\"colors\":{\"primary\":\"#002BFF\",\"light\":\"#1E86EE\",\"dark\":\"#002BFF\"},\"logo\":{\"light\":\"https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-Black.svg?fit=max\u0026auto=format\u0026n=HsZKO51bNmpAasdT\u0026q=85\u0026s=211d0e7bbefc29ce3b8feee1a05d76ee\",\"dark\":\"https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-White.svg?fit=max\u0026auto=format\u0026n=HsZKO51bNmpAasdT\u0026q=85\u0026s=4839c7a50a8bee830e943705c648297c\",\"href\":\"https://www.pinecone.io\"},\"favicon\":\"https://mintcdn.com/pinecone/9qvQp5nU6duJvusQ/favicon-512.png?fit=max\u0026auto=format\u0026n=9qvQp5nU6duJvusQ\u0026q=85\u0026s=a05db290834f742b6b4b5d30a8d74e90\",\"api\":{\"openapi\":[\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_control_2026-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-01.alpha/db_control_2026-01.alpha.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-01.alpha/db_data_2026-01.alpha.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_evaluation_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/oauth_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/oauth_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/assistant_control_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/assistant_data_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/assistant_evaluation_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/inference_2025-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/oauth_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/assistant_control_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/assistant_data_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/assistant_evaluation_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/inference_2025-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/assistant_control_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/assistant_data_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/assistant_evaluation_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/inference_2025-01.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/inference_2024-10.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml\",\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml\"],\"playground\":{\"display\":\"simple\"}},\"appearance\":\"$18:2:props:children:1:props:appearance\",\"background\":{\"color\":{\"light\":\"#FBFBFC\",\"dark\":\"#171717\"}},\"navbar\":{\"links\":[{\"href\":\"https://status.pinecone.io\",\"label\":\"Status\"},{\"href\":\"https://app.pinecone.io/organizations/-/settings/support\",\"label\":\"Support\"},{\"href\":\"https://app.pinecone.io/?sessionType=login\",\"label\":\"Log In\"}],\"primary\":{\"type\":\"button\",\"label\":\"Sign up free\",\"href\":\"https://app.pinecone.io/?sessionType=signup\"}},\"footer\":{\"socials\":{\"x\":\"https://x.com/pinecone?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor\",\"linkedin\":\"https://www.linkedin.com/company/pinecone-io\",\"youtube\":\"https://www.youtube.com/@pinecone-io\",\"github\":\"https://github.com/pinecone-io\"}},\"seo\":{\"metatags\":{\"og:image\":\"https://www.pinecone.io/images/docs_og_image_v2.png\",\"twitter:title\":\"The vector database to build knowledgeable AI | Pinecone\",\"twitter:description\":\"Search through billions of items for similar matches to any object, in milliseconds. It's the next generation of search, an API call away.\",\"twitter:site\":\"@pinecone\",\"twitter:image\":\"https://www.pinecone.io/images/docs_og_image_v2.png\",\"google-site-verification\":\"woTBImNAcYO-gseVfFKIzQrDRUmLWzFjBWrYbYkOTlI\"},\"indexing\":\"all\"},\"integrations\":{\"gtm\":{\"tagId\":\"GTM-5RCSPVG\"},\"heap\":{\"appId\":\"3879495182\"}},\"contextual\":{\"options\":[\"copy\",\"view\",\"chatgpt\",\"claude\"],\"display\":\"header\"},\"styling\":{\"latex\":false,\"codeblocks\":\"system\"},\"navigation\":{\"pages\":[]}},\"docsNavWithMetadata\":\"$undefined\",\"anonymizedNav\":\"$undefined\",\"hasFullNav\":false},\"children\":\"$L2e\"}]}]}]}]]}]]}]]\n"])</script><script>self.__next_f.push([1,"19:[\"$\",\"$L2f\",null,{\"scopedNav\":{\"global\":null,\"dropdowns\":[{\"dropdown\":\"Pinecone Database\",\"icon\":\"database\",\"tabs\":[{\"tab\":\"Guides\",\"pages\":[{\"title\":\"Guides\",\"href\":\"/guides/get-started/overview\"}]},{\"tab\":\"Reference\",\"versions\":[{\"version\":\"2026-07 (latest)\",\"default\":true,\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"List all indexes in a project.\",\"href\":\"/reference/api/2026-07/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create a Pinecone index. Define the schema for your index — dense vector, sparse vector, and full-text search fields — and, optionally, the deployment infrastructure (managed serverless or BYOC). To create an index with an integrated embedding model, use [Create an index with integrated embedding](https://docs.pinecone.io/reference/api/2026-07/control-plane/create_index_for_model). If `deployment` is omitted, the index is deployed as a managed (serverless) index on `aws` in `us-east-1`.\\n**The index schema cannot be modified after creation.** Field types, dimensions, metrics, and text-analysis settings are permanent. Choose your schema carefully before creating an index.\\nTo create an index from a backup, use [Create index from backup](https://docs.pinecone.io/reference/api/2026-07/control-plane/create_index_from_backup).\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2026-07/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml post /indexes/create-for-model\",\"title\":\"Create an index with integrated embedding\",\"description\":\"Create an index with integrated embedding.\\nWith this type of index, you provide source text, and Pinecone uses a [hosted embedding model](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models) to convert the text automatically during [upsert](https://docs.pinecone.io/reference/api/2026-07/data-plane/upsert_records) and [search](https://docs.pinecone.io/reference/api/2026-07/data-plane/search_records).\\nThe response is this version's index model, with the embedding configuration surfaced as a `semantic_text` field in the index `schema`, named after the `field_map` text entry. Read and write the index through the records API.\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index#integrated-embedding).\",\"href\":\"/reference/api/2026-07/control-plane/create_for_model\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2026-07/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2026-07/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. For guidance and examples, see [Manage indexes](https://docs.pinecone.io/guides/manage-data/manage-indexes).\",\"href\":\"/reference/api/2026-07/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"Return statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2026-07/data-plane/describeindexstats\"}]},{\"group\":\"Namespaces\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /namespaces\",\"title\":\"List namespaces\",\"description\":\"List all namespaces in a serverless index.\\n\\nUp to 100 namespaces are returned at a time by default, in sorted order (bitwise “C” collation). If the `limit` parameter is set, up to that number of namespaces are returned instead. Whenever there are additional namespaces to return, the response includes `pagination.next`, a token you pass as `paginationToken` to get the next batch of namespaces. When the response has no `pagination`, there are no more namespaces to return.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-07/data-plane/listnamespaces\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces\",\"title\":\"Create a namespace\",\"description\":\"Create a namespace in a serverless index.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-07/data-plane/createnamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /namespaces/{namespace}\",\"title\":\"Describe a namespace\",\"description\":\"Describe a namespace in a serverless index, including the total number of vectors in the namespace.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-07/data-plane/describenamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml delete /namespaces/{namespace}\",\"title\":\"Delete a namespace\",\"description\":\"Delete a namespace from a serverless index. Deleting a namespace is irreversible; all data in the namespace is permanently deleted.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-07/data-plane/deletenamespace\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /vectors/upsert\",\"title\":\"Upsert records\",\"description\":\"Upsert records into a namespace. If a new value is upserted for an existing record ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2026-07/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /records/namespaces/{namespace}/upsert\",\"title\":\"Upsert text\",\"description\":\"Upsert text into a namespace. Pinecone converts the text to vectors automatically using the hosted embedding model associated with the index.\\n\\nUpserting text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models); for any other index the request is rejected with `400`. It is not available on BYOC indexes.\\n\\nA request can contain at most 1000 records. Each record is identified by `_id`. The service also accepts `id` as an alias, which this schema does not model; a record must not carry both.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2026-07/data-plane/upsert_records\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /vectors/fetch\",\"title\":\"Fetch records\",\"description\":\"Look up and return records by ID from a single namespace. The returned records include the vector data and/or metadata.\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2026-07/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /vectors/fetch_by_metadata\",\"title\":\"Fetch records by metadata\",\"description\":\"Look up and return records by metadata from a single namespace. The returned records include the vector data and metadata.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2026-07/data-plane/fetch_by_metadata\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /vectors/update\",\"title\":\"Update a record\",\"description\":\"Update records by ID or by metadata in a namespace. Updating by ID changes the vector and/or metadata of a single record. Updating by metadata changes metadata across multiple records using a metadata filter.\\nIf a vector value is included, it will overwrite the previous value. If `set_metadata` is included, only the specified metadata fields are modified, and if a specified metadata field does not exist, it is added.\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2026-07/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /vectors/delete\",\"title\":\"Delete records\",\"description\":\"Delete records by id or by metadata from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2026-07/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /vectors/list\",\"title\":\"List record IDs\",\"description\":\"List the IDs of records in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nReturns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response includes `pagination.next`, a token you pass as `paginationToken` to get the next batch of IDs. When the response has no `pagination`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2026-07/data-plane/list\"}]},{\"group\":\"Search\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2026-07/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /records/namespaces/{namespace}/search\",\"title\":\"Search with text\",\"description\":\"Search a namespace with a query text, query vector, or record ID and return the most similar records, along with their similarity scores. Optionally, rerank the initial results based on their relevance to the query. \\n\\nSearching with text (`inputs`) is supported only for indexes with [integrated embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding); for any other index a text query is rejected with `400`, and it is not available on BYOC indexes; reranking (`rerank`) is likewise unavailable on BYOC indexes. Searching with a query vector (`vector`) or a record ID (`id`) works on any index served by the vectors API.\\n\\nFor guidance and examples, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2026-07/data-plane/search_records\"}]},{\"group\":\"Documents\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces/{namespace}/documents/upsert\",\"title\":\"Upsert documents\",\"description\":\"Upsert documents into a namespace.\\n\\nEach document must include an `_id` field and at least one field defined in the index schema; metadata fields may be\\nprovided alongside them.\\nAny metadata field you provide that is not declared in the schema is stored on the document, returned via include_fields, and\\nautomatically indexed for filtering.\",\"href\":\"/reference/api/2026-07/data-plane/upsert_documents\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces/{namespace}/documents/search\",\"title\":\"Search documents\",\"description\":\"Search for documents in a namespace using one or more scoring methods (dense vector, sparse vector, text, or query string similarity).\\n\\nReturns the top-k most similar documents along with their scores and requested fields.\",\"href\":\"/reference/api/2026-07/data-plane/search_documents\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces/{namespace}/documents/fetch\",\"title\":\"Fetch documents\",\"description\":\"Fetch documents from a namespace. Returns the specified fields for each document. Exactly one of `ids` or `filter` must be specified.\\n\\n- `ids`: Fetch the documents with the given IDs.\\n- `filter`: Fetch every document matching a metadata filter expression. Results are returned a page at a time, holding `limit` documents per page (100 by default, 10000 at most). When there are more documents to return, the response includes a `pagination` token you can pass back as `pagination_token` to retrieve the next page. When no `pagination` token is returned, there are no more documents to fetch.\",\"href\":\"/reference/api/2026-07/data-plane/fetch_documents\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces/{namespace}/documents/update\",\"title\":\"Update documents\",\"description\":\"Apply partial updates to documents in a namespace. Documents are selected either per ID with `documents`, or in bulk with `filter`.\\n\\n- `documents`: Each update is identified by its `_id`. Any other fields set new values for those fields, and fields listed in `_remove_fields` are removed from the document. Fields that are not mentioned are left unchanged. Updates to a document that does not exist are accepted but have no effect.\\n- `filter`: The same patch is applied to every document matching a metadata filter expression. The patch is given by `set_fields` and/or `remove_fields`, at least one of which must be specified. Text-match operators (`$match_phrase`, `$match_all`, `$match_any`) are not supported in a filtered update; they are only supported in search. The response reports `matched_records`, the number of documents the filter matched.\\n\\n`documents` and the by-filter fields (`filter`, `set_fields`, `remove_fields`) are mutually exclusive.\",\"href\":\"/reference/api/2026-07/data-plane/update_documents\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /namespaces/{namespace}/documents/delete\",\"title\":\"Delete documents\",\"description\":\"Delete documents from a namespace. Exactly one of `ids`, `filter`, or `delete_all` must be specified.\\n\\n- `ids`: Delete documents with the given IDs.\\n- `filter`: Delete every document matching a metadata filter expression. Text-match operators (`$match_phrase`, `$match_all`, `$match_any`) are not supported in a filtered delete; they are only supported in search. The response reports `matched_records`, the number of documents the filter matched.\\n- `delete_all`: Delete all documents in the namespace.\",\"href\":\"/reference/api/2026-07/data-plane/delete_documents\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"Start an asynchronous import of vectors from object storage into an index.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-07/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"List all recent and ongoing import operations.\\n\\nBy default, `list_imports` returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response includes `pagination.next`, a token you pass as `paginationToken` to get the next batch of imports. When the response has no `pagination`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-07/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"Return details of a specific import operation.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-07/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_data_2026-07.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"Cancel an import operation if it is not yet finished. It has no effect if the operation is already finished.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-07/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml post /indexes/{index_name}/backups\",\"title\":\"Create a backup of an index\",\"description\":\"Create a backup of an index.\\nThe backup records the schema of the index it is taken from and reports it as `schema`. An index created from the backup with [Create index from backup](https://docs.pinecone.io/reference/api/2026-07/control-plane/create_index_from_backup) inherits that schema.\\n\",\"href\":\"/reference/api/2026-07/control-plane/create_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /backups\",\"title\":\"List backups for all indexes in a project\",\"description\":\"List all backups for a project.\",\"href\":\"/reference/api/2026-07/control-plane/list_project_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /indexes/{index_name}/backups\",\"title\":\"List backups for an index\",\"description\":\"When `include_deleted` is false (or omitted), `index_name` must resolve to an active index in the project. If no active index by that name exists—including the case where only deleted indexes have used the name—the API returns **404**, not an empty list.\\nWhen `include_deleted` is true, the API returns backups from every index in the project that has ever used this name (active and deleted). The `source_index_deleted_at` field is present only when the backup is from a deleted index. **404** is returned only when no index by that name has ever existed in the project (active or deleted).\",\"href\":\"/reference/api/2026-07/control-plane/list_index_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /backups/{backup_id}\",\"title\":\"Describe a backup\",\"description\":\"Get a description of a backup.\",\"href\":\"/reference/api/2026-07/control-plane/describe_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml delete /backups/{backup_id}\",\"title\":\"Delete a backup\",\"description\":\"Delete a backup.\",\"href\":\"/reference/api/2026-07/control-plane/delete_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml post /backups/{backup_id}/create-index\",\"title\":\"Create an index from a backup\",\"description\":\"Create an index from a backup.\\nThe restored index inherits the schema of the index the backup was taken from, including its full-text search fields and its integrated embedding configuration, and the request cannot override it. A backup that carries no `schema` restores an index whose fields are derived from the source index's dimension, metric, and vector type, and reported under the reserved `_values` / `_sparse_values` names.\\nFor serverless backups, you can optionally set `read_capacity` so the restored index is created with dedicated read nodes (DRN) instead of defaulting to on-demand capacity.\",\"href\":\"/reference/api/2026-07/control-plane/create_index_from_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /restore-jobs\",\"title\":\"List restore jobs\",\"description\":\"List all restore jobs for a project.\",\"href\":\"/reference/api/2026-07/control-plane/list_restore_jobs\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /restore-jobs/{job_id}\",\"title\":\"Describe a restore job\",\"description\":\"Get a description of a restore job.\",\"href\":\"/reference/api/2026-07/control-plane/describe_restore_job\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"List all collections in a project.\\nCollections are supported only for pod-based indexes. Pod-based indexes cannot be created with API version `2026-07`, so this operation applies to pod-based indexes created with an earlier API version.\\n\",\"href\":\"/reference/api/2026-07/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"Create a Pinecone collection.\\nCollections are supported only for pod-based indexes. Pod-based indexes cannot be created with API version `2026-07`, so this operation applies to pod-based indexes created with an earlier API version.\\n\",\"href\":\"/reference/api/2026-07/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"Get a description of a collection.\\nCollections are supported only for pod-based indexes. Pod-based indexes cannot be created with API version `2026-07`, so this operation applies to pod-based indexes created with an earlier API version.\\n\",\"href\":\"/reference/api/2026-07/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/db_control_2026-07.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"Delete an existing collection.\\nCollections are supported only for pod-based indexes. Pod-based indexes cannot be created with API version `2026-07`, so this operation applies to pod-based indexes created with an earlier API version.\\n\",\"href\":\"/reference/api/2026-07/control-plane/delete_collection\"}]},{\"group\":\"Backup schedules\",\"pages\":[{\"title\":\"Create backup schedule\",\"sidebarTitle\":\"Create backup schedule\",\"description\":\"Create a recurring backup schedule for a Pinecone serverless or BYOC index using the API, including daily, weekly, or monthly frequency and retention policy.\",\"api\":\"POST https://api.pinecone.io/indexes/{index_name}/backup-schedules\",\"href\":\"/reference/api/2026-07/control-plane/create_backup_schedule\"},{\"title\":\"List backup schedules\",\"sidebarTitle\":\"List backup schedules\",\"description\":\"List all backup schedules configured for a Pinecone serverless index, including schedule IDs, frequency, retention, and next scheduled run times.\",\"api\":\"GET https://api.pinecone.io/indexes/{index_name}/backup-schedules\",\"href\":\"/reference/api/2026-07/control-plane/list_backup_schedules\"},{\"title\":\"Describe backup schedule\",\"sidebarTitle\":\"Describe backup schedule\",\"description\":\"Retrieve details for a Pinecone backup schedule by schedule ID, including frequency, retention days, next scheduled run, and enabled status.\",\"api\":\"GET https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-07/control-plane/describe_backup_schedule\"},{\"title\":\"Update backup schedule\",\"sidebarTitle\":\"Update backup schedule\",\"description\":\"Update a Pinecone backup schedule using the API, including pausing with enabled, changing frequency, and adjusting the retention expire_after_days.\",\"api\":\"PATCH https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-07/control-plane/update_backup_schedule\"},{\"title\":\"Delete backup schedule\",\"sidebarTitle\":\"Delete backup schedule\",\"description\":\"Delete a backup schedule for a Pinecone serverless index using the API by schedule ID, while preserving all previously created backup snapshots.\",\"api\":\"DELETE https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-07/control-plane/delete_backup_schedule\"},{\"title\":\"List backup schedule history\",\"sidebarTitle\":\"List schedule history\",\"description\":\"List execution history for a Pinecone backup schedule, including scheduled runs, completed backups, statuses, and cursor-based pagination support.\",\"api\":\"GET https://api.pinecone.io/backup-schedules/{schedule_id}/history\",\"href\":\"/reference/api/2026-07/control-plane/list_backup_schedule_history\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"group\":\"Embed\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2026-04/inference/generate-embeddings\"}]},{\"group\":\"Rerank\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml post /rerank\",\"title\":\"Rerank results\",\"description\":\"Rerank results according to their relevance to a query.\\n\\nFor guidance and examples, see [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/rerank\"}]},{\"group\":\"Models\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml get /models\",\"title\":\"List available models\",\"description\":\"List the embedding and reranking models hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/list_models\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml get /models/{model_name}\",\"title\":\"Describe a model\",\"description\":\"Get a description of a model hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/describe_model\"}]}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"API keys\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects/{project_id}/api-keys\",\"title\":\"Create an API key\",\"description\":\"Create an API key for a project to authenticate Data Plane and Control Plane requests.\\n\",\"href\":\"/reference/api/2026-04/admin/create_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}/api-keys\",\"title\":\"List API keys\",\"description\":\"List all API keys in a project.\",\"href\":\"/reference/api/2026-04/admin/list_api_keys\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/api-keys/{api_key_id}\",\"title\":\"Get API key details\",\"description\":\"Get an API key's details, excluding its secret.\",\"href\":\"/reference/api/2026-04/admin/fetch_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/api-keys/{api_key_id}\",\"title\":\"Update an API key\",\"description\":\"Update an API key's name and roles.\",\"href\":\"/reference/api/2026-04/admin/update_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/api-keys/{api_key_id}\",\"title\":\"Delete an API key\",\"description\":\"Delete an API key from a project.\",\"href\":\"/reference/api/2026-04/admin/delete_api_key\"}]},{\"group\":\"Projects\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects\",\"title\":\"Create a new project\",\"description\":\"Create a new project.\",\"href\":\"/reference/api/2026-04/admin/create_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects\",\"title\":\"List projects\",\"description\":\"List all projects in an organization.\",\"href\":\"/reference/api/2026-04/admin/list_projects\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}\",\"title\":\"Get project details\",\"description\":\"Get a project's details.\",\"href\":\"/reference/api/2026-04/admin/fetch_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/projects/{project_id}\",\"title\":\"Update a project\",\"description\":\"Update a project's name, maximum number of Pods, or customer-managed encryption key (CMEK).\\n\",\"href\":\"/reference/api/2026-04/admin/update_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/projects/{project_id}\",\"title\":\"Delete a project\",\"description\":\"Delete a project and all its configuration; delete its indexes, assistants, backups, and collections first.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_project\"}]},{\"group\":\"Service accounts\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/service-accounts\",\"title\":\"Create a service account\",\"description\":\"Create a service account with optional initial role bindings; the client secret is returned only once.\\n\",\"href\":\"/reference/api/2026-04/admin/create_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/service-accounts\",\"title\":\"List service accounts\",\"description\":\"List service accounts in the caller's organization.\",\"href\":\"/reference/api/2026-04/admin/list_service_accounts\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/service-accounts/{service_account_id}\",\"title\":\"Get service account details\",\"description\":\"Get a service account by ID; the client secret is returned only from create and rotate-secret requests.\\n\",\"href\":\"/reference/api/2026-04/admin/fetch_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/service-accounts/{service_account_id}\",\"title\":\"Update a service account\",\"description\":\"Update a service account's name; role bindings are managed through the role-binding endpoints.\\n\",\"href\":\"/reference/api/2026-04/admin/update_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/service-accounts/{service_account_id}\",\"title\":\"Delete a service account\",\"description\":\"Delete a service account and its role bindings; tokens it minted are revoked within a few seconds.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/service-accounts/{service_account_id}/rotate-secret\",\"title\":\"Rotate a service account's OAuth client secret\",\"description\":\"Rotate a service account's OAuth client secret; the previous secret and its tokens are revoked within seconds and the new secret is returned only once.\\n\",\"href\":\"/reference/api/2026-04/admin/rotate_service_account_secret\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/oauth_2026-04.oas.yaml post /oauth/token\",\"title\":\"Create an access token\",\"description\":\"Obtain an access token for a service account using the OAuth2 client credentials flow. An access token is needed to authorize requests to the Pinecone Admin API.\\nThe host domain for OAuth endpoints is `login.pinecone.io`.\\n\",\"href\":\"/reference/api/2026-04/admin/get_token\"}]},{\"group\":\"Users\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/users\",\"title\":\"List users in the organization\",\"description\":\"List users in the caller's organization, optionally filtered by email address.\\n\",\"href\":\"/reference/api/2026-04/admin/list_users\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/users/{user_id}\",\"title\":\"Get user details\",\"description\":\"Get a user in the caller's organization by ID.\",\"href\":\"/reference/api/2026-04/admin/fetch_user\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/users/{user_id}\",\"title\":\"Remove a user from the organization\",\"description\":\"Remove a user from the organization and revoke their role bindings; their Pinecone account is not deleted.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_user\"}]},{\"group\":\"Invites\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/invites\",\"title\":\"Invite a user to the organization\",\"description\":\"Invite a user to the organization by email and grant their initial role bindings.\\n\",\"href\":\"/reference/api/2026-04/admin/create_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/invites\",\"title\":\"List invites\",\"description\":\"List pending and expired invites in the caller's organization.\",\"href\":\"/reference/api/2026-04/admin/list_invites\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/invites/{invite_id}\",\"title\":\"Get invite details\",\"description\":\"Get an invite in the caller's organization by ID.\",\"href\":\"/reference/api/2026-04/admin/fetch_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/invites/{invite_id}\",\"title\":\"Delete an invite\",\"description\":\"Delete a pending or expired invite and its role bindings; to remove an accepted user, delete the user instead.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/invites/{invite_id}/resend\",\"title\":\"Resend an invite email\",\"description\":\"Resend the invite email and extend its expiration to 7 days from now; limited to 100 emails per hour per organization.\\n\",\"href\":\"/reference/api/2026-04/admin/resend_invite\"}]},{\"group\":\"Role bindings\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/role-bindings\",\"title\":\"Create a role binding\",\"description\":\"Grant a role to a principal at an organization or project scope.\\n\",\"href\":\"/reference/api/2026-04/admin/create_role_binding\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/role-bindings\",\"title\":\"List role bindings\",\"description\":\"List role bindings in the caller's organization, optionally filtered by principal, resource, and role.\\n\",\"href\":\"/reference/api/2026-04/admin/list_role_bindings\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/role-bindings/{role_binding_id}\",\"title\":\"Get role binding details\",\"description\":\"Get a role binding in the caller's organization by ID.\\n\",\"href\":\"/reference/api/2026-04/admin/fetch_role_binding\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/role-bindings/{role_binding_id}\",\"title\":\"Delete a role binding\",\"description\":\"Delete a role binding; permissions are revoked when the deletion completes.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_role_binding\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2026-04\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"List all indexes in a project.\",\"href\":\"/reference/api/2026-04/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create a Pinecone index. This is where you specify the measure of similarity, the dimension of vectors to be stored in the index, which cloud provider you would like to deploy with, and more.\\nTo restore from a backup, set `spec.serverless.source_backup_id` and specify the target `cloud` and `region`. Same-cloud cross-region restore is supported when available for the backup's source region. Cross-cloud restore is not supported.\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2026-04/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml post /indexes/create-for-model\",\"title\":\"Create an index with integrated embedding\",\"description\":\"Create an index with integrated embedding.\\nWith this type of index, you provide source text, and  Pinecone uses a [hosted embedding model](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models)  to convert the text automatically during [upsert](https://docs.pinecone.io/reference/api/2026-04/data-plane/upsert_records)  and [search](https://docs.pinecone.io/reference/api/2026-04/data-plane/search_records).  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index#integrated-embedding).\",\"href\":\"/reference/api/2026-04/control-plane/create_for_model\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2026-04/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2026-04/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. For guidance and examples, see [Manage indexes](https://docs.pinecone.io/guides/manage-data/manage-indexes).\",\"href\":\"/reference/api/2026-04/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"Return statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2026-04/data-plane/describeindexstats\"}]},{\"group\":\"Namespaces\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /namespaces\",\"title\":\"List namespaces\",\"description\":\"List all namespaces in a serverless index.\\n\\nUp to 100 namespaces are returned at a time by default, in sorted order (bitwise “C” collation). If the `limit` parameter is set, up to that number of namespaces are returned instead. Whenever there are additional namespaces to return, the response also includes a `pagination_token` that you can use to get the next batch of namespaces. When the response does not include a `pagination_token`, there are no more namespaces to return.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-04/data-plane/listnamespaces\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /namespaces\",\"title\":\"Create a namespace\",\"description\":\"Create a namespace in a serverless index.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-04/data-plane/createnamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /namespaces/{namespace}\",\"title\":\"Describe a namespace\",\"description\":\"Describe a namespace in a serverless index, including the total number of vectors in the namespace.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-04/data-plane/describenamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml delete /namespaces/{namespace}\",\"title\":\"Delete a namespace\",\"description\":\"Delete a namespace from a serverless index. Deleting a namespace is irreversible; all data in the namespace is permanently deleted.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2026-04/data-plane/deletenamespace\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /vectors/upsert\",\"title\":\"Upsert records\",\"description\":\"Upsert records into a namespace. If a new value is upserted for an existing record ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2026-04/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /records/namespaces/{namespace}/upsert\",\"title\":\"Upsert text\",\"description\":\"Upsert text into a namespace. Pinecone converts the text to vectors automatically using the hosted embedding model associated with the index.\\n\\nUpserting text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2026-04/data-plane/upsert_records\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /vectors/fetch\",\"title\":\"Fetch records\",\"description\":\"Look up and return records by ID from a single namespace. The returned records include the vector data and/or metadata.\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2026-04/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /vectors/fetch_by_metadata\",\"title\":\"Fetch records by metadata\",\"description\":\"Look up and return records by metadata from a single namespace. The returned records include the vector data and metadata.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2026-04/data-plane/fetch_by_metadata\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /vectors/update\",\"title\":\"Update a record\",\"description\":\"Update records by ID or by metadata in a namespace. Updating by ID changes the vector and/or metadata of a single record. Updating by metadata changes metadata across multiple records using a metadata filter.\\nIf a vector value is included, it will overwrite the previous value. If `set_metadata` is included, only the specified metadata fields are modified, and if a specified metadata field does not exist, it is added.\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2026-04/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /vectors/delete\",\"title\":\"Delete records\",\"description\":\"Delete records by id or by metadata from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2026-04/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /vectors/list\",\"title\":\"List record IDs\",\"description\":\"List the IDs of records in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nReturns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2026-04/data-plane/list\"}]},{\"group\":\"Search\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2026-04/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /records/namespaces/{namespace}/search\",\"title\":\"Search with text\",\"description\":\"Search a namespace with a query text, query vector, or record ID and return the most similar records, along with their similarity scores. Optionally, rerank the initial results based on their relevance to the query. \\n\\nSearching with text is supported only for indexes with [integrated embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding). Searching with a query vector or record ID is supported for all indexes. \\n\\nFor guidance and examples, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2026-04/data-plane/search_records\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"Start an asynchronous import of vectors from object storage into an index.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-04/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"List all recent and ongoing import operations.\\n\\nBy default, `list_imports` returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of imports. When the response does not include a `pagination_token`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-04/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"Return details of a specific import operation.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-04/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_data_2026-04.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"Cancel an import operation if it is not yet finished. It has no effect if the operation is already finished.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2026-04/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml post /indexes/{index_name}/backups\",\"title\":\"Create a backup of an index\",\"description\":\"Create a backup of an index.\\n\",\"href\":\"/reference/api/2026-04/control-plane/create_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /backups\",\"title\":\"List backups for all indexes in a project\",\"description\":\"List all backups for a project.\",\"href\":\"/reference/api/2026-04/control-plane/list_project_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /indexes/{index_name}/backups\",\"title\":\"List backups for an index\",\"description\":\"When `include_deleted` is false (or omitted), `index_name` must resolve to an active index in the project. If no active index by that name exists—including the case where only deleted indexes have used the name—the API returns **404**, not an empty list.\\nWhen `include_deleted` is true, the API returns backups from every index in the project that has ever used this name (active and deleted). The `source_index_deleted_at` field is present only when the backup is from a deleted index. **404** is returned only when no index by that name has ever existed in the project (active or deleted).\",\"href\":\"/reference/api/2026-04/control-plane/list_index_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /backups/{backup_id}\",\"title\":\"Describe a backup\",\"description\":\"Get a description of a backup.\",\"href\":\"/reference/api/2026-04/control-plane/describe_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml delete /backups/{backup_id}\",\"title\":\"Delete a backup\",\"description\":\"Delete a backup.\",\"href\":\"/reference/api/2026-04/control-plane/delete_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml post /backups/{backup_id}/create-index\",\"title\":\"Create an index from a backup\",\"description\":\"Create an index from a backup. For serverless backups, you can optionally set `read_capacity` so the restored index is created with dedicated read nodes (DRN) instead of defaulting to on-demand capacity.\",\"href\":\"/reference/api/2026-04/control-plane/create_index_from_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /restore-jobs\",\"title\":\"List restore jobs\",\"description\":\"List all restore jobs for a project.\",\"href\":\"/reference/api/2026-04/control-plane/list_restore_jobs\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /restore-jobs/{job_id}\",\"title\":\"Describe a restore job\",\"description\":\"Get a description of a restore job.\",\"href\":\"/reference/api/2026-04/control-plane/describe_restore_job\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"List all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2026-04/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"Create a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2026-04/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"Get a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2026-04/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/db_control_2026-04.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"Delete an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2026-04/control-plane/delete_collection\"}]},{\"group\":\"Backup schedules\",\"pages\":[{\"title\":\"Create backup schedule\",\"sidebarTitle\":\"Create backup schedule\",\"description\":\"Create a recurring backup schedule for a Pinecone serverless index using the API, including daily, weekly, or monthly frequency and retention policy.\",\"api\":\"POST https://api.pinecone.io/indexes/{index_name}/backup-schedules\",\"href\":\"/reference/api/2026-04/control-plane/create_backup_schedule\"},{\"title\":\"List backup schedules\",\"sidebarTitle\":\"List backup schedules\",\"description\":\"List all backup schedules configured for a Pinecone serverless index, including schedule IDs, frequency, retention, and next scheduled run times.\",\"api\":\"GET https://api.pinecone.io/indexes/{index_name}/backup-schedules\",\"href\":\"/reference/api/2026-04/control-plane/list_backup_schedules\"},{\"title\":\"Describe backup schedule\",\"sidebarTitle\":\"Describe backup schedule\",\"description\":\"Retrieve details for a Pinecone backup schedule by schedule ID, including frequency, retention days, next scheduled run, and enabled status.\",\"api\":\"GET https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-04/control-plane/describe_backup_schedule\"},{\"title\":\"Update backup schedule\",\"sidebarTitle\":\"Update backup schedule\",\"description\":\"Update a Pinecone backup schedule using the API, including pausing with enabled, changing frequency, and adjusting the retention expire_after_days.\",\"api\":\"PATCH https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-04/control-plane/update_backup_schedule\"},{\"title\":\"Delete backup schedule\",\"sidebarTitle\":\"Delete backup schedule\",\"description\":\"Delete a backup schedule for a Pinecone serverless index using the API by schedule ID, while preserving all previously created backup snapshots.\",\"api\":\"DELETE https://api.pinecone.io/backup-schedules/{schedule_id}\",\"href\":\"/reference/api/2026-04/control-plane/delete_backup_schedule\"},{\"title\":\"List backup schedule history\",\"sidebarTitle\":\"List schedule history\",\"description\":\"List execution history for a Pinecone backup schedule, including scheduled runs, completed backups, statuses, and cursor-based pagination support.\",\"api\":\"GET https://api.pinecone.io/backup-schedules/{schedule_id}/history\",\"href\":\"/reference/api/2026-04/control-plane/list_backup_schedule_history\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"group\":\"Embed\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2026-04/inference/generate-embeddings\"}]},{\"group\":\"Rerank\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml post /rerank\",\"title\":\"Rerank results\",\"description\":\"Rerank results according to their relevance to a query.\\n\\nFor guidance and examples, see [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/rerank\"}]},{\"group\":\"Models\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml get /models\",\"title\":\"List available models\",\"description\":\"List the embedding and reranking models hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/list_models\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/inference_2026-04.oas.yaml get /models/{model_name}\",\"title\":\"Describe a model\",\"description\":\"Get a description of a model hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2026-04/inference/describe_model\"}]}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"API keys\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects/{project_id}/api-keys\",\"title\":\"Create an API key\",\"description\":\"Create an API key for a project to authenticate Data Plane and Control Plane requests.\\n\",\"href\":\"/reference/api/2026-04/admin/create_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}/api-keys\",\"title\":\"List API keys\",\"description\":\"List all API keys in a project.\",\"href\":\"/reference/api/2026-04/admin/list_api_keys\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/api-keys/{api_key_id}\",\"title\":\"Get API key details\",\"description\":\"Get an API key's details, excluding its secret.\",\"href\":\"/reference/api/2026-04/admin/fetch_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/api-keys/{api_key_id}\",\"title\":\"Update an API key\",\"description\":\"Update an API key's name and roles.\",\"href\":\"/reference/api/2026-04/admin/update_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/api-keys/{api_key_id}\",\"title\":\"Delete an API key\",\"description\":\"Delete an API key from a project.\",\"href\":\"/reference/api/2026-04/admin/delete_api_key\"}]},{\"group\":\"Projects\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects\",\"title\":\"Create a new project\",\"description\":\"Create a new project.\",\"href\":\"/reference/api/2026-04/admin/create_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects\",\"title\":\"List projects\",\"description\":\"List all projects in an organization.\",\"href\":\"/reference/api/2026-04/admin/list_projects\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}\",\"title\":\"Get project details\",\"description\":\"Get a project's details.\",\"href\":\"/reference/api/2026-04/admin/fetch_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/projects/{project_id}\",\"title\":\"Update a project\",\"description\":\"Update a project's name, maximum number of Pods, or customer-managed encryption key (CMEK).\\n\",\"href\":\"/reference/api/2026-04/admin/update_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/projects/{project_id}\",\"title\":\"Delete a project\",\"description\":\"Delete a project and all its configuration; delete its indexes, assistants, backups, and collections first.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_project\"}]},{\"group\":\"Service accounts\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/service-accounts\",\"title\":\"Create a service account\",\"description\":\"Create a service account with optional initial role bindings; the client secret is returned only once.\\n\",\"href\":\"/reference/api/2026-04/admin/create_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/service-accounts\",\"title\":\"List service accounts\",\"description\":\"List service accounts in the caller's organization.\",\"href\":\"/reference/api/2026-04/admin/list_service_accounts\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/service-accounts/{service_account_id}\",\"title\":\"Get service account details\",\"description\":\"Get a service account by ID; the client secret is returned only from create and rotate-secret requests.\\n\",\"href\":\"/reference/api/2026-04/admin/fetch_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/service-accounts/{service_account_id}\",\"title\":\"Update a service account\",\"description\":\"Update a service account's name; role bindings are managed through the role-binding endpoints.\\n\",\"href\":\"/reference/api/2026-04/admin/update_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/service-accounts/{service_account_id}\",\"title\":\"Delete a service account\",\"description\":\"Delete a service account and its role bindings; tokens it minted are revoked within a few seconds.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_service_account\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/service-accounts/{service_account_id}/rotate-secret\",\"title\":\"Rotate a service account's OAuth client secret\",\"description\":\"Rotate a service account's OAuth client secret; the previous secret and its tokens are revoked within seconds and the new secret is returned only once.\\n\",\"href\":\"/reference/api/2026-04/admin/rotate_service_account_secret\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/oauth_2026-04.oas.yaml post /oauth/token\",\"title\":\"Create an access token\",\"description\":\"Obtain an access token for a service account using the OAuth2 client credentials flow. An access token is needed to authorize requests to the Pinecone Admin API.\\nThe host domain for OAuth endpoints is `login.pinecone.io`.\\n\",\"href\":\"/reference/api/2026-04/admin/get_token\"}]},{\"group\":\"Users\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/users\",\"title\":\"List users in the organization\",\"description\":\"List users in the caller's organization, optionally filtered by email address.\\n\",\"href\":\"/reference/api/2026-04/admin/list_users\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/users/{user_id}\",\"title\":\"Get user details\",\"description\":\"Get a user in the caller's organization by ID.\",\"href\":\"/reference/api/2026-04/admin/fetch_user\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/users/{user_id}\",\"title\":\"Remove a user from the organization\",\"description\":\"Remove a user from the organization and revoke their role bindings; their Pinecone account is not deleted.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_user\"}]},{\"group\":\"Invites\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/invites\",\"title\":\"Invite a user to the organization\",\"description\":\"Invite a user to the organization by email and grant their initial role bindings.\\n\",\"href\":\"/reference/api/2026-04/admin/create_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/invites\",\"title\":\"List invites\",\"description\":\"List pending and expired invites in the caller's organization.\",\"href\":\"/reference/api/2026-04/admin/list_invites\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/invites/{invite_id}\",\"title\":\"Get invite details\",\"description\":\"Get an invite in the caller's organization by ID.\",\"href\":\"/reference/api/2026-04/admin/fetch_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/invites/{invite_id}\",\"title\":\"Delete an invite\",\"description\":\"Delete a pending or expired invite and its role bindings; to remove an accepted user, delete the user instead.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_invite\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/invites/{invite_id}/resend\",\"title\":\"Resend an invite email\",\"description\":\"Resend the invite email and extend its expiration to 7 days from now; limited to 100 emails per hour per organization.\\n\",\"href\":\"/reference/api/2026-04/admin/resend_invite\"}]},{\"group\":\"Role bindings\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/role-bindings\",\"title\":\"Create a role binding\",\"description\":\"Grant a role to a principal at an organization or project scope.\\n\",\"href\":\"/reference/api/2026-04/admin/create_role_binding\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/role-bindings\",\"title\":\"List role bindings\",\"description\":\"List role bindings in the caller's organization, optionally filtered by principal, resource, and role.\\n\",\"href\":\"/reference/api/2026-04/admin/list_role_bindings\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/role-bindings/{role_binding_id}\",\"title\":\"Get role binding details\",\"description\":\"Get a role binding in the caller's organization by ID.\\n\",\"href\":\"/reference/api/2026-04/admin/fetch_role_binding\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/role-bindings/{role_binding_id}\",\"title\":\"Delete a role binding\",\"description\":\"Delete a role binding; permissions are revoked when the deletion completes.\\n\",\"href\":\"/reference/api/2026-04/admin/delete_role_binding\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2025-10\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"List all indexes in a project.\",\"href\":\"/reference/api/2025-10/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create a Pinecone index. This is where you specify the measure of similarity, the dimension of vectors to be stored in the index, which cloud provider you would like to deploy with, and more.\\n  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2025-10/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml post /indexes/create-for-model\",\"title\":\"Create an index with integrated embedding\",\"description\":\"Create an index with integrated embedding.\\nWith this type of index, you provide source text, and  Pinecone uses a [hosted embedding model](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models)  to convert the text automatically during [upsert](https://docs.pinecone.io/reference/api/2025-10/data-plane/upsert_records)  and [search](https://docs.pinecone.io/reference/api/2025-10/data-plane/search_records).  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index#integrated-embedding).\",\"href\":\"/reference/api/2025-10/control-plane/create_for_model\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2025-10/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2025-10/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. For guidance and examples, see [Manage indexes](https://docs.pinecone.io/guides/manage-data/manage-indexes).\",\"href\":\"/reference/api/2025-10/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"Return statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2025-10/data-plane/describeindexstats\"}]},{\"group\":\"Namespaces\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /namespaces\",\"title\":\"List namespaces\",\"description\":\"List all namespaces in a serverless index.\\n\\nUp to 100 namespaces are returned at a time by default, in sorted order (bitwise “C” collation). If the `limit` parameter is set, up to that number of namespaces are returned instead. Whenever there are additional namespaces to return, the response also includes a `pagination_token` that you can use to get the next batch of namespaces. When the response does not include a `pagination_token`, there are no more namespaces to return.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-10/data-plane/listnamespaces\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /namespaces\",\"title\":\"Create a namespace\",\"description\":\"Create a namespace in a serverless index.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-10/data-plane/createnamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /namespaces/{namespace}\",\"title\":\"Describe a namespace\",\"description\":\"Describe a namespace in a serverless index, including the total number of vectors in the namespace.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-10/data-plane/describenamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml delete /namespaces/{namespace}\",\"title\":\"Delete a namespace\",\"description\":\"Delete a namespace from a serverless index. Deleting a namespace is irreversible; all data in the namespace is permanently deleted.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-10/data-plane/deletenamespace\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"Upsert vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-10/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /records/namespaces/{namespace}/upsert\",\"title\":\"Upsert text\",\"description\":\"Upsert text into a namespace. Pinecone converts the text to vectors automatically using the hosted embedding model associated with the index.\\n\\nUpserting text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-10/data-plane/upsert_records\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"Look up and return vectors by ID from a single namespace. The returned vectors include the vector data and/or metadata.\\n\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\n\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2025-10/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /vectors/fetch_by_metadata\",\"title\":\"Fetch vectors by metadata\",\"description\":\"Look up and return vectors by metadata filter from a single namespace. The returned vectors include the vector data and/or metadata.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2025-10/data-plane/fetch_by_metadata\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"Update a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2025-10/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"Delete vectors by id from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2025-10/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"List the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nReturns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2025-10/data-plane/list\"}]},{\"group\":\"Search\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-10/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /records/namespaces/{namespace}/search\",\"title\":\"Search with text\",\"description\":\"Search a namespace with a query text, query vector, or record ID and return the most similar records, along with their similarity scores. Optionally, rerank the initial results based on their relevance to the query. \\n\\nSearching with text is supported only for indexes with [integrated embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding). Searching with a query vector or record ID is supported for all indexes. \\n\\nFor guidance and examples, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-10/data-plane/search_records\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"Start an asynchronous import of vectors from object storage into an index.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-10/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"List all recent and ongoing import operations.\\n\\nBy default, `list_imports` returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of imports. When the response does not include a `pagination_token`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-10/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"Return details of a specific import operation.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-10/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_data_2025-10.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"Cancel an import operation if it is not yet finished. It has no effect if the operation is already finished.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-10/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml post /indexes/{index_name}/backups\",\"title\":\"Create a backup of an index\",\"description\":\"Create a backup of an index.\\n\",\"href\":\"/reference/api/2025-10/control-plane/create_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /backups\",\"title\":\"List backups for all indexes in a project\",\"description\":\"List all backups for a project.\",\"href\":\"/reference/api/2025-10/control-plane/list_project_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /indexes/{index_name}/backups\",\"title\":\"List backups for an index\",\"description\":\"List all backups for an index.\",\"href\":\"/reference/api/2025-10/control-plane/list_index_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /backups/{backup_id}\",\"title\":\"Describe a backup\",\"description\":\"Get a description of a backup.\",\"href\":\"/reference/api/2025-10/control-plane/describe_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml delete /backups/{backup_id}\",\"title\":\"Delete a backup\",\"description\":\"Delete a backup.\",\"href\":\"/reference/api/2025-10/control-plane/delete_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml post /backups/{backup_id}/create-index\",\"title\":\"Create an index from a backup\",\"description\":\"Create an index from a backup.\",\"href\":\"/reference/api/2025-10/control-plane/create_index_from_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /restore-jobs\",\"title\":\"List restore jobs\",\"description\":\"List all restore jobs for a project.\",\"href\":\"/reference/api/2025-10/control-plane/list_restore_jobs\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /restore-jobs/{job_id}\",\"title\":\"Describe a restore job\",\"description\":\"Get a description of a restore job.\",\"href\":\"/reference/api/2025-10/control-plane/describe_restore_job\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"List all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-10/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"Create a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-10/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"Get a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-10/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/db_control_2025-10.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"Delete an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-10/control-plane/delete_collection\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"group\":\"Embed\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/inference_2025-10.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2025-10/inference/generate-embeddings\"}]},{\"group\":\"Rerank\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/inference_2025-10.oas.yaml post /rerank\",\"title\":\"Rerank results\",\"description\":\"Rerank results according to their relevance to a query.\\n\\nFor guidance and examples, see [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-10/inference/rerank\"}]},{\"group\":\"Models\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/inference_2025-10.oas.yaml get /models\",\"title\":\"List available models\",\"description\":\"List the embedding and reranking models hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-10/inference/list_models\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/inference_2025-10.oas.yaml get /models/{model_name}\",\"title\":\"Describe a model\",\"description\":\"Get a description of a model hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-10/inference/describe_model\"}]}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"API keys\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml post /admin/projects/{project_id}/api-keys\",\"title\":\"Create an API key\",\"description\":\"Create a new API key for a project. Developers can use the API key to authenticate requests to Pinecone's Data Plane and Control Plane APIs.\\n\",\"href\":\"/reference/api/2025-10/admin/create_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml get /admin/projects/{project_id}/api-keys\",\"title\":\"List API keys\",\"description\":\"List all API keys in a project.\",\"href\":\"/reference/api/2025-10/admin/list_api_keys\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml get /admin/api-keys/{api_key_id}\",\"title\":\"Get API key details\",\"description\":\"Get the details of an API key, excluding the API key secret.\",\"href\":\"/reference/api/2025-10/admin/fetch_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml patch /admin/api-keys/{api_key_id}\",\"title\":\"Update an API key\",\"description\":\"Update the name and roles of an API key.\\n\",\"href\":\"/reference/api/2025-10/admin/update_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml delete /admin/api-keys/{api_key_id}\",\"title\":\"Delete an API key\",\"description\":\"Delete an API key from a project.\",\"href\":\"/reference/api/2025-10/admin/delete_api_key\"}]},{\"group\":\"Projects\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml post /admin/projects\",\"title\":\"Create a new project\",\"description\":\"Creates a new project.\",\"href\":\"/reference/api/2025-10/admin/create_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml get /admin/projects\",\"title\":\"List projects\",\"description\":\"List all projects in an organization.\",\"href\":\"/reference/api/2025-10/admin/list_projects\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml get /admin/projects/{project_id}\",\"title\":\"Get project details\",\"description\":\"Get details about a project.\",\"href\":\"/reference/api/2025-10/admin/fetch_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml patch /admin/projects/{project_id}\",\"title\":\"Update a project\",\"description\":\"Update a project's configuration details.\\nYou can update the project's name, maximum number of Pods, or enable encryption with a customer-managed encryption key (CMEK).\\n\",\"href\":\"/reference/api/2025-10/admin/update_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/admin_2025-10.oas.yaml delete /admin/projects/{project_id}\",\"title\":\"Delete a project\",\"description\":\"Delete a project and all its associated configuration.\\nBefore deleting a project, you must delete all indexes, assistants, backups, and collections associated with the project. Other project resources, such as API keys, are automatically deleted when the project is deleted.\\n\",\"href\":\"/reference/api/2025-10/admin/delete_project\"}]},{\"group\":\"Service accounts\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-10/oauth_2025-10.oas.yaml post /oauth/token\",\"title\":\"Create an access token\",\"description\":\"Obtain an access token for a service account using the OAuth2 client credentials flow. An access token is needed to authorize requests to the Pinecone Admin API.\\nThe host domain for OAuth endpoints is `login.pinecone.io`.\\n\",\"href\":\"/reference/api/2025-10/admin/get_token\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2025-04\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"List all indexes in a project.\",\"href\":\"/reference/api/2025-04/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create a Pinecone index. This is where you specify the measure of similarity, the dimension of vectors to be stored in the index, which cloud provider you would like to deploy with, and more.\\n  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2025-04/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml post /indexes/create-for-model\",\"title\":\"Create an index with integrated embedding\",\"description\":\"Create an index with integrated embedding.\\n\\nWith this type of index, you provide source text, and Pinecone uses a [hosted embedding model](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models) to convert the text automatically during [upsert](https://docs.pinecone.io/reference/api/2025-01/data-plane/upsert_records) and [search](https://docs.pinecone.io/reference/api/2025-01/data-plane/search_records).\\n\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index#integrated-embedding).\",\"href\":\"/reference/api/2025-04/control-plane/create_for_model\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2025-04/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2025-04/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. For serverless indexes, you can configure index deletion protection, tags, and integrated inference embedding settings for the index. For pod-based indexes, you can configure the pod size, number of replicas, tags, and index deletion protection.\\n\\nIt is not possible to change the pod type of a pod-based index. However, you can create a collection from a pod-based index and then [create a new pod-based index with a different pod type](http://docs.pinecone.io/guides/indexes/pods/create-a-pod-based-index#create-a-pod-index-from-a-collection) from the collection. For guidance and examples, see [Configure an index](http://docs.pinecone.io/guides/indexes/pods/manage-pod-based-indexes).\",\"href\":\"/reference/api/2025-04/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"Return statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2025-04/data-plane/describeindexstats\"}]},{\"group\":\"Namespaces\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /namespaces\",\"title\":\"List namespaces\",\"description\":\"List all namespaces in a serverless index.\\n\\nUp to 100 namespaces are returned at a time by default, in sorted order (bitwise “C” collation). If the `limit` parameter is set, up to that number of namespaces are returned instead. Whenever there are additional namespaces to return, the response also includes a `pagination_token` that you can use to get the next batch of namespaces. When the response does not include a `pagination_token`, there are no more namespaces to return.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-04/data-plane/listnamespaces\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /namespaces/{namespace}\",\"title\":\"Describe a namespace\",\"description\":\"Describe a namespace in a serverless index, including the total number of vectors in the namespace.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-04/data-plane/describenamespace\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml delete /namespaces/{namespace}\",\"title\":\"Delete a namespace\",\"description\":\"Delete a namespace from a serverless index. Deleting a namespace is irreversible; all data in the namespace is permanently deleted.\\n\\nFor guidance and examples, see [Manage namespaces](https://docs.pinecone.io/guides/manage-data/manage-namespaces).\\n\\n**Note:** This operation is not supported for pod-based indexes.\",\"href\":\"/reference/api/2025-04/data-plane/deletenamespace\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"Upsert vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-04/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /records/namespaces/{namespace}/upsert\",\"title\":\"Upsert text\",\"description\":\"Upsert text into a namespace. Pinecone converts the text to vectors automatically using the hosted embedding model associated with the index.\\n\\nUpserting text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-04/data-plane/upsert_records\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"Look up and return vectors by ID from a single namespace. The returned vectors include the vector data and/or metadata.\\n\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\n\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2025-04/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"Update a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2025-04/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"Delete vectors by id from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2025-04/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"List the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nReturns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2025-04/data-plane/list\"}]},{\"group\":\"Search\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-04/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /records/namespaces/{namespace}/search\",\"title\":\"Search with text\",\"description\":\"Search a namespace with a query text, query vector, or record ID and return the most similar records, along with their similarity scores. Optionally, rerank the initial results based on their relevance to the query. \\n\\nSearching with text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/guides/indexes/create-an-index#integrated-embedding). Searching with a query vector or record ID is supported for all indexes. \\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-04/data-plane/search_records\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"Start an asynchronous import of vectors from object storage into an index.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-04/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"List all recent and ongoing import operations.\\n\\nBy default, `list_imports` returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of imports. When the response does not include a `pagination_token`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-04/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"Return details of a specific import operation.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-04/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_data_2025-04.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"Cancel an import operation if it is not yet finished. It has no effect if the operation is already finished.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-04/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml post /indexes/{index_name}/backups\",\"title\":\"Create a backup of an index\",\"description\":\"Create a backup of an index.\\n\",\"href\":\"/reference/api/2025-04/control-plane/create_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /backups\",\"title\":\"List backups for all indexes in a project\",\"description\":\"List all backups for a project.\",\"href\":\"/reference/api/2025-04/control-plane/list_project_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /indexes/{index_name}/backups\",\"title\":\"List backups for an index\",\"description\":\"List all backups for an index.\",\"href\":\"/reference/api/2025-04/control-plane/list_index_backups\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /backups/{backup_id}\",\"title\":\"Describe a backup\",\"description\":\"Get a description of a backup.\",\"href\":\"/reference/api/2025-04/control-plane/describe_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml delete /backups/{backup_id}\",\"title\":\"Delete a backup\",\"description\":\"Delete a backup.\",\"href\":\"/reference/api/2025-04/control-plane/delete_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml post /backups/{backup_id}/create-index\",\"title\":\"Create an index from a backup\",\"description\":\"Create an index from a backup.\",\"href\":\"/reference/api/2025-04/control-plane/create_index_from_backup\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /restore-jobs\",\"title\":\"List restore jobs\",\"description\":\"List all restore jobs for a project.\",\"href\":\"/reference/api/2025-04/control-plane/list_restore_jobs\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /restore-jobs/{job_id}\",\"title\":\"Describe a restore job\",\"description\":\"Get a description of a restore job.\",\"href\":\"/reference/api/2025-04/control-plane/describe_restore_job\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"List all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-04/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"Create a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-04/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"Get a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-04/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/db_control_2025-04.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"Delete an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-04/control-plane/delete_collection\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"group\":\"Embed\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/inference_2025-04.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2025-04/inference/generate-embeddings\"}]},{\"group\":\"Rerank\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/inference_2025-04.oas.yaml post /rerank\",\"title\":\"Rerank documents\",\"description\":\"Rerank results according to their relevance to a query.\\n\\nFor guidance and examples, see [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-04/inference/rerank\"}]},{\"group\":\"Models\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/inference_2025-04.oas.yaml get /models\",\"title\":\"List available models\",\"description\":\"List the embedding and reranking models hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-04/inference/list_models\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/inference_2025-04.oas.yaml get /models/{model_name}\",\"title\":\"Describe a model\",\"description\":\"Get a description of a model hosted by Pinecone. \\n\\nYou can use hosted models as an integrated part of Pinecone operations or for standalone embedding and reranking. For more details, see [Vector embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding) and [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-04/inference/describe_model\"}]}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"API keys\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml post /admin/projects/{project_id}/api-keys\",\"title\":\"Create an API key\",\"description\":\"Create a new API key for a project. Developers can use the API key to authenticate requests to Pinecone's Data Plane and Control Plane APIs.\\n\",\"href\":\"/reference/api/2025-04/admin/create_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml get /admin/projects/{project_id}/api-keys\",\"title\":\"List API keys\",\"description\":\"List all API keys in a project.\",\"href\":\"/reference/api/2025-04/admin/list_api_keys\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml get /admin/api-keys/{api_key_id}\",\"title\":\"Get API key details\",\"description\":\"Get the details of an API key, excluding the API key secret.\",\"href\":\"/reference/api/2025-04/admin/fetch_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml patch /admin/api-keys/{api_key_id}\",\"title\":\"Update an API key\",\"description\":\"Update the name and roles of an API key.\\n\",\"href\":\"/reference/api/2025-04/admin/update_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml delete /admin/api-keys/{api_key_id}\",\"title\":\"Delete an API key\",\"description\":\"Delete an API key from a project.\",\"href\":\"/reference/api/2025-04/admin/delete_api_key\"}]},{\"group\":\"Projects\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml post /admin/projects\",\"title\":\"Create a new project\",\"description\":\"Creates a new project.\",\"href\":\"/reference/api/2025-04/admin/create_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml get /admin/projects\",\"title\":\"List projects\",\"description\":\"List all projects in an organization.\",\"href\":\"/reference/api/2025-04/admin/list_projects\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml get /admin/projects/{project_id}\",\"title\":\"Get project details\",\"description\":\"Get details about a project.\",\"href\":\"/reference/api/2025-04/admin/fetch_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml patch /admin/projects/{project_id}\",\"title\":\"Update a project\",\"description\":\"Update a project's configuration details.\\nYou can update the project's name, maximum number of Pods, or enable encryption with a customer-managed encryption key (CMEK).\\n\",\"href\":\"/reference/api/2025-04/admin/update_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/admin_2025-04.oas.yaml delete /admin/projects/{project_id}\",\"title\":\"Delete a project\",\"description\":\"Delete a project and all its associated configuration.\\nBefore deleting a project, you must delete all indexes, assistants, backups, and collections associated with the project. Other project resources, such as API keys, are automatically deleted when the project is deleted.\\n\",\"href\":\"/reference/api/2025-04/admin/delete_project\"}]},{\"group\":\"Service accounts\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-04/oauth_2025-04.oas.yaml post /oauth/token\",\"title\":\"Get an access token\",\"description\":\"Obtain an access token for a service account using the OAuth2 client credentials flow. An access token is needed to authorize requests to the Pinecone Admin API.\\nThe host domain for OAuth endpoints is `login.pinecone.io`.\\n\",\"href\":\"/reference/api/2025-04/admin/get_token\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2025-01\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"This operation returns a list of all indexes in a project.\",\"href\":\"/reference/api/2025-01/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create an index for vectors created with an external embedding model.\\n\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\",\"href\":\"/reference/api/2025-01/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml post /indexes/create-for-model\",\"title\":\"Create an index with integrated embedding\",\"description\":\"Create an index with integrated embedding.\\n\\nWith this type of index, you provide source text, and Pinecone uses a [hosted embedding model](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models) to convert the text automatically during [upsert](https://docs.pinecone.io/reference/api/2025-01/data-plane/upsert_records) and [search](https://docs.pinecone.io/reference/api/2025-01/data-plane/search_records).\\n\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index#integrated-embedding).\",\"href\":\"/reference/api/2025-01/control-plane/create_for_model\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2025-01/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2025-01/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. \\n\\nFor serverless indexes, you can configure index deletion protection, tags, and integrated inference embedding settings for the index. For pod-based indexes, you can configure the pod size, number of replicas, tags, and index deletion protection.\\n\\nIt is not possible to change the pod type of a pod-based index. However, you can create a collection from a pod-based index and then [create a new pod-based index with a different pod type](http://docs.pinecone.io/guides/indexes/pods/create-a-pod-based-index#create-a-pod-index-from-a-collection) from the collection. For guidance and examples, see [Configure an index](http://docs.pinecone.io/guides/indexes/pods/manage-pod-based-indexes).\",\"href\":\"/reference/api/2025-01/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"Return statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2025-01/data-plane/describeindexstats\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"Upsert vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-01/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /records/namespaces/{namespace}/upsert\",\"title\":\"Upsert text\",\"description\":\"Upsert text into a namespace. Pinecone converts the text to vectors automatically using the hosted embedding model associated with the index.\\n\\nUpserting text is supported only for [indexes with integrated embedding](https://docs.pinecone.io/reference/api/2025-01/control-plane/create_for_model).\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2025-01/data-plane/upsert_records\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"Look up and return vectors, by ID, from a single namespace. The returned vectors include the vector data and/or metadata.\\n\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\n\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2025-01/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"Update a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2025-01/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"Delete vectors, by id, from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2025-01/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"List the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nThis returns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2025-01/data-plane/list\"}]},{\"group\":\"Search\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace with a query vector or record ID and return the IDs of the most similar records, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-01/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /records/namespaces/{namespace}/search\",\"title\":\"Search with text\",\"description\":\"Search a namespace with a query text, query vector, or record ID and return the most similar records, along with their similarity scores. Optionally, rerank the initial results based on their relevance to the query. \\n\\nSearching with text is supported only for indexes with [integrated embedding](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding). Searching with a query vector or record ID is supported for all indexes. \\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2025-01/data-plane/search_records\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"Start an asynchronous import of vectors from object storage into an index.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-01/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"List all recent and ongoing import operations.\\n\\nBy default, this returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of imports. When the response does not include a `pagination_token`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-01/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"Return details of a specific import operation.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-01/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_data_2025-01.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"Cancel an import operation if it is not yet finished. It has no effect if the operation is already finished.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2025-01/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"This operation returns a list of all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-01/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"This operation creates a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-01/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"This operation gets a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-01/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/db_control_2025-01.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"This operation deletes an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2025-01/control-plane/delete_collection\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"group\":\"Embed\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/inference_2025-01.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2025-01/inference/generate-embeddings\"}]},{\"group\":\"Rerank\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2025-01/inference_2025-01.oas.yaml post /rerank\",\"title\":\"Rerank results\",\"description\":\"Rerank query results according to their relevance to a query. This endpoint uses [Pinecone Inference](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding).\\n\\nFor guidance and examples, see [Rerank results](https://docs.pinecone.io/guides/search/rerank-results).\",\"href\":\"/reference/api/2025-01/inference/rerank\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2024-10\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"This operation returns a list of all indexes in a project.\",\"href\":\"/reference/api/2024-10/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create an index for vectors created with an external embedding model.\\n  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2024-10/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2024-10/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2024-10/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. \\n\\nFor serverless indexes, you can configure only index deletion protection and tags. For pod-based indexes, you can configure the pod size, number of replicas, tags, and index deletion protection. \\n\\nIt is not possible to change the pod type of a pod-based index. However, you can create a collection from a pod-based index and then [create a new pod-based index with a different pod type](http://docs.pinecone.io/guides/indexes/pods/create-a-pod-based-index#create-a-pod-index-from-a-collection) from the collection. For guidance and examples, see [Configure an index](http://docs.pinecone.io/guides/indexes/pods/manage-pod-based-indexes).\",\"href\":\"/reference/api/2024-10/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"The `describe_index_stats` operation returns statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2024-10/data-plane/describeindexstats\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"The `upsert` operation writes vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2024-10/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"The `query` operation searches a namespace, using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2024-10/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"The `fetch` operation looks up and returns vectors, by ID, from a single namespace. The returned vectors include the vector data and/or metadata.\\n\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\n\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2024-10/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"The `update` operation updates a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2024-10/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"The `delete` operation deletes vectors, by id, from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2024-10/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"The `list` operation lists the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nBy default, `list` returns up to 100 IDs per page in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list_vectors` is supported only for serverless indexes.\",\"href\":\"/reference/api/2024-10/data-plane/list\"}]},{\"group\":\"Imports\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml post /bulk/imports\",\"title\":\"Start import\",\"description\":\"The `start_import` operation starts an asynchronous import of vectors from object storage into an index. \\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2024-10/data-plane/start_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml get /bulk/imports\",\"title\":\"List imports\",\"description\":\"The `list_imports` operation lists all recent and ongoing import operations. \\n\\nBy default, `list_imports` returns up to 100 imports per page. If the `limit` parameter is set, `list` returns up to that number of imports instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of imports. When the response does not include a `pagination_token`, there are no more imports to return.\\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2024-10/data-plane/list_imports\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml get /bulk/imports/{id}\",\"title\":\"Describe an import\",\"description\":\"The `describe_import` operation returns details of a specific import operation. \\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2024-10/data-plane/describe_import\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml delete /bulk/imports/{id}\",\"title\":\"Cancel an import\",\"description\":\"The `cancel_import` operation cancels an import operation if it is not yet finished. It has no effect if the operation is already finished. \\n\\nFor guidance and examples, see [Import data](https://docs.pinecone.io/guides/index-data/import-data).\",\"href\":\"/reference/api/2024-10/data-plane/cancel_import\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"This operation returns a list of all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-10/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"This operation creates a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-10/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"This operation gets a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-10/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_control_2024-10.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"This operation deletes an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-10/control-plane/delete_collection\"}]}]},{\"group\":\"Inference\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/inference_2024-10.oas.yaml post /embed\",\"title\":\"Generate vectors\",\"description\":\"Generate vector embeddings for input data. This endpoint uses Pinecone's [hosted embedding models](https://docs.pinecone.io/guides/index-data/create-an-index#embedding-models).\",\"href\":\"/reference/api/2024-10/inference/generate-embeddings\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/inference_2024-10.oas.yaml post /rerank\",\"title\":\"Rerank results\",\"description\":\"Rerank query results according to their relevance to a query. This endpoint uses [Pinecone Inference](https://docs.pinecone.io/guides/index-data/indexing-overview#vector-embedding).\",\"href\":\"/reference/api/2024-10/inference/rerank\"}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2024-07\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"This operation returns a list of all indexes in a project.\",\"href\":\"/reference/api/2024-07/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create an index for vectors created with an external embedding model.\\n  \\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2024-07/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2024-07/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"Delete an existing index.\",\"href\":\"/reference/api/2024-07/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"Configure an existing index. \\n\\n\\nFor serverless indexes, you can configure only index deletion protection. For pod-based indexes, you can configure the pod size, number of replicas, and index deletion protection. \\n\\n\\nIt is not possible to change the pod type of a pod-based index. However, you can create a collection from a pod-based index and then [create a new pod-based index with a different pod type](http://docs.pinecone.io/guides/indexes/pods/create-a-pod-based-index#create-a-pod-index-from-a-collection) from the collection.\\nFor guidance and examples, see [Configure an index](http://docs.pinecone.io/guides/indexes/pods/manage-pod-based-indexes).\",\"href\":\"/reference/api/2024-07/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"The `describe_index_stats` operation returns statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2024-07/data-plane/describeindexstats\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"The `upsert` operation writes vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2024-07/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"Search a namespace with a query vector or record ID and return the IDs of the most similar records, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2024-07/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"The `fetch` operation looks up and returns vectors, by ID, from a single namespace. The returned vectors include the vector data and/or metadata.\\n\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\n\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2024-07/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"The `update` operation updates a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2024-07/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"The `delete` operation deletes vectors, by id, from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2024-07/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/data_2024-07.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"The `list` operation lists the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\n`list` returns up to 100 IDs at a time by default in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list` is supported only for serverless indexes.\",\"href\":\"/reference/api/2024-07/data-plane/list\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"This operation returns a list of all collections in a project.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-07/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"This operation creates a Pinecone collection.\\n  \\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-07/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"This operation gets a description of a collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-07/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-07/control_2024-07.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"This operation deletes an existing collection.\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-07/control-plane/delete_collection\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]},{\"version\":\"2024-04\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},{\"title\":\"Authentication\",\"description\":\"Pinecone API authentication guide covering API key generation, SDK client setup, and HTTP header configuration for authorized requests.\",\"href\":\"/reference/api/authentication\"},{\"title\":\"Pinecone API versioning\",\"description\":\"Learn how Pinecone versions its APIs by release date, how long each stable version is supported, and how to set the X-Pinecone-Api-Version header.\",\"sidebarTitle\":\"Versioning\",\"href\":\"/reference/api/versioning\"},{\"group\":\"Database limits\",\"pages\":[{\"title\":\"Pinecone Database limits overview\",\"description\":\"Reference for Pinecone Database rate, object, operation, and identifier limits, plus known index and serverless limitations.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/api/database-limits\"},{\"title\":\"Rate limits\",\"description\":\"Request-per-second, monthly usage, and model throughput limits for Pinecone Database serverless indexes, and the 429 errors returned when you exceed them.\",\"sidebarTitle\":\"Rate limits\",\"href\":\"/reference/api/database-limits/rate-limits\"},{\"title\":\"Object limits\",\"description\":\"Limits on the number and size of Pinecone Database projects, indexes, namespaces, storage, backups, and collections, by plan.\",\"sidebarTitle\":\"Object limits\",\"href\":\"/reference/api/database-limits/object-limits\"},{\"title\":\"Operation limits\",\"description\":\"Fixed limits on Pinecone Database operations, including upsert, import, query, fetch, and delete batch sizes and metadata filter expressions.\",\"sidebarTitle\":\"Operation limits\",\"href\":\"/reference/api/database-limits/operation-limits\"},{\"title\":\"Identifier limits\",\"description\":\"Maximum length and allowed characters for Pinecone identifiers, including organization, project, index, namespace, and record names.\",\"sidebarTitle\":\"Identifier limits\",\"href\":\"/reference/api/database-limits/identifier-limits\"},{\"title\":\"Known limitations\",\"description\":\"Known limitations and feature restrictions for Pinecone indexes, including upsert consistency, metadata rules, and serverless caveats.\",\"href\":\"/reference/api/known-limitations\"}]},{\"title\":\"Errors\",\"description\":\"Look up the HTTP status codes the Pinecone API returns, what each 2xx success and 4xx or 5xx error means, and where to handle them in production.\",\"href\":\"/reference/api/errors\"}]},{\"group\":\"Database\",\"pages\":[{\"group\":\"Indexes\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml get /indexes\",\"title\":\"List indexes\",\"description\":\"This operation returns a list of all indexes in a project.\",\"href\":\"/reference/api/2024-04/control-plane/list_indexes\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml post /indexes\",\"title\":\"Create an index\",\"description\":\"Create an index for vectors created with an external embedding model.\\n\\nFor guidance and examples, see [Create an index](https://docs.pinecone.io/guides/index-data/create-an-index).\\n\",\"href\":\"/reference/api/2024-04/control-plane/create_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml get /indexes/{index_name}\",\"title\":\"Describe an index\",\"description\":\"Get a description of an index.\",\"href\":\"/reference/api/2024-04/control-plane/describe_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml delete /indexes/{index_name}\",\"title\":\"Delete an index\",\"description\":\"This operation deletes an existing index.\",\"href\":\"/reference/api/2024-04/control-plane/delete_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml patch /indexes/{index_name}\",\"title\":\"Configure an index\",\"description\":\"This operation configures the pod size and number of replicas for a pod-based index.\\n\\nIt is not possible to change the pod type of an index. However, you can create a collection from an index and then [create a new index with a different pod type](http://docs.pinecone.io/guides/indexes/pods/create-a-pod-based-index#create-a-pod-index-from-a-collection) from the collection.\",\"href\":\"/reference/api/2024-04/control-plane/configure_index\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml post /describe_index_stats\",\"title\":\"Get index stats\",\"description\":\"The `describe_index_stats` operation returns statistics about the contents of an index, including the vector count per namespace, the number of dimensions, and the index fullness.\\n\\nServerless indexes scale automatically as needed, so index fullness is relevant only for pod-based indexes.\",\"href\":\"/reference/api/2024-04/data-plane/describeindexstats\"}]},{\"group\":\"Vectors\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml post /vectors/upsert\",\"title\":\"Upsert vectors\",\"description\":\"The `upsert` operation writes vectors into a namespace. If a new value is upserted for an existing vector ID, it will overwrite the previous value.\\n\\nFor guidance, examples, and limits, see [Upsert data](https://docs.pinecone.io/guides/index-data/upsert-data).\",\"href\":\"/reference/api/2024-04/data-plane/upsert\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml post /query\",\"title\":\"Search with a vector\",\"description\":\"The `query` operation searches a namespace, using a query vector. It retrieves the ids of the most similar items in a namespace, along with their similarity scores.\\n\\nFor guidance, examples, and limits, see [Search](https://docs.pinecone.io/guides/search/search-overview).\",\"href\":\"/reference/api/2024-04/data-plane/query\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml get /vectors/fetch\",\"title\":\"Fetch vectors\",\"description\":\"The `fetch` operation looks up and returns vectors, by ID, from a single namespace. The returned vectors include the vector data and/or metadata.\\nFor on-demand indexes, since vector values are retrieved from object storage, fetch operations may have increased latency. If you only need metadata or IDs, consider using the query operation with `includeValues` set to `false` instead.\\nFor guidance and examples, see [Fetch data](https://docs.pinecone.io/guides/manage-data/fetch-data).\",\"href\":\"/reference/api/2024-04/data-plane/fetch\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml post /vectors/update\",\"title\":\"Update a vector\",\"description\":\"The `update` operation updates a vector in a namespace. If a value is included, it will overwrite the previous value. If a `set_metadata` is included, the values of the fields specified in it will be added or overwrite the previous value.\\n\\nFor guidance and examples, see [Update data](https://docs.pinecone.io/guides/manage-data/update-data).\",\"href\":\"/reference/api/2024-04/data-plane/update\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/data_2024-04.oas.yaml post /vectors/delete\",\"title\":\"Delete vectors\",\"description\":\"The `delete` operation deletes vectors, by id, from a single namespace.\\n\\nFor guidance and examples, see [Delete data](https://docs.pinecone.io/guides/manage-data/delete-data).\",\"href\":\"/reference/api/2024-04/data-plane/delete\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-10/db_data_2024-10.oas.yaml get /vectors/list\",\"title\":\"List vector IDs\",\"description\":\"The `list` operation lists the IDs of vectors in a single namespace of a serverless index. An optional prefix can be passed to limit the results to IDs with a common prefix.\\n\\nBy default, `list` returns up to 100 IDs per page in sorted order (bitwise \\\"C\\\" collation). If the `limit` parameter is set, `list` returns up to that number of IDs instead. Whenever there are additional IDs to return, the response also includes a `pagination_token` that you can use to get the next batch of IDs. When the response does not include a `pagination_token`, there are no more IDs to return.\\n\\nFor guidance and examples, see [List record IDs](https://docs.pinecone.io/guides/manage-data/list-record-ids).\\n\\n**Note:** `list_vectors` is supported only for serverless indexes.\",\"href\":\"/reference/api/2024-04/data-plane/list\"}]},{\"group\":\"Backups\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml get /collections\",\"title\":\"List collections\",\"description\":\"This operation returns a list of all collections in a project.\\n\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-04/control-plane/list_collections\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml post /collections\",\"title\":\"Create a collection\",\"description\":\"This operation creates a Pinecone collection.\\n\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-04/control-plane/create_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml get /collections/{collection_name}\",\"title\":\"Describe a collection\",\"description\":\"This operation gets a description of a collection.\\n\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-04/control-plane/describe_collection\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2024-04/control_2024-04.oas.yaml delete /collections/{collection_name}\",\"title\":\"Delete a collection\",\"description\":\"This operation deletes an existing collection.\\n\\nServerless indexes do not support collections.\\n\",\"href\":\"/reference/api/2024-04/control-plane/delete_collection\"}]}]},{\"group\":\"SDKs\",\"pages\":[{\"title\":\"Pinecone SDKs overview\",\"description\":\"Browse official Pinecone SDKs for Python, Node.js, Java, and Go, including the version mappings between SDK releases and API versions.\",\"href\":\"/reference/pinecone-sdks\"},{\"group\":\"Python\",\"pages\":[{\"title\":\"Pinecone Python SDK\",\"description\":\"Install and use the Pinecone SDK for Pinecone Python SDK: auth, typed clients, and API operations. For installation instructions, usage examples, and.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/python/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Python SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/python/\",\"href\":\"/reference/sdks/python/reference\"}]},{\"group\":\"Node.js\",\"pages\":[{\"title\":\"Pinecone Node.js SDK\",\"description\":\"Install and use the Pinecone Node.js and TypeScript SDK to manage indexes, upsert vectors, run semantic search, and call the Admin and Inference APIs.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/node/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Node.js SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://sdk.pinecone.io/typescript/\",\"href\":\"/reference/sdks/node/reference\"}]},{\"group\":\"Java\",\"pages\":[{\"title\":\"Pinecone Java SDK\",\"description\":\"Install and use the Pinecone Java SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Java.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/java/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Java SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/pinecone-java-client\",\"href\":\"/reference/sdks/java/reference\"},{\"title\":\"OpenTelemetry support\",\"sidebarTitle\":\"OpenTelemetry\",\"description\":\"Monitor Pinecone Java SDK operations with OpenTelemetry metrics for client latency, server processing time, and errors via Prometheus.\",\"href\":\"/reference/sdks/java/open-telemetry\"}]},{\"group\":\"Go\",\"pages\":[{\"title\":\"Pinecone Go SDK\",\"description\":\"Install and use the Pinecone Go SDK to manage indexes and namespaces, upsert vectors, run semantic search, and call the Admin and Inference APIs from Go.\",\"sidebarTitle\":\"Overview\",\"href\":\"/reference/sdks/go/overview\"},{\"title\":\"Reference\",\"description\":\"Reference documentation for the Pinecone Go SDK, including client setup, types, and methods for managing indexes and vector data operations.\",\"url\":\"https://github.com/pinecone-io/go-pinecone\",\"href\":\"/reference/sdks/go/reference\"}]}]},{\"group\":\"CLI\",\"pages\":[{\"title\":\"CLI quickstart\",\"description\":\"Pinecone CLI quickstart for installing pc, authenticating, and managing indexes, vectors, and data imports directly from your terminal.\",\"sidebarTitle\":\"Quickstart\",\"href\":\"/reference/cli/quickstart\"},{\"title\":\"CLI command reference\",\"description\":\"Complete Pinecone CLI command reference covering syntax, subcommands, flags, help output, and exit codes for auth, index, and project.\",\"sidebarTitle\":\"Command reference\",\"href\":\"/reference/cli/command-reference\"},{\"title\":\"CLI authentication\",\"description\":\"Authenticate the Pinecone CLI using user login, service accounts, or API keys, including auth priority and Admin API access rules.\",\"sidebarTitle\":\"Authentication\",\"href\":\"/reference/cli/authentication\"},{\"title\":\"CLI target context\",\"description\":\"Set the Pinecone CLI target context with pc target to control which organization and project your commands run against, including in CI/CD and JSON mode.\",\"sidebarTitle\":\"Target context\",\"href\":\"/reference/cli/target-context\"}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"Spark-Pinecone connector\",\"description\":\"Pinecone data tools: Use the connector to efficiently create, ingest, and update vector embeddings at scale with Databricks and Pinecone.\",\"href\":\"/reference/tools/pinecone-spark-connector\"}]}]}]},{\"tab\":\"Examples\",\"pages\":[{\"title\":\"Examples\",\"href\":\"/examples/notebooks\"}]},{\"tab\":\"Models\",\"pages\":[{\"title\":\"Models\",\"href\":\"/models/overview\"}]},{\"tab\":\"Integrations\",\"pages\":[{\"title\":\"Integrations\",\"href\":\"/integrations/overview\"}]},{\"tab\":\"Troubleshooting\",\"pages\":[{\"title\":\"Troubleshooting\",\"href\":\"/troubleshooting/contact-support\"}]}]},{\"dropdown\":\"Pinecone Assistant\",\"icon\":\"comments\",\"tabs\":[{\"tab\":\"Guides\",\"groups\":[{\"group\":\"Get started\",\"pages\":[{\"title\":\"Pinecone Assistant\",\"sidebarTitle\":\"Overview\",\"description\":\"Overview of Pinecone Assistant, a managed service for building production-grade RAG chat and agent applications grounded in your data.\",\"mode\":\"wide\",\"href\":\"/guides/assistant/overview\"},{\"group\":\"Quickstart\",\"pages\":[{\"title\":\"Pinecone Assistant: SDK quickstart\",\"sidebarTitle\":\"SDK quickstart\",\"description\":\"Quickstart for Pinecone Assistant using the Python or Node.js SDK to create an assistant, upload documents, and chat with your data via RAG.\",\"og:image\":\"https://www.pinecone.io/api/og/?title=Pinecone Assistant: SDK quickstart\",\"href\":\"/guides/assistant/quickstart/sdk-quickstart\"},{\"title\":\"Pinecone Assistant: n8n quickstart\",\"sidebarTitle\":\"n8n quickstart\",\"description\":\"Build an n8n workflow with Pinecone Assistant and OpenAI to download files via HTTP, upload documents, and chat with them from an automation.\",\"og:image\":\"https://www.pinecone.io/api/og/?title=Pinecone Assistant: n8n quickstart\",\"href\":\"/guides/assistant/quickstart/n8n-quickstart\"}]},{\"title\":\"Pricing and limits\",\"description\":\"Understand Pinecone Assistant pricing for ingestion units, chat tokens, and storage, plus plan-based service limits for file uploads and knowledge size.\",\"href\":\"/guides/assistant/pricing-and-limits\"}]},{\"group\":\"Build an assistant\",\"pages\":[{\"title\":\"Create an assistant\",\"mode\":\"wide\",\"description\":\"Create a Pinecone Assistant with custom instructions, metadata, and region settings using the API, Python SDK, Node.js SDK, or console.\",\"href\":\"/guides/assistant/create-assistant\"},{\"title\":\"Manage assistants\",\"description\":\"List, describe, update, and delete Pinecone assistants and check assistant status using the API, Python SDK, Node.js SDK, or Pinecone console.\",\"href\":\"/guides/assistant/manage-assistants\"}]},{\"group\":\"Upload your data\",\"pages\":[{\"title\":\"Files in Pinecone Assistant\",\"sidebarTitle\":\"Overview\",\"description\":\"Overview of Pinecone Assistant files: supported file types (PDF, DOCX, JSON, MD, TXT), metadata filters, storage, and signed URL access.\",\"href\":\"/guides/assistant/files-overview\"},{\"title\":\"Upload files\",\"description\":\"Upload local files to a Pinecone assistant with Python, JavaScript, or curl, track ingestion operations, and see how uploads are billed as ingestion units.\",\"href\":\"/guides/assistant/upload-files\"},{\"title\":\"Multimodal context for assistants\",\"sidebarTitle\":\"Multimodal context\",\"description\":\"Enable multimodal PDF context in Pinecone Assistant to analyze charts, images, and diagrams using OCR and visual understanding for RAG.\",\"href\":\"/guides/assistant/multimodal\"},{\"title\":\"Manage files\",\"description\":\"List files in your Pinecone assistant, check individual file ingestion status by ID, view metadata, and delete files using the API, SDKs, or console.\",\"href\":\"/guides/assistant/manage-files\"}]},{\"group\":\"Chat with an assistant\",\"pages\":[{\"title\":\"Chat through the standard interface\",\"sidebarTitle\":\"Standard interface\",\"description\":\"Chat with Pinecone Assistant through the standard interface with default, streaming, or JSON responses, plus citations and chat history support.\",\"href\":\"/guides/assistant/chat-with-assistant\"},{\"title\":\"Chat through the OpenAI-compatible interface\",\"sidebarTitle\":\"OpenAI-compatible interface\",\"description\":\"Chat with Pinecone Assistant using the OpenAI-compatible Chat Completion API for inline citations, streaming responses, and easy integration.\",\"href\":\"/guides/assistant/chat-through-the-openai-compatible-interface\"}]},{\"group\":\"Evaluate answers\",\"pages\":[{\"title\":\"Evaluation overview\",\"sidebarTitle\":\"Overview\",\"description\":\"Overview of Pinecone Assistant response evaluation: measure correctness, completeness, and alignment scores to benchmark RAG system quality.\",\"href\":\"/guides/assistant/evaluation-overview\"},{\"title\":\"Evaluate answers\",\"mode\":\"wide\",\"description\":\"Evaluate RAG system answers with Pinecone Assistant using correctness, completeness, and alignment metrics against a ground truth answer.\",\"href\":\"/guides/assistant/evaluate-answers\"}]},{\"group\":\"Retrieve context snippets\",\"pages\":[{\"title\":\"Context snippets overview\",\"sidebarTitle\":\"Overview\",\"description\":\"Learn how Pinecone Assistant retrieves context snippets with relevancy scores and references for RAG applications and agentic workflows.\",\"href\":\"/guides/assistant/context-snippets-overview\"},{\"title\":\"Retrieve context snippets\",\"description\":\"Retrieve context snippets and citations from a Pinecone Assistant to power your own LLM, RAG application, or agentic workflow with signed URLs.\",\"href\":\"/guides/assistant/retrieve-context-snippets\"}]},{\"group\":\"Integrate with AI agents\",\"pages\":[{\"title\":\"Use an Assistant MCP server\",\"sidebarTitle\":\"Use an MCP server\",\"description\":\"Connect AI agents to a Pinecone Assistant MCP server via remote or local Model Context Protocol endpoints, including Cursor and Claude Desktop.\",\"href\":\"/guides/assistant/mcp-server\"}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"Manage billing\",\"pages\":[{\"title\":\"Upgrade your plan\",\"description\":\"Learn how Pinecone Assistant admins upgrade to a paid plan to unlock higher limits, more files, evaluations, and advanced access controls.\",\"href\":\"/guides/assistant/admin/upgrade-billing-plan\"},{\"title\":\"Change your payment method\",\"description\":\"Update the credit card or payment method on file for your Pinecone organization to keep billing details current and avoid failed charges.\",\"href\":\"/guides/assistant/admin/change-payment-method\"},{\"title\":\"Downgrade your plan\",\"description\":\"Downgrade your Pinecone subscription from a paid tier back to the free Starter plan, including steps to review usage limits before switching.\",\"href\":\"/guides/assistant/admin/downgrade-billing-plan\"},{\"title\":\"Download a usage report\",\"description\":\"Export a detailed Pinecone usage and cost report for your organization to analyze index consumption, credits, and monthly billing charges.\",\"href\":\"/guides/assistant/admin/download-usage-report\"},{\"title\":\"Access your invoices\",\"description\":\"View, download, and manage your Pinecone billing invoices from the console, including past invoice history, payment status, and PDF exports.\",\"href\":\"/guides/assistant/admin/access-your-invoices\"}]},{\"group\":\"Manage security\",\"pages\":[{\"title\":\"Security overview\",\"sidebarTitle\":\"Overview\",\"description\":\"Overview of Pinecone Assistant admin security features including API keys, single sign-on, service accounts, and audit logs across your organization.\",\"href\":\"/guides/assistant/admin/security-overview\"},{\"title\":\"Manage roles and access\",\"sidebarTitle\":\"Manage roles and access\",\"description\":\"Assign organization and project roles to users, service accounts, and API keys in Pinecone Assistant, with common role combinations for each scenario.\",\"href\":\"/guides/assistant/admin/manage-rbac\"},{\"title\":\"Configure SSO with Okta\",\"description\":\"Integrate Okta with Pinecone to enable single sign-on, configure SAML settings, and manage secure user authentication for your organization.\",\"href\":\"/guides/assistant/admin/configure-sso-with-okta\"},{\"title\":\"Configure audit logs\",\"description\":\"Set up Pinecone audit logs streamed to an Amazon S3 bucket to track user, service account, and API actions across the control plane.\",\"href\":\"/guides/assistant/admin/configure-audit-logs\"}]},{\"group\":\"Manage organizations\",\"pages\":[{\"title\":\"Organizations overview\",\"sidebarTitle\":\"Overview\",\"description\":\"Learn how Pinecone organizations group projects under shared billing, and how organization owners, members, and roles control access and permissions.\",\"href\":\"/guides/assistant/admin/organizations-overview\"},{\"title\":\"Monitor usage and cost\",\"description\":\"Monitor Pinecone Assistant usage and cost, set monthly spend alerts, and track token usage across chat, context retrieval, and evaluation.\",\"href\":\"/guides/assistant/admin/monitor-spend-and-usage\"},{\"title\":\"Manage organization members\",\"description\":\"Invite new members to your Pinecone organization, change their organization roles, and remove users to control access across all projects.\",\"href\":\"/guides/assistant/admin/manage-organization-members\"},{\"title\":\"Manage organization-level service accounts\",\"sidebarTitle\":\"Manage service accounts\",\"description\":\"Create and manage organization-level Pinecone service accounts, retrieve access tokens, and grant programmatic access to the Admin API.\",\"href\":\"/guides/assistant/admin/manage-organization-service-accounts\"}]},{\"group\":\"Manage projects\",\"pages\":[{\"title\":\"Projects overview\",\"sidebarTitle\":\"Overview\",\"description\":\"Understand how Pinecone projects contain assistants, indexes, and users, and review project owner and project user roles and their permissions.\",\"href\":\"/guides/assistant/admin/projects-overview\"},{\"title\":\"Create a project\",\"mode\":\"wide\",\"description\":\"Create a new Pinecone project in the console or through the Admin API, add tags, and optionally enable a customer-managed encryption key (CMEK).\",\"href\":\"/guides/assistant/admin/create-a-project\"},{\"title\":\"Manage projects\",\"description\":\"View project details, rename projects, add project tags, and delete Pinecone projects using the console or the Admin API with an access token.\",\"href\":\"/guides/assistant/admin/manage-projects\"},{\"title\":\"Manage project members\",\"description\":\"Add users to a Pinecone project, assign project owner or user roles, edit permissions, and remove members to control access to indexes and API keys.\",\"href\":\"/guides/assistant/admin/manage-project-members\"},{\"title\":\"Manage API keys\",\"description\":\"Create, view, update, and delete Pinecone API keys for a project, plus assign custom permission roles to control data plane and control plane access.\",\"href\":\"/guides/assistant/admin/manage-api-keys\"},{\"title\":\"Manage service accounts at the project-level\",\"sidebarTitle\":\"Manage service accounts\",\"description\":\"Add and manage project-level service accounts in Pinecone Assistant to enable programmatic Admin API access, roles, and permissions.\",\"href\":\"/guides/assistant/admin/manage-project-service-accounts\"}]}]}]},{\"tab\":\"Reference\",\"versions\":[{\"version\":\"2026-04 (latest)\",\"default\":true,\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"Assistant API reference\",\"description\":\"Assistant API reference overview covering document upload, chat, and RAG endpoints supported by the Pinecone Python and Node.js SDKs.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/assistant/introduction\"},{\"title\":\"Authentication\",\"description\":\"Assistant API authentication with API keys, HTTP headers, and SDK client initialization for Pinecone Assistant requests and RAG apps.\",\"href\":\"/reference/api/assistant/authentication\"},{\"title\":\"Pinecone Assistant limits\",\"description\":\"Reference for Pinecone Assistant limits, including file size, storage, chat token, and rate limits across the Starter, Builder, Standard, and Enterprise plans.\",\"sidebarTitle\":\"Limits\",\"href\":\"/reference/api/assistant/assistant-limits\"}]},{\"group\":\"Assistants\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml GET /assistants\",\"title\":\"List assistants\",\"description\":\"List of all assistants in a project.\\n\\nFor guidance and examples, see [Manage assistants](https://docs.pinecone.io/guides/assistant/manage-assistants#list-assistants-for-a-project).\",\"href\":\"/reference/api/2026-04/assistant/list_assistants\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml POST /assistants\",\"title\":\"Create an assistant\",\"description\":\"Create an assistant. This is where you specify the underlying training model, which cloud provider you would like to deploy with, and more.\\n\\nFor guidance and examples, see [Create an assistant](https://docs.pinecone.io/guides/assistant/create-assistant)\",\"href\":\"/reference/api/2026-04/assistant/create_assistant\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml GET /assistants/{assistant_name}\",\"title\":\"Check assistant status\",\"description\":\"Get the status of an assistant.\\n\\nFor guidance and examples, see [Manage assistants](https://docs.pinecone.io/guides/assistant/manage-assistants#get-the-status-of-an-assistant)\",\"href\":\"/reference/api/2026-04/assistant/describe_assistant\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml PATCH /assistants/{assistant_name}\",\"title\":\"Update an assistant\",\"description\":\"Update an existing assistant. You can modify the assistant's instructions.\\n\\nFor guidance and examples, see [Manage assistants](https://docs.pinecone.io/guides/assistant/manage-assistants#add-instructions-to-an-assistant).\",\"href\":\"/reference/api/2026-04/assistant/update_assistant\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_control_2026-04.oas.yaml DELETE /assistants/{assistant_name}\",\"title\":\"Delete an assistant\",\"description\":\"Delete an existing assistant.\\n\\nFor guidance and examples, see [Manage assistants](https://docs.pinecone.io/guides/assistant/manage-assistants#delete-an-assistant)\",\"href\":\"/reference/api/2026-04/assistant/delete_assistant\"}]},{\"group\":\"Files\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml GET /files/{assistant_name}\",\"title\":\"List Files\",\"description\":\"List all files in an assistant, with an option to filter files with metadata.\\n\\nFor guidance and examples, see [Manage files](https://docs.pinecone.io/guides/assistant/manage-files#list-files-in-an-assistant).\",\"href\":\"/reference/api/2026-04/assistant/list_files\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml POST /files/{assistant_name}\",\"title\":\"Upload a file\",\"description\":\"Upload a file to the specified assistant.\\n\\nAn identifier will be generated. To specify a file identifier or to replace file content, use the upsert endpoint (`PUT /files/{assistant_name}/{assistant_file_id}`).\\n\\nThis operation is asynchronous. The response includes an operation ID that can be used to poll for completion via the describe operation endpoint.\\n\\nFor guidance and examples, see [Manage files](https://docs.pinecone.io/guides/assistant/manage-files#upload-a-local-file).\",\"href\":\"/reference/api/2026-04/assistant/upload_file\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml PUT /files/{assistant_name}/{assistant_file_id}\",\"title\":\"Upsert a file\",\"description\":\"Create or replace a file in the specified assistant. If a file with the given `assistant_file_id` already exists, it will be replaced with the new file. If it doesn't exist, a new file will be created with that identifier.\\n\\nThis operation is asynchronous. The file processing will occur in the background.\\n\\nFor guidance and examples, see [Manage files](https://docs.pinecone.io/guides/assistant/manage-files#upload-a-local-file).\",\"href\":\"/reference/api/2026-04/assistant/upsert_file\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml GET /files/{assistant_name}/{assistant_file_id}\",\"title\":\"Describe a file\",\"description\":\"[Get the current status and metadata of a file](https://docs.pinecone.io/guides/assistant/manage-files#get-the-status-of-a-file) uploaded to an assistant.\",\"href\":\"/reference/api/2026-04/assistant/describe_file\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml DELETE /files/{assistant_name}/{assistant_file_id}\",\"title\":\"Delete a file\",\"description\":\"[Delete an uploaded file](https://docs.pinecone.io/guides/assistant/manage-files#delete-a-file) from an assistant.\\n\\nThis operation is asynchronous. The response includes an operation ID that can be used to poll for completion via the describe operation endpoint.\",\"href\":\"/reference/api/2026-04/assistant/delete_file\"}]},{\"group\":\"Operations\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml GET /operations/{assistant_name}\",\"title\":\"List operations\",\"description\":\"List all operations for an assistant. Returns operations that are in progress, as well as recently completed or failed operations.\\nBoth successful and failed operations are retained for 30 days after completion.\\nUse the `operation_type` and `status` query parameters to filter results.\\n\",\"href\":\"/reference/api/2026-04/assistant/list_operations\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml GET /operations/{assistant_name}/{operation_id}\",\"title\":\"Describe an operation\",\"description\":\"Get the status of an operation.\\n\",\"href\":\"/reference/api/2026-04/assistant/describe_operation\"}]},{\"group\":\"Chat\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml POST /chat/{assistant_name}\",\"title\":\"Chat with an assistant\",\"description\":\"Chat with an assistant and get back citations in structured form. \\n\\nThis is the recommended way to chat with an assistant, as it offers more functionality and control over the assistant's responses and references than the OpenAI-compatible chat interface.\\n\\nFor guidance and examples, see [Chat with an assistant](https://docs.pinecone.io/guides/assistant/chat-with-assistant).\",\"href\":\"/reference/api/2026-04/assistant/chat_assistant\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml POST /chat/{assistant_name}/chat/completions\",\"title\":\"Chat through an OpenAI-compatible interface\",\"description\":\"Chat with an assistant. This endpoint is based on the OpenAI Chat Completion API, a commonly used and adopted API. \\n\\nIt is useful if you need inline citations or OpenAI-compatible responses, but has limited functionality compared to the standard chat interface.\\n\\nFor guidance and examples, see [Chat with an assistant](https://docs.pinecone.io/guides/assistant/chat-with-assistant).\",\"href\":\"/reference/api/2026-04/assistant/chat_completion_assistant\"}]},{\"group\":\"Evaluation\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_evaluation_2026-04.oas.yaml POST /evaluation/metrics/alignment\",\"title\":\"Evaluate an answer\",\"description\":\"Evaluate the correctness and completeness of a response from an assistant or a RAG system. The correctness and completeness are evaluated based on the precision and recall of the generated answer with respect to the ground truth answer facts. Alignment is the harmonic mean of correctness and completeness.\\n\\nFor guidance and examples, see [Evaluate answers](https://docs.pinecone.io/guides/assistant/evaluate-answers).\",\"href\":\"/reference/api/2026-04/assistant/metrics_alignment\"}]},{\"group\":\"Context snippets\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml POST /chat/{assistant_name}/context\",\"title\":\"Retrieve context from an assistant\",\"description\":\"Retrieve context snippets from an assistant to use as part of RAG or any agentic flow.\\n\\nFor guidance and examples, see [Retrieve context snippets](https://docs.pinecone.io/guides/assistant/retrieve-context-snippets).\",\"href\":\"/reference/api/2026-04/assistant/context_assistant\"}]},{\"group\":\"Admin\",\"pages\":[{\"group\":\"API keys\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects/{project_id}/api-keys\",\"title\":\"Create an API key\",\"description\":\"Create an API key for a project to authenticate Data Plane and Control Plane requests.\\n\",\"href\":\"/reference/api/2026-04/admin-assistant/create_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}/api-keys\",\"title\":\"List API keys\",\"description\":\"List all API keys in a project.\",\"href\":\"/reference/api/2026-04/admin-assistant/list_api_keys\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/api-keys/{api_key_id}\",\"title\":\"Get API key details\",\"description\":\"Get an API key's details, excluding its secret.\",\"href\":\"/reference/api/2026-04/admin-assistant/fetch_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/api-keys/{api_key_id}\",\"title\":\"Update an API key\",\"description\":\"Update an API key's name and roles.\",\"href\":\"/reference/api/2026-04/admin-assistant/update_api_key\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/api-keys/{api_key_id}\",\"title\":\"Delete an API key\",\"description\":\"Delete an API key from a project.\",\"href\":\"/reference/api/2026-04/admin-assistant/delete_api_key\"}]},{\"group\":\"Projects\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml post /admin/projects\",\"title\":\"Create a new project\",\"description\":\"Create a new project.\",\"href\":\"/reference/api/2026-04/admin-assistant/create_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects\",\"title\":\"List projects\",\"description\":\"List all projects in an organization.\",\"href\":\"/reference/api/2026-04/admin-assistant/list_projects\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml get /admin/projects/{project_id}\",\"title\":\"Get project details\",\"description\":\"Get a project's details.\",\"href\":\"/reference/api/2026-04/admin-assistant/fetch_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml patch /admin/projects/{project_id}\",\"title\":\"Update a project\",\"description\":\"Update a project's name, maximum number of Pods, or customer-managed encryption key (CMEK).\\n\",\"href\":\"/reference/api/2026-04/admin-assistant/update_project\"},{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/admin_2026-04.oas.yaml delete /admin/projects/{project_id}\",\"title\":\"Delete a project\",\"description\":\"Delete a project and all its configuration; delete its indexes, assistants, backups, and collections first.\\n\",\"href\":\"/reference/api/2026-04/admin-assistant/delete_project\"}]},{\"group\":\"Service accounts\",\"pages\":[{\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/oauth_2026-04.oas.yaml post /oauth/token\",\"title\":\"Create an access token\",\"description\":\"Obtain an access token for a service account using the OAuth2 client credentials flow. An access token is needed to authorize requests to the Pinecone Admin API.\\nThe host domain for OAuth endpoints is `login.pinecone.io`.\\n\",\"href\":\"/reference/api/2026-04/admin-assistant/get_token\"}]}]},{\"group\":\"Architecture\",\"pages\":[{\"title\":\"Pinecone Assistant architecture\",\"description\":\"Pinecone Assistant architecture overview covering document ingestion, chunking, vector retrieval, and LLM response generation for RAG.\",\"sidebarTitle\":\"Assistant architecture\",\"href\":\"/reference/architecture/assistant-architecture\"}]}]},{\"version\":\"2025-10\",\"pages\":[{\"title\":\"2025-10\",\"href\":\"/reference/api/assistant/introduction\"}]},{\"version\":\"2025-04\",\"pages\":[{\"title\":\"2025-04\",\"href\":\"/reference/api/assistant/introduction\"}]},{\"version\":\"2025-01\",\"pages\":[{\"title\":\"2025-01\",\"href\":\"/reference/api/assistant/introduction\"}]}]},{\"tab\":\"Examples\",\"pages\":[{\"title\":\"Assistant examples\",\"description\":\"Notebooks and Next.js sample apps for Pinecone Assistant: quickstart, context snippet retrieval, and a full-stack chat UI with citations.\",\"href\":\"/examples/assistant\"}]}]},{\"dropdown\":\"Pinecone Nexus\",\"icon\":\"brain-circuit\",\"tabs\":[{\"tab\":\"Guides\",\"groups\":[{\"group\":\"Get started\",\"pages\":[{\"title\":\"Pinecone Nexus\",\"sidebarTitle\":\"Overview\",\"description\":\"Pinecone Nexus is the knowledge engine for agents. It compiles your data into queryable knowledge once, then serves grounded, cited answers to agents on every call.\",\"mode\":\"wide\",\"href\":\"/guides/nexus/overview\"},{\"title\":\"Nexus quickstart\",\"sidebarTitle\":\"Quickstart\",\"description\":\"Deploy Pinecone Nexus with BYOC, curate a context from your own documents, and run KnowQL queries that return grounded, cited multi-document answers.\",\"href\":\"/guides/nexus/quickstart\"},{\"title\":\"Nexus key concepts\",\"sidebarTitle\":\"Key concepts\",\"description\":\"Learn the core Pinecone Nexus concepts: sources, workspaces, contexts, manifests, artifacts, tasks, sessions, and the Query API, and how they connect.\",\"href\":\"/guides/nexus/concepts\"}]},{\"group\":\"The knowledge engine\",\"pages\":[{\"title\":\"How Nexus works\",\"sidebarTitle\":\"How Nexus works\",\"description\":\"How Nexus distills curated artifacts for retrieval, then answers with code over a retrieval SDK.\",\"href\":\"/guides/nexus/how-it-works\"},{\"title\":\"Context design\",\"sidebarTitle\":\"Context design\",\"description\":\"The manifest, the information stack (chunks, artifacts, and edges), and the artifact-kind reference.\",\"href\":\"/guides/nexus/context-design\"},{\"title\":\"Curation\",\"sidebarTitle\":\"Curation\",\"description\":\"The write path that turns sources into chunks and artifacts, incrementally, driven by the manifest.\",\"href\":\"/guides/nexus/how-curation-works\"},{\"title\":\"Nexus model guidance\",\"description\":\"Learn how Pinecone Nexus uses models for generation, curation, and retrieval, and how to choose the right one.\",\"href\":\"/guides/nexus/models\"},{\"group\":\"Queries and sessions\",\"pages\":[{\"title\":\"Queries\",\"sidebarTitle\":\"Queries\",\"description\":\"The query runtime that gathers evidence and composes a grounded, cited answer.\",\"href\":\"/guides/nexus/how-queries-work\"},{\"title\":\"Query tracing\",\"sidebarTitle\":\"Query tracing\",\"description\":\"Inspect a Pinecone Nexus query trace to see reasoning steps, retrieval tool calls, token usage, latency, cost breakdown, and cache savings.\",\"href\":\"/guides/nexus/query-tracing\"}]}]},{\"group\":\"Tools\",\"pages\":[{\"title\":\"MCP server\",\"sidebarTitle\":\"MCP server\",\"description\":\"Query your Pinecone Nexus contexts from any Model Context Protocol client, such as Claude Desktop, over Streamable HTTP.\",\"href\":\"/guides/nexus/mcp-server\"}]},{\"group\":\"Bring Your Own Cloud\",\"pages\":[{\"title\":\"Nexus BYOC overview\",\"sidebarTitle\":\"Overview\",\"description\":\"What Nexus BYOC is, how it relates to Database BYOC, and its architecture.\",\"href\":\"/guides/nexus/byoc/overview\"},{\"title\":\"Nexus BYOC data residency and limits\",\"sidebarTitle\":\"Residency and limits\",\"description\":\"Where your data lives and travels in Nexus BYOC, plus authentication, encryption, cluster footprint, and limitations.\",\"href\":\"/guides/nexus/byoc/reference\"},{\"title\":\"Deploy Nexus BYOC\",\"sidebarTitle\":\"Deploy\",\"description\":\"Install and operate Pinecone Nexus in your own cloud account.\",\"href\":\"/guides/nexus/byoc/deploy\"}]}]},{\"tab\":\"Reference\",\"groups\":[{\"group\":\"APIs\",\"pages\":[{\"title\":\"Pinecone Nexus API\",\"sidebarTitle\":\"Introduction\",\"description\":\"Programmatic access to Nexus workspaces, contexts, sources, curation, and KnowQL queries.\",\"href\":\"/reference/api/nexus/introduction\"},{\"title\":\"Authentication\",\"sidebarTitle\":\"Authentication\",\"description\":\"Authenticate to the Nexus API with your Pinecone API key, sent directly or exchanged for a short-lived session token.\",\"href\":\"/reference/api/nexus/authentication\"}]},{\"group\":\"Control plane\",\"pages\":[{\"group\":\"Manage Workspaces\",\"pages\":[{\"title\":\"List workspaces\",\"description\":\"List the workspaces in the project. Results are paginated; the `pagination` object is omitted when there are no further results.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_control_2026-07.oas.yaml get /workspaces\",\"href\":\"/api-reference/manage-workspaces/list-workspaces\",\"autogeneratedByOpenApi\":true},{\"title\":\"Create a workspace\",\"description\":\"Create a Nexus workspace. The workspace name must be unique within the project.\\n\\nWorkspaces are created asynchronously. On success the workspace is returned in the `Initializing` state with `ready` set to `false`. Poll [Describe workspace](#operation/describe_workspace) until the workspace reaches the `Ready` state before using it.\\n\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_control_2026-07.oas.yaml post /workspaces\",\"href\":\"/api-reference/manage-workspaces/create-a-workspace\",\"autogeneratedByOpenApi\":true},{\"title\":\"Describe a workspace\",\"description\":\"Get a description of a workspace.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_control_2026-07.oas.yaml get /workspaces/{workspace_name}\",\"href\":\"/api-reference/manage-workspaces/describe-a-workspace\",\"autogeneratedByOpenApi\":true},{\"title\":\"Delete a workspace\",\"description\":\"Delete an existing workspace. Deletion is asynchronous: the workspace transitions to the `Terminating` state and its contexts are deleted, after which the workspace itself is removed.\\n\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_control_2026-07.oas.yaml delete /workspaces/{workspace_name}\",\"href\":\"/api-reference/manage-workspaces/delete-a-workspace\",\"autogeneratedByOpenApi\":true}]}]},{\"group\":\"Data plane\",\"pages\":[{\"group\":\"Auth\",\"pages\":[{\"title\":\"Exchange a Pinecone API key for a session token\",\"description\":\"Exchange a Pinecone API key for the session token every other endpoint expects. Send the token as a bearer credential.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /auth/login\",\"href\":\"/api-reference/auth/exchange-a-pinecone-api-key-for-a-session-token\",\"autogeneratedByOpenApi\":true},{\"title\":\"Current identity (whoami)\",\"description\":\"Who the current credential authenticates, and which project and workspace it is scoped to.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /auth\",\"href\":\"/api-reference/auth/current-identity-whoami\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Project\",\"pages\":[{\"title\":\"Get the active project\",\"description\":\"The project the session is scoped to, plus whether this deployment requires a workspace host.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /project\",\"href\":\"/api-reference/project/get-the-active-project\",\"autogeneratedByOpenApi\":true},{\"title\":\"Project-wide task stats\",\"description\":\"Aggregate task counters across the whole project (all contexts), broken down by state and workflow. The per-context equivalent is `GET /contexts/{slug}/tasks/stats`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /stats\",\"href\":\"/api-reference/project/project-wide-task-stats\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Connectors\",\"pages\":[{\"title\":\"List the project's linked connectors\",\"description\":\"The project's linked source providers. Filter by `kind` to those valid for a context kind.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /connectors\",\"href\":\"/api-reference/connectors/list-the-projects-linked-connectors\",\"autogeneratedByOpenApi\":true},{\"title\":\"Get a connector\",\"description\":\"One linked connector, secrets stripped.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /connectors/{id}\",\"href\":\"/api-reference/connectors/get-a-connector\",\"autogeneratedByOpenApi\":true},{\"title\":\"Unlink a connector\",\"description\":\"Unlink the connector from the project. Sources it already imported stay in place.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /connectors/{id}\",\"href\":\"/api-reference/connectors/unlink-a-connector\",\"autogeneratedByOpenApi\":true},{\"title\":\"Start the OAuth link flow for a provider\",\"description\":\"Returns an `authorize_url` for the user to open in a browser. The connector is persisted by the provider's OAuth redirect callback once the user approves access.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /connectors/oauth/{provider}/start\",\"href\":\"/api-reference/connectors/start-the-oauth-link-flow-for-a-provider\",\"autogeneratedByOpenApi\":true},{\"title\":\"Link a connector with an API key\",\"description\":\"Link a key-based provider by supplying its API key directly, instead of running the OAuth flow.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /connectors/keys/{provider}\",\"href\":\"/api-reference/connectors/link-a-connector-with-an-api-key\",\"autogeneratedByOpenApi\":true},{\"title\":\"Browse a connector's folders/files\",\"description\":\"Browse the provider's folders and files to find the ids to import. Omit `folder` for the root.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /connectors/{id}/items\",\"href\":\"/api-reference/connectors/browse-a-connectors-foldersfiles\",\"autogeneratedByOpenApi\":true},{\"title\":\"List a context's connectors (with per-context enabled flag)\",\"description\":\"The project's connectors, each with whether this context may import from it.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/connectors\",\"href\":\"/api-reference/connectors/list-a-contexts-connectors-with-per-context-enabled-flag\",\"autogeneratedByOpenApi\":true},{\"title\":\"Enable or disable a connector for a context\",\"description\":\"Enable or disable one connector for this context.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml put /contexts/{slug}/connectors/{connector_id}\",\"href\":\"/api-reference/connectors/enable-or-disable-a-connector-for-a-context\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Contexts\",\"pages\":[{\"title\":\"List contexts (newest first, with stats)\",\"description\":\"Every context in the active project, newest first, each with its aggregate task counters.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts\",\"href\":\"/api-reference/contexts/list-contexts-newest-first-with-stats\",\"autogeneratedByOpenApi\":true},{\"title\":\"Create a context\",\"description\":\"Created empty, and not queryable until you import sources and curate them — curate is explicit. Optionally seed a `manifest`. A `work` context is the exception: queryable from day zero, built from traces of work rather than documents.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts\",\"href\":\"/api-reference/contexts/create-a-context\",\"autogeneratedByOpenApi\":true},{\"title\":\"Get a context\",\"description\":\"One context and its derived lifecycle flags.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}\",\"href\":\"/api-reference/contexts/get-a-context\",\"autogeneratedByOpenApi\":true},{\"title\":\"Update a context\",\"description\":\"All fields optional; an absent one is left untouched. An empty string clears `description`/`guide`, and `{}` clears the manifest back to defaults.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml put /contexts/{slug}\",\"href\":\"/api-reference/contexts/update-a-context\",\"autogeneratedByOpenApi\":true},{\"title\":\"Delete a context (and its Pinecone indexes)\",\"description\":\"Delete the context, its sources, its curated knowledge, and its Pinecone indexes. Not reversible.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /contexts/{slug}\",\"href\":\"/api-reference/contexts/delete-a-context-and-its-pinecone-indexes\",\"autogeneratedByOpenApi\":true},{\"title\":\"Per-context task statistics\",\"description\":\"Aggregate counters over every task this context has run. The project-wide equivalent is `GET /stats`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/tasks/stats\",\"href\":\"/api-reference/contexts/per-context-task-statistics\",\"autogeneratedByOpenApi\":true},{\"title\":\"Trigger an on-demand self-tuning optimize\",\"description\":\"Tunes the manifest from real query traffic, then chains a forced re-curate. Every field of the required body is optional, so `{}` is valid — and a no-op without `candidate_queries`. The context must be curated, and only one optimize runs at a time.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/optimize\",\"href\":\"/api-reference/contexts/trigger-an-on-demand-self-tuning-optimize\",\"autogeneratedByOpenApi\":true},{\"title\":\"Run the Design-flow explore agent (propose a manifest)\",\"description\":\"Inspects the uploaded source and proposes manifest-template matches in the task's `output` (see `ExploreOutput`). Persists nothing — review the proposal, then apply it with a manifest update and a forced curate. Body is optional.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/explore\",\"href\":\"/api-reference/contexts/run-the-design-flow-explore-agent-propose-a-manifest\",\"autogeneratedByOpenApi\":true},{\"title\":\"Estimate the token + time cost of curating the in-progress manifest\",\"description\":\"Estimates the token and time cost of curating the sources under the manifest in the request body, reported as the task's `output` (see `ProfileEstimateOutput`). Persists nothing. Body is optional.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/profile\",\"href\":\"/api-reference/contexts/estimate-the-token-+-time-cost-of-curating-the-in-progress-manifest\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Manifest\",\"pages\":[{\"title\":\"Get the context's manifest\",\"description\":\"The context's pinned manifest document. A context that pins nothing returns `null` — the runtime fills defaults. Writes go through the `manifest` field on `PUT /contexts/{slug}`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/manifest\",\"href\":\"/api-reference/manifest/get-the-contexts-manifest\",\"autogeneratedByOpenApi\":true},{\"title\":\"List the built-in manifest templates\",\"description\":\"The templates a new context can be seeded from.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /manifest/templates\",\"href\":\"/api-reference/manifest/list-the-built-in-manifest-templates\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Curation\",\"pages\":[{\"title\":\"Get the curation ledger\",\"description\":\"What the last curate recorded: the per-source hash and timestamp map, artifact edges, corpus groups, the live version pin, delete tombstones, artifact-reclaim intents, and the pointer and glossary resume cursors. Chunk ids are tracked too but not served — an internal retrieval unit.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/curate\",\"href\":\"/api-reference/curation/get-the-curation-ledger\",\"autogeneratedByOpenApi\":true},{\"title\":\"Build or rebuild the context's index from its sources\",\"description\":\"Curate the staged sources under the active manifest. **Required before querying** — there is no auto-curate. Body is optional; `force: true` rebuilds fully, which is what a manifest edit needs. Search contexts only: a work context builds via `work`/`groom`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/curate\",\"href\":\"/api-reference/curation/build-or-rebuild-the-contexts-index-from-its-sources\",\"autogeneratedByOpenApi\":true},{\"title\":\"Drop named sources from the index + ledger\",\"description\":\"Drop named sources from the index and the curation ledger without re-reading the rest of the corpus.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/curate/delete-sources\",\"href\":\"/api-reference/curation/drop-named-sources-from-the-index-+-ledger\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Source Files\",\"pages\":[{\"title\":\"Import source documents from a project connector\",\"description\":\"Pull source documents from a linked project connector (Box, ...) into the context. Supply either `folder` or `files`. Stages the source only — curate explicitly before querying.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/import\",\"href\":\"/api-reference/source-files/import-source-documents-from-a-project-connector\",\"autogeneratedByOpenApi\":true},{\"title\":\"Upload a source file or archive\",\"description\":\"One file per request, max 2 GiB; archives (`.zip`, `.tar`, `.tar.gz`, `.tgz`) are expanded by the import runtime. Stages the source without indexing it — curate explicitly before querying.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /contexts/{slug}/import/upload\",\"href\":\"/api-reference/source-files/upload-a-source-file-or-archive\",\"autogeneratedByOpenApi\":true},{\"title\":\"List the source file tree (root)\",\"description\":\"The root of the source tree — what has been staged but not necessarily curated.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/source/list\",\"href\":\"/api-reference/source-files/list-the-source-file-tree-root\",\"autogeneratedByOpenApi\":true},{\"title\":\"Source file/dir/size counts\",\"description\":\"Aggregate counts. Where source limits apply, five more fields carry the caps and usage against them (`max_files_per_context`, `max_bytes_per_context`, `max_bytes_per_file`, `used_files`, `used_bytes`); they are absent otherwise.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/source/stats\",\"href\":\"/api-reference/source-files/source-filedirsize-counts\",\"autogeneratedByOpenApi\":true},{\"title\":\"Flat manifest of source files (path, size, last_modified)\",\"description\":\"Flat source-object inventory. Excludes the `_inbox/` staging directory.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/source/manifest\",\"href\":\"/api-reference/source-files/flat-manifest-of-source-files-path-size-last_modified\",\"autogeneratedByOpenApi\":true},{\"title\":\"List the source file tree under a path\",\"description\":\"One directory of the source tree.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/source/list/{path}\",\"href\":\"/api-reference/source-files/list-the-source-file-tree-under-a-path\",\"autogeneratedByOpenApi\":true},{\"title\":\"Read a source file (raw bytes)\",\"description\":\"The raw bytes of one staged source file.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/source/read/{path}\",\"href\":\"/api-reference/source-files/read-a-source-file-raw-bytes\",\"autogeneratedByOpenApi\":true},{\"title\":\"Delete a source file\",\"description\":\"Remove one file from the source tree. Its index entries survive until the next curate.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /contexts/{slug}/source/delete/{path}\",\"href\":\"/api-reference/source-files/delete-a-source-file\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Knowledge\",\"pages\":[{\"title\":\"List curated knowledge (root)\",\"description\":\"The root of the curated knowledge tree — chunks and artifacts the last curate wrote.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/knowledge/list\",\"href\":\"/api-reference/knowledge/list-curated-knowledge-root\",\"autogeneratedByOpenApi\":true},{\"title\":\"Knowledge file/dir/size counts\",\"description\":\"File, directory, and byte counts over the curated knowledge tree.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/knowledge/stats\",\"href\":\"/api-reference/knowledge/knowledge-filedirsize-counts\",\"autogeneratedByOpenApi\":true},{\"title\":\"List curated knowledge under a path\",\"description\":\"One directory of the curated knowledge tree.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/knowledge/list/{path}\",\"href\":\"/api-reference/knowledge/list-curated-knowledge-under-a-path\",\"autogeneratedByOpenApi\":true},{\"title\":\"Read a curated knowledge file (raw bytes)\",\"description\":\"The raw bytes of one curated knowledge file.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /contexts/{slug}/knowledge/read/{path}\",\"href\":\"/api-reference/knowledge/read-a-curated-knowledge-file-raw-bytes\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Query\",\"pages\":[{\"title\":\"Run one KnowQL query turn\",\"description\":\"Send `ask` and, on a new session, a `scope` of 1–10 contexts; continue an existing one with\\n`session_id` or `previous_query_id`. Scoped search contexts must be curated, and a scope may\\nnot mix work and search contexts. Read the answer from `output[].content[].text`.\\n\\n`stream` and `background` are mutually exclusive. `background: true` returns `202` with an\\n`in_progress` query to poll. `stream: true` emits an SSE stream whose `event:` names are the\\nevent `type` (see `QueryEvent`), closed by a final `query` frame carrying the whole turn:\\n\\n```\\nid: 1\\nevent: response.created\\ndata: {\\\"type\\\":\\\"response.created\\\",\\\"query_id\\\":\\\"qry_8b3d5f1a\\\",\\\"session_id\\\":\\\"ses_4f9c1e2a\\\"}\\n\\nid: 2\\nevent: response.output_text.delta\\ndata: {\\\"type\\\":\\\"response.output_text.delta\\\",\\\"query_id\\\":\\\"qry_8b3d5f1a\\\",\\\"delta\\\":\\\"Revenue grew 12%...\\\"}\\n\\nid: 3\\nevent: response.completed\\ndata: {\\\"type\\\":\\\"response.completed\\\",\\\"query_id\\\":\\\"qry_8b3d5f1a\\\"}\\n\\nevent: query\\ndata: {\\\"id\\\":\\\"qry_8b3d5f1a\\\",\\\"object\\\":\\\"query\\\",\\\"status\\\":\\\"completed\\\",\\\"output\\\":[...]}\\n```\\n\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /query\",\"href\":\"/api-reference/query/run-one-knowql-query-turn\",\"autogeneratedByOpenApi\":true},{\"title\":\"Fetch one query (turn)\",\"description\":\"One turn, including its steps, citations, and usage. This is what a background run is polled with.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /queries/{id}\",\"href\":\"/api-reference/query/fetch-one-query-turn\",\"autogeneratedByOpenApi\":true},{\"title\":\"Cancel an in-progress query turn\",\"description\":\"Idempotent — an already-terminal query is returned unchanged. On success the turn's `status` becomes `cancelled`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /queries/{id}/cancel\",\"href\":\"/api-reference/query/cancel-an-in-progress-query-turn\",\"autogeneratedByOpenApi\":true},{\"title\":\"Fetch the recorded trace for a query turn\",\"description\":\"The per-turn debug trace (steps, tool calls, strategy, cost, rollup). Trace persistence is unconditional — every turn lands a trace blob — so this is available once the turn is terminal.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /queries/{id}/trace\",\"href\":\"/api-reference/query/fetch-the-recorded-trace-for-a-query-turn\",\"autogeneratedByOpenApi\":true},{\"title\":\"Stream a query turn's events (SSE)\",\"description\":\"The turn's events as they land — the same `type`-named events `POST /query` emits with `stream: true`, as a standalone resumable subscription. Reconnect with `Last-Event-ID` to replay from where the stream dropped.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /queries/{id}/events\",\"href\":\"/api-reference/query/stream-a-query-turns-events-sse\",\"autogeneratedByOpenApi\":true},{\"title\":\"Record thumbs-up/down feedback on a query turn\",\"description\":\"Record a thumbs-up or thumbs-down on a turn. The rating is returned on the turn thereafter.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml post /queries/{id}/feedback\",\"href\":\"/api-reference/query/record-thumbs-updown-feedback-on-a-query-turn\",\"autogeneratedByOpenApi\":true},{\"title\":\"List the selectable query models\",\"description\":\"What the `model` field on `POST /query` draws from: the default, every catalog entry, the tier → model-id map, per-phase defaults, and the curate-capable ids. Only entries with `available: true` are selectable; the rest are rejected with `400`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /models\",\"href\":\"/api-reference/query/list-the-selectable-query-models\",\"autogeneratedByOpenApi\":true},{\"title\":\"List project-wide query sessions (newest first)\",\"description\":\"Every conversation thread in the project, newest first.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /sessions\",\"href\":\"/api-reference/query/list-project-wide-query-sessions-newest-first\",\"autogeneratedByOpenApi\":true},{\"title\":\"Get a session with its queries (conversation order)\",\"description\":\"One session with its turns in conversation order.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /sessions/{id}\",\"href\":\"/api-reference/query/get-a-session-with-its-queries-conversation-order\",\"autogeneratedByOpenApi\":true},{\"title\":\"Delete a session and its queries\",\"description\":\"Delete a session and every turn belonging to it.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /sessions/{id}\",\"href\":\"/api-reference/query/delete-a-session-and-its-queries\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Tasks\",\"pages\":[{\"title\":\"List tasks (project-wide, paginated)\",\"description\":\"Task records across the project, newest first. Filter by workflow, state, or context, and page with `limit` plus `page` or `offset`.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks\",\"href\":\"/api-reference/tasks/list-tasks-project-wide-paginated\",\"autogeneratedByOpenApi\":true},{\"title\":\"Get a task (with steps)\",\"description\":\"Unlike the listing, this carries the task's `steps` — every one by default, or the newest N with `steps_limit`, where `steps_total` reports the true count.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks/{id}\",\"href\":\"/api-reference/tasks/get-a-task-with-steps\",\"autogeneratedByOpenApi\":true},{\"title\":\"Cancel/terminate a task\",\"description\":\"Body is optional. Max body 1 MiB.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /tasks/{id}\",\"href\":\"/api-reference/tasks/cancelterminate-a-task\",\"autogeneratedByOpenApi\":true}]},{\"group\":\"Task Files\",\"pages\":[{\"title\":\"Read a task file (raw bytes)\",\"description\":\"Serves a task's files while it runs and after it finishes. This is how a finished pack's `\u003cslug\u003e.context.zip` is downloaded.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks/{id}/files/read/{path}\",\"href\":\"/api-reference/task-files/read-a-task-file-raw-bytes\",\"autogeneratedByOpenApi\":true},{\"title\":\"Stat a task file\",\"description\":\"Stat one file in the task container without reading its bytes.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks/{id}/files/metadata/{path}\",\"href\":\"/api-reference/task-files/stat-a-task-file\",\"autogeneratedByOpenApi\":true},{\"title\":\"List a task's files under a path\",\"description\":\"One directory inside the task's working directory.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks/{id}/files/list/{path}\",\"href\":\"/api-reference/task-files/list-a-tasks-files-under-a-path\",\"autogeneratedByOpenApi\":true},{\"title\":\"List a task's working-directory files\",\"description\":\"The root of the task's working directory.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml get /tasks/{id}/files/list\",\"href\":\"/api-reference/task-files/list-a-tasks-working-directory-files\",\"autogeneratedByOpenApi\":true},{\"title\":\"Delete a task file\",\"description\":\"Delete one file from a running task container.\",\"deprecated\":null,\"version\":null,\"openapi\":\"https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-07/nexus_data_2026-07.oas.yaml delete /tasks/{id}/files/delete/{path}\",\"href\":\"/api-reference/task-files/delete-a-task-file\",\"autogeneratedByOpenApi\":true}]}]}]}]},{\"dropdown\":\"Changelog\",\"icon\":\"list\",\"pages\":[{\"title\":\"Pinecone 2026 changelog\",\"description\":\"Every change to Pinecone in 2026, including new features, API updates, deprecations, and pricing and plan changes.\",\"sidebarTitle\":\"2026\",\"mode\":\"wide\",\"href\":\"/release-notes/2026\"},{\"title\":\"Pinecone 2025 changelog\",\"description\":\"Every change to Pinecone in 2025, including new features, API updates, deprecations, and pricing and plan changes.\",\"sidebarTitle\":\"2025\",\"mode\":\"wide\",\"href\":\"/release-notes/2025\"},{\"title\":\"Pinecone 2024 changelog\",\"description\":\"Every change to Pinecone in 2024, including new features, API updates, deprecations, and pricing and plan changes.\",\"sidebarTitle\":\"2024\",\"mode\":\"wide\",\"href\":\"/release-notes/2024\"},{\"title\":\"Pinecone 2023 changelog\",\"description\":\"Every change to Pinecone in 2023, including new features, API updates, deprecations, and pricing and plan changes.\",\"sidebarTitle\":\"2023\",\"mode\":\"wide\",\"href\":\"/release-notes/2023\"},{\"title\":\"Pinecone 2022 changelog\",\"description\":\"Every change to Pinecone in 2022, including new features, API updates, deprecations, and pricing and plan changes.\",\"sidebarTitle\":\"2022\",\"mode\":\"wide\",\"href\":\"/release-notes/2022\"},{\"title\":\"Pinecone feature availability\",\"description\":\"Pinecone feature availability across public preview, general availability, and limited availability releases, with links to the relevant changelog entries.\",\"sidebarTitle\":\"Feature availability\",\"mode\":\"wide\",\"href\":\"/release-notes/feature-availability\"}]}]},\"maps\":{\"firstHrefInVersion\":{\"2026-07 (latest)\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2026-04\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2025-10\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2025-04\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2025-01\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2024-10\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2024-07\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2024-04\":{\"href\":\"/reference/api/introduction\",\"matchLevel\":0},\"2026-04 (latest)\":{\"href\":\"/reference/api/assistant/introduction\",\"matchLevel\":4}},\"firstHrefInLanguage\":{}},\"children\":\"$L30\"}]\n"])</script><script>self.__next_f.push([1,"31:I[604804,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"LoginButtonProvider\"]\n"])</script><script>self.__next_f.push([1,"32:I[141180,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"SidebarLoginButtonProvider\"]\n"])</script><script>self.__next_f.push([1,"33:I[343590,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"NavigationContextController\"]\n"])</script><script>self.__next_f.push([1,"34:I[378486,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"PageListProvider\"]\n"])</script><script>self.__next_f.push([1,"35:I[742977,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"PrefetchProvider\"]\n"])</script><script>self.__next_f.push([1,"36:I[237978,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"PageModeOverrideProvider\"]\n"])</script><script>self.__next_f.push([1,"37:I[378896,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ConfiguredVariationProvider\"]\n"])</script><script>self.__next_f.push([1,"38:I[557611,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"Fonts\"]\n"])</script><script>self.__next_f.push([1,"39:I[330080,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"BannerProvider\"]\n"])</script><script>self.__next_f.push([1,"3a:I[864506,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"NavbarTransitionScript\"]\n"])</script><script>self.__next_f.push([1,"3c:I[540345,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ConsentProvider\"]\n"])</script><script>self.__next_f.push([1,"3d:I[529058,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"LocalStorageAndAnalyticsProviders\"]\n"])</script><script>self.__next_f.push([1,"3e:I[958547,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"40:I[763509,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ThemeLayout\"]\n"])</script><script>self.__next_f.push([1,"41:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"ApiReferenceProvider\"]\n"])</script><script>self.__next_f.push([1,"42:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"PageProvider\"]\n"])</script><script>self.__next_f.push([1,"43:I[91557,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"OpenApiProvider\"]\n"])</script><script>self.__next_f.push([1,"44:I[525343,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"TabSyncContextProvider\"]\n"])</script><script>self.__next_f.push([1,"3b:T9e0,"])</script><script>self.__next_f.push([1,"(function () {\n  var measure = function(){let a=document.querySelectorAll(\"[id='navbar'], [data-top-chrome]\"),b=0;a.forEach(a=\u003e{let c=a.getBoundingClientRect();c.height\u003e0\u0026\u0026(b=Math.max(b,c.bottom))});let c=0,d=document.getElementById(\"content-container\");if(d){let{overflowY:a}=getComputedStyle(d);(\"auto\"===a||\"scroll\"===a)\u0026\u0026(c=Math.max(0,d.getBoundingClientRect().top))}let e=`${Math.round(Math.max(0,b-c))+40}px`,f=document.documentElement.style;f.getPropertyValue(\"--scroll-mt\")!==e\u0026\u0026f.setProperty(\"--scroll-mt\",e)};\n  (function(a){let b=[],c=0,d=\"undefined\"==typeof ResizeObserver?null:new ResizeObserver(f);function e(){let c=Array.from(document.querySelectorAll(\"[id='navbar'], [data-top-chrome]\"));(c.length!==b.length||c.some((a,c)=\u003ea!==b[c]))\u0026\u0026d\u0026\u0026(d.disconnect(),c.forEach(a=\u003ed.observe(a))),b=c,a()}function f(){c||(c=requestAnimationFrame(()=\u003e{c=0,e()}))}let g=\"[id='navbar'], [data-top-chrome]\";function h(a){let b=a.target;if(b instanceof Element\u0026\u0026b.closest(g))return!0;for(let b of a.addedNodes)if(b instanceof Element\u0026\u0026(b.matches(g)||b.querySelector(g)))return!0;for(let b of a.removedNodes)if(b instanceof Element\u0026\u0026(b.matches(g)||b.querySelector(g)))return!0;return!1}new MutationObserver(a=\u003e{a.some(h)\u0026\u0026f()}).observe(document.documentElement,{childList:!0,subtree:!0}),window.addEventListener(\"resize\",f),\"loading\"===document.readyState\u0026\u0026document.addEventListener(\"DOMContentLoaded\",e),e()})(measure);\n  (function(a){let b=window.location.hash.slice(1);if(!b)return;function c(){return\"smooth\"===getComputedStyle(document.documentElement).scrollBehavior}function d(c){let d=document.getElementById(b);return!!d\u0026\u0026(a(),d.scrollIntoView(c?{behavior:c}:void 0),!0)}if(\"complete\"===document.readyState)return void d();let e=new MutationObserver(()=\u003e{!c()\u0026\u0026d(\"instant\")\u0026\u0026f()});function f(){e.disconnect(),window.removeEventListener(\"load\",g)}function g(){let a=c();f(),a\u0026\u0026requestAnimationFrame(()=\u003e{d(),function(){let a=[\"wheel\",\"touchstart\",\"keydown\",\"pointerdown\"],c=0,e=window.scrollY,f=setInterval(()=\u003e{c+=1;let a=document.getElementById(b);if(!a||c\u003e=6)return g();let f=Math.abs(window.scrollY-e)\u003e1;if(e=window.scrollY,f)return;let h=parseFloat(getComputedStyle(a).scrollMarginTop)||0;Math.abs(a.getBoundingClientRect().top-h)\u003e4\u0026\u0026d()},350);function g(){clearInterval(f),a.forEach(a=\u003ewindow.removeEventListener(a,g))}a.forEach(a=\u003ewindow.addEventListener(a,g,{passive:!0}))}()})}window.addEventListener(\"load\",g),e.observe(document.documentElement,{childList:!0,subtree:!0}),!c()\u0026\u0026d(\"instant\")\u0026\u0026f()})(measure);\n})();"])</script><script>self.__next_f.push([1,"2e:[\"$\",\"$L31\",null,{\"children\":[\"$\",\"$L32\",null,{\"children\":[\"$\",\"$L33\",null,{\"children\":[\"$\",\"$L34\",null,{\"pageListDataMap\":{},\"children\":[\"$\",\"$L35\",null,{\"disabled\":\"$undefined\",\"children\":[\"$\",\"$L36\",null,{\"children\":[\"$\",\"$L37\",null,{\"children\":[[\"$\",\"$L13\",null,{\"fonts\":\"$undefined\",\"theme\":\"mint\",\"subdomain\":\"pinecone\"}],[[\"$\",\"$L12\",null,{\"docsConfig\":\"$18:2:props:children:1:props:children:6:props:children:props:children:props:children:props:value:docsConfig\"}],null,[\"$\",\"$L14\",null,{\"theme\":\"mint\"}],[\"$\",\"$L38\",null,{\"fonts\":\"$undefined\",\"children\":[\"$\",\"$L39\",null,{\"bannersByLocale\":{},\"subdomain\":\"pinecone\",\"children\":[[\"$\",\"$L3a\",null,{\"theme\":\"mint\"}],[\"$\",\"script\",null,{\"id\":\"_mintlify-scroll-margin-script\",\"dangerouslySetInnerHTML\":{\"__html\":\"$3b\"},\"suppressHydrationWarning\":true}],[\"$\",\"$L3c\",null,{\"privacy\":\"$undefined\",\"children\":[\"$\",\"$L3d\",null,{\"subdomain\":\"pinecone\",\"isAtlas\":false,\"children\":[\"$\",\"$L3e\",null,{\"toggles\":[{\"name\":\"dashboard-editor-theseus\",\"enabled\":true,\"variant\":{\"name\":\"disabled\",\"enabled\":false,\"feature_enabled\":true},\"impressionData\":false},{\"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\":\"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\":\"editor-branches-v2-autocommit\",\"enabled\":true,\"variant\":{\"name\":\"disabled\",\"enabled\":false,\"feature_enabled\":true},\"impressionData\":false},{\"name\":\"editor-branches-v2\",\"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}],\"children\":\"$L3f\"}]}]}]]}]}]]]}]}]}]}]}]}]}]\n"])</script><script>self.__next_f.push([1,"45:T80a,"])</script><script>self.__next_f.push([1,"{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.pinecone.io/#organization\",\"name\":\"Pinecone Docs\",\"url\":\"https://docs.pinecone.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pinecone/HsZKO51bNmpAasdT/logo/Pinecone-Full-Logo-Black.svg?fit=max\u0026auto=format\u0026n=HsZKO51bNmpAasdT\u0026q=85\u0026s=211d0e7bbefc29ce3b8feee1a05d76ee\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.pinecone.io#website\",\"name\":\"Pinecone Docs\",\"url\":\"https://docs.pinecone.io\",\"publisher\":{\"@id\":\"https://docs.pinecone.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.pinecone.io/reference/api/introduction#webpage\",\"url\":\"https://docs.pinecone.io/reference/api/introduction\",\"name\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"dateModified\":\"2026-08-11T14:29:35.122Z\",\"isPartOf\":{\"@id\":\"https://docs.pinecone.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.pinecone.io/reference/api/introduction#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.pinecone.io/reference/api/introduction#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Pinecone Docs\",\"item\":\"https://docs.pinecone.io\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API reference\",\"item\":\"https://docs.pinecone.io/reference/api/introduction\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.pinecone.io/reference/api/introduction#article\",\"headline\":\"API reference\",\"name\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"url\":\"https://docs.pinecone.io/reference/api/introduction\",\"mainEntityOfPage\":{\"@id\":\"https://docs.pinecone.io/reference/api/introduction#webpage\"},\"image\":\"https://www.pinecone.io/images/docs_og_image_v2.png\",\"dateModified\":\"2026-08-11T14:29:35.122Z\",\"publisher\":{\"@id\":\"https://docs.pinecone.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.pinecone.io#website\"}}]}"])</script><script>self.__next_f.push([1,"30:[\"$\",\"$L40\",null,{\"theme\":\"mint\",\"pageMetadata\":{\"title\":\"API reference\",\"description\":\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"},\"children\":[\"$\",\"$L41\",null,{\"value\":{\"apiReferenceData\":{},\"graphqlReferenceData\":\"$undefined\"},\"children\":[\"$\",\"$L42\",null,{\"value\":{\"pageMetadata\":\"$30:props:pageMetadata\",\"lastModified\":\"2026-08-11T14:29:35.122Z\",\"gitLastModified\":\"$undefined\",\"originalFileLocation\":\"reference/api/introduction.mdx\",\"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: \\\"Pinecone API reference overview for Database, Inference, and Admin endpoints with supported SDKs including Python, Node.js, Java, and Go.\\\"\\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\":{}},\"mdxExtracts\":{\"tableOfContents\":[{\"title\":\"Database\",\"slug\":\"database\",\"depth\":2,\"children\":[]},{\"title\":\"Inference\",\"slug\":\"inference\",\"depth\":2,\"children\":[]}],\"codeExamples\":{}},\"pageType\":\"$undefined\",\"panelMdxSource\":\"$undefined\",\"panelMdxSourceWithNoJs\":\"$undefined\",\"contextualStarterQuestions\":\"$undefined\",\"relatedPages\":\"$undefined\"},\"children\":[\"$\",\"$L43\",null,{\"pageMetadata\":\"$30:props:pageMetadata\",\"mdxExtracts\":\"$30:props:children:props:children:props:value:mdxExtracts\",\"openApiReferenceData\":\"$undefined\",\"children\":[\"$\",\"$L44\",null,{\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$45\"}}],\"$L46\",\"$L47\",\"$L48\",\"$L49\",\"$L4a\"]}]}]}]}]}]\n"])</script><script>self.__next_f.push([1,"4b:I[604780,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"CaptchaProvider\"]\n"])</script><script>self.__next_f.push([1,"4c:I[601054,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"SearchProvider\"]\n"])</script><script>self.__next_f.push([1,"4d:I[28330,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"SkipToContent\"]\n"])</script><script>self.__next_f.push([1,"4e:I[87732,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"AssistantLayoutWrapper\"]\n"])</script><script>self.__next_f.push([1,"4f:I[118717,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ef83d4b60122b4a4.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"NotFoundHydrator\"]\n"])</script><script>self.__next_f.push([1,"50:I[228341,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"PageModeUpdater\"]\n"])</script><script>self.__next_f.push([1,"51:I[575126,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"Background\"]\n"])</script><script>self.__next_f.push([1,"53:I[36098,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"CustomJsFiles\"]\n"])</script><script>self.__next_f.push([1,"57:I[530359,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"MDXContentController\"]\n"])</script><script>self.__next_f.push([1,"58:I[448287,[\"/mintlify-assets/_next/static/chunks/19ae1768f166fab9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b664fc8bb1e7ab0d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde316292f7266ae.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a5edc6734daa1561.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b21970438ab9ed9e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/a919d558158c76f7.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/3c94b65e4dbefe6e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8778b596bb8e1fac.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/b4e3d9af22aa9f7a.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/ac99e94360bfbfe1.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/28bb5e6550ef2148.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cde9521bba917b79.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cc5fb492c7259b04.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/87b74cecd5105777.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cfd727ba62f1c54c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c7c9dfd26f25e785.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cbcc83785dbd629c.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/cee6f6b26d68395d.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/0eb894a8519f24ea.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/fb156bebf42da1e9.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/2dd53f5a4cfe6dd5.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/e95beff806b7ab98.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/8a30b6291cd9465f.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/893b80a74cde24cd.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\",\"/mintlify-assets/_next/static/chunks/c0e7a98cd764702e.js?dpl=dpl_3sPyhdPgVc4FRD4ZS2fygbnKtYuH\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"3f:[\"$\",\"$L4b\",null,{\"enabled\":true,\"isPreview\":false,\"children\":[\"$\",\"$L4c\",null,{\"subdomain\":\"pinecone\",\"hasChatPermissions\":true,\"isLoggedInCli\":false,\"assistantConfig\":{},\"starterQuestions\":\"$undefined\",\"children\":[[\"$\",\"$L4d\",null,{}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"(function i(a,b,c,d){try{if(window.matchMedia(\\\"(max-width: 1024px)\\\").matches||!d){document.documentElement.style.setProperty(c,\\\"0px\\\"),document.documentElement.setAttribute(\\\"data-assistant-state\\\",\\\"closed\\\"),d||localStorage.setItem(a,\\\"false\\\");return}let e=localStorage.getItem(a);if(null===e){document.documentElement.style.setProperty(c,\\\"0px\\\"),document.documentElement.setAttribute(\\\"data-assistant-state\\\",\\\"closed\\\");return}let f=JSON.parse(e),g=localStorage.getItem(b),h=null!==g?JSON.parse(g):368;document.documentElement.style.setProperty(c,f?h+\\\"px\\\":\\\"0px\\\"),document.documentElement.setAttribute(\\\"data-assistant-state\\\",f?\\\"open\\\":\\\"closed\\\")}catch(a){document.documentElement.style.setProperty(c,\\\"0px\\\"),document.documentElement.setAttribute(\\\"data-assistant-state\\\",\\\"closed\\\")}})(\\n    \\\"chat-assistant-sheet-open\\\",\\n    \\\"chat-assistant-sheet-width\\\",\\n    \\\"--assistant-sheet-width\\\",\\n    true\\n  )\"}}],false,[\"$\",\"$L4e\",null,{\"children\":[[\"$\",\"$Le\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L10\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"$L4f\",null,{\"source\":\"multitenant\"}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],\"$undefined\"]}]]}]}]\n"])</script><script>self.__next_f.push([1,"46:[[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"document.documentElement.setAttribute('data-page-mode', \\\"none\\\");\"}}],[\"$\",\"$L50\",null,{\"pageMetadata\":\"$30:props:pageMetadata\"}]]\n47:[\"$\",\"$L51\",null,{\"pageMetadata\":\"$30:props:pageMetadata\"}]\n52:T7c77,"])</script><script>self.__next_f.push([1,"/* Global styles */\n\n:root {\n  --brand-blue: #002BFF;\n  --primary-main: #002BFF;\n  --primary-dark: #222160;\n  --text-contrast: #FFFFFF;\n  --background: #FBFBFC;\n  --paper: #FFFFFF;\n  --surface: #F2F3F6;\n  --divider: #D8DDDF;\n  --secondary: #72788D;\n  --error: #E31957;\n  --warning: #DD815D;\n  --success: #15B077;\n  --info: #0028FF;\n  --text-primary: #1C1917;\n  --text-secondary: #72788D;\n  --text-disabled: #121142;\n  --white: #FFFFFF;\n  --black: #121142;\n  --overlay: #2B3244;\n  --border: #e7e5e4;\n}\n\n.dark {\n  --brand-blue: #1E86EE;\n  --primary-main: #002BFF;\n  --primary-dark: #222160;\n  --text-contrast: #FFFFFF;\n  --background: #171717;\n  --paper: #1E1E1E;\n  --surface: #252525;\n  --divider: #2A2A2A;\n  --secondary: #72788D;\n  --error: #E31957;\n  --warning: #DD815D;\n  --success: #15B077;\n  --info: #0028FF;\n  --text-primary: #FFFFFF;\n  --text-secondary: #A0A0A0;\n  --text-disabled: #666666;\n  --white: #FFFFFF;\n  --black: #000000;\n  --overlay: #2B3244;\n  --border: #303030;\n}\n\n.dark .dark-inverted {\n  filter: invert(1);\n}\n\n#topbar-cta-button {\n  margin-left: 1rem;\n}\n\n#topbar-cta-button \u003e a {\n  display: flex;\n  align-items: center;\n  padding: 0.375rem 1rem !important;\n  gap: 0.5rem;\n  background-color: var(--brand-blue);\n  color: var(--text-contrast) !important;\n  border-radius: 0.25rem;\n  font-weight: 500;\n  letter-spacing: 0.4px;\n}\n\n#topbar-cta-button a:hover {\n  background-color: var(--primary-dark) !important;\n}\n\n\n/* #topbar-cta-button span {\n  border-radius: 4px;\n  font-weight: 500;\n  letter-spacing: 0.4px;\n} */\n\n/* #topbar-cta-button div \u003e svg {\n  display: none;\n} */\n\n/* inserting svg via :after isn't working for some reason, used js instead */\n/* #topbar-cta-button div::after {\n  content: url('data:image/svg+xml;utf8,\u003csvg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg id=\"Icon Right\"\u003e\u003cpath id=\"Vector\" d=\"M8.08906 5L6.91406 6.175L10.7307 10L6.91406 13.825L8.08906 15L13.0891 10L8.08906 5Z\" fill=\"white\"/\u003e\u003c/g\u003e\u003c/svg\u003e');\n  content: \"test\";\n  display: block;\n  width: 20px;\n  height: 20px;\n  margin-left: 8px;\n  background-image: url('data:image/svg+xml;utf8,\u003csvg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg id=\"Icon Right\"\u003e\u003cpath id=\"Vector\" d=\"M8.08906 5L6.91406 6.175L10.7307 10L6.91406 13.825L8.08906 15L13.0891 10L8.08906 5Z\" fill=\"white\"/\u003e\u003c/g\u003e\u003c/svg\u003e');\n  background-color: #000000;\n  background-size: contain;\n  background-repeat: no-repeat;\n  background-position: center;\n} */\n\n\n.documentation-link {\n  color: var(--brand-blue);\n  text-decoration: none;\n}\n\n.documentation-link:hover {\n  color: #000000;\n  /* Black color when hovering */\n}\n\n.custom-button {\n  display: inline-block;\n  padding: 2px 8px;\n  background-color: var(--surface);\n  color: var(--text-primary);\n  /* Text color */\n  border: 1px solid var(--border);\n  /* Border color */\n  border-radius: 25px;\n  /* Rounded borders */\n  text-align: center;\n  user-select: none;\n  transition: background-color 0.3s ease;\n  /* Smooth transition for background color */\n}\n\n/* Change the button color on hover (make it unclickable) */\n.custom-button:hover {\n  background-color: var(--primary-main);\n  color: var(--text-contrast);\n}\n\n/* Adjust the width for the second column */\n/* td:nth-child(2) {\n  width: 200px; /* Adjust the width as per your requirement\n} */\n\n/* \nAdd an announcement bar \nTODO: This can be version specific if you add a page-specific class/ID, but it doesn't seem to work for the OpenAI docs without rewriting the JSON\n*/\n/*  #navbar:before {\n  background-color: #ff4c04;\n  content: \"The legacy version of the API, which required regional URLs for control plane operations, is deprecated as of April 15, 2024 and will be removed in a future, to be announced, release.\";\n  color: rgb(255, 255, 255);\n  display: block;\n  text-align: center;\n  padding: 6px;\n  font-size: 90%;\n}\n*/\n/* Text color */\n/* body {\n  color: #121142 !important;\n} */\n\n/* Header */\n#navbar {\n  background: var(--background);\n  position: fixed;\n  /* position: sticky !important; */\n  /* top: 0 !important; */\n}\n\n#navbar-transition {\n  border-bottom: 1px solid var(--border);\n}\n\n#navbar .max-w-8xl {\n  max-width: 100%;\n}\n\n/* Logo + \"Docs\" text + version select */\n#navbar\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type {\n  flex: initial;\n}\n\n#navbar\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ea:first-of-type {\n  flex: initial;\n  display: flex;\n}\n\n#navbar img[alt=\"logo\"] {\n  max-width: 150px;\n  min-width: 150px;\n}\n\n/* Ensure logo has min width*/\n#navbar \u003e div \u003e div \u003e div \u003e div \u003e div \u003e div.flex-1.flex.items-center \u003e a:first-child {\n  min-width: 209px;\n}\n\n/* Version select */\n[aria-haspopup=\"menu\"] {\n  border-radius: 0.25rem;\n  border: 1px solid var(--border);\n  background-color: transparent !important;\n  color: var(--text-primary)\n}\n\n[aria-labelledby=\"headlessui-menu-button-:r0:\"] {\n  width: 11rem;\n}\n\n/* Right side nav container */\n#navbar\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:nth-of-type(3) {\n  flex: initial;\n  margin-left: 0;\n}\n\n/* Prevent nav items from shrinking */\n#navbar\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:nth-of-type(3)\u003enav {\n  flex-shrink: 0;\n}\n\n/* nav links */\n#navbar nav a {\n  color: var(--text-primary);\n  padding: 0.6rem 1rem;\n  transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n/* #navbar a:hover {\n  background-color: var(--paper);\n  border-radius: 0.25rem;\n} */\n\n#navbar nav ul li:not(:last-of-type) {\n  margin-left: 0;\n}\n\n/* Hide dark mode toggle */\n/* #navbar\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:first-of-type\u003ediv:nth-of-type(3)\u003ediv {\n  display: none;\n} */\n\n/* Second nav container */\n/* Links */\n#navbar a {\n  color: var(--text-primary);\n  margin: 0;\n  padding-left: 0.875rem;\n  padding-right: 0.875rem;\n}\n\n#navbar .nav-tabs {\n  gap: 0 !important;\n}\n\n/* Selected links */\n#navbar a.font-semibold {\n  color: var(--brand-blue);\n  border-bottom-width: 0.1875rem;\n  border-color: var(--brand-blue);\n}\n\n#navbar div.absolute.bottom-0 {\n  display: none;\n}\n\n/* Sidebar */\n#sidebar {\n  left: 0rem;\n  padding-left: 3rem;\n  background: var(--background);\n  border-right: 1px solid var(--border);\n  /* position: sticky; */\n  /* flex-shrink: 0; */\n  /* top: 0; */\n}\n\n#sidebar div.sticky {\n  visibility: hidden;\n}\n\n#sidebar-content {\n  padding-left: 2rem;\n}\n\n/* Sidebar headings and link color */\n#sidebar-content h5,\n#sidebar a,\n#sidebar li div {\n  color: var(--text-primary);\n}\n\n/* Sidebar Introduction link */\n#sidebar\u003ediv\u003eul\u003ediv:first-of-type\u003eli:only-of-type {\n  margin-left: 0;\n}\n\n#sidebar\u003ediv\u003eul\u003ediv:first-of-type\u003eli:only-of-type\u003ea {\n  font-weight: 600;\n}\n\n/* Nav items */\n#navigation-items\u003ediv\u003eul\u003eli {\n  margin-left: 0.75rem;\n}\n\n/* Selected nav items */\n#navigation-items\u003ediv\u003eul\u003eli a.font-semibold {\n  font-weight: 400;\n  background-color: var(--surface);\n}\n\n#navigation-items #mobile-divider {\n  display: none;\n}\n\n/* Main content area */\n/* main \u003e div:first-of-type \u003e div:last-of-type \u003e div:first-of-type {\n  display: flex;\n} */\n@media screen and (min-width: 1024px) {\n  #content-area\u003ediv:first-child:not(#header)\u003ediv.relative.w-full.flex.items-center.justify-center:first-child {\n    margin-top: 7rem\n  }\n}\n\n\n/* Content container */\n/* #content-container {\n  padding-left: 3.5rem !important;\n} */\n#content-container\u003ediv {\n  padding-top: 10rem;\n}\n\n@media (min-width: 1024px) {\n  #content-container\u003ediv {\n    gap: 3rem;\n  }\n\n  #content-container #table-of-contents {\n    padding-left: 0;\n  }\n}\n\n/* Title eyebrow */\n#header .eyebrow {\n  text-transform: uppercase;\n  color: var(--text-primary);\n  font-size: 0.625rem;\n  letter-spacing: 1px;\n  line-height: 160%;\n}\n\n/* Hide empty eyebrow */\n#header .eyebrow:empty {\n  display: none;\n}\n\n/* Title container */\n#header\u003ediv:first-of-type\u003ediv:nth-of-type(2) {\n  margin-top: 0;\n}\n\n/* Title */\n#header h1 {\n  color: var(--text-primary);\n}\n\n/* Article text */\n.prose h2,\n.prose h3,\n.prose h4,\n.prose p,\n.prose li {\n  color: var(--text-primary);\n}\n\n.prose table th, .prose table td {\n  color: var(--text-primary) !important;\n}\n\n.prose a {\n  color: var(--brand-blue) !important;\n  font-weight: 400;\n}\n\n/* Overwrite tailwind max-width */\n.max-w-8xl {\n  max-width: 94.5rem;\n}\n\n.card {\n  box-shadow: none;\n  border: 1px solid var(--border) !important;\n  border-radius: 0.25rem;\n  transition: box-shadow 0.3s ease;\n  background-color: var(--paper) !important;\n}\n\n.card:hover {\n  border: 1px solid var(--border) !important;\n}\n\n:not(.dark) .card:hover {\n  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12) !important;\n}\n\n.dark .card:hover {\n  box-shadow: none !important;\n}\n\n.card\u003ediv {\n  padding: 1.5rem;\n}\n\n.card h2,\n.example-card h2 {\n  font-size: 1.25rem;\n}\n\n.card p,\n.example-card p, .example-card span[data-as=\"p\"] {\n  margin-top: 0.625rem;\n  font-size: 0.875rem;\n  color: var(--text-primary);\n}\n\n.card .eyebrow {\n  font-size: 0.625rem;\n  text-transform: uppercase;\n  line-height: 160%;\n  letter-spacing: 1px;\n}\n\n.card .integration-logo { \n  width: 3.125rem;  \n  height: 3.125rem; \n  display: flex; \n  justify-content: center; \n  align-items: center; \n} \n.card .integration-logo-long { \n  width: 5.125rem; \n  height: 3.125rem; \n  display: flex; \n  justify-content: center; \n  align-items: center; \n}\n\n.card-grid {\n  display: grid;\n  gap: 1.5rem;\n}\n\n@media (min-width: 640px) {\n  .card-grid {\n    grid-template-columns: 1fr 1fr;\n  }\n}\n\n@media (min-width: 1024px) {\n  .card-grid {\n    grid-template-columns: 1fr 1fr 1fr;\n  }\n}\n\n.example-card {\n  box-shadow: none;\n  border: 1px solid var(--border);\n  border-radius: 0.25rem;\n  transition: box-shadow 0.3s ease;\n  padding: 1.5rem;\n  display: flex;\n  flex-direction: column;\n  flex-grow: 1;\n  background-color: var(--paper);\n}\n\n.example-card .arrow {\n  margin-left: auto;\n  margin-top: auto;\n  opacity: 0;\n  transition: opacity 0.3s ease;\n}\n\n.example-card:hover .arrow {\n  opacity: 1;\n}\n\n.example-card:hover {\n  border: 1px solid var(--border) !important;\n}\n\n:not(.dark) .example-card:hover {\n  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12);\n}\n\n.dark .example-card:hover {\n  box-shadow: none !important;\n}\n\n.example-card .tags {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 0.75rem;\n  margin-top: 1.5rem;\n}\n\n.example-card .card-tag {\n  border-radius: 1rem;\n  background-color: var(--background);\n  color: var(--text-primary);\n  font-size: 0.8125rem;\n  line-height: 138%;\n  letter-spacing: 0.16px;\n  padding: 0.1875rem 0.375rem;\n  display: flex;\n  gap: 0.375rem;\n  align-items: center;\n}\n\n.example-card .vectors {\n  color: var(--background);\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: space-between;\n  gap: 1rem;\n  font-size: 0.875rem;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n  padding-top: 2.875rem;\n  margin-top: auto;\n}\n\n.examples-h2 {\n  font-size: 1.25rem;\n  margin-bottom: 1.5rem;\n}\n\n/* Integrations related articles */\n#related-articles {\n  display: flex;\n  flex-direction: column;\n  width: 100%;\n}\n\n#related-articles h2 {\n  color: var(--text-primary);\n  font-size: 1.25rem;\n  font-weight: 600;\n  letter-spacing: 0.15px;\n  line-height: 150%;\n  margin-bottom: 1rem;\n}\n\n#related-articles a {\n  padding: 1.0625rem 0;\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n  gap: 1rem;\n  color: var(--text-primary);\n  font-size: 0.875rem;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n}\n\n#related-articles a:not(:last-of-type) {\n  border-bottom: 1px solid var(--border);\n}\n\n#related-articles a:hover {\n  opacity: 0.7;\n}\n\n#related-articles a\u003esvg {\n  flex-shrink: 0;\n}\n\n/* Integrations back button */\n#back-button {\n  display: flex;\n  gap: 0.5rem;\n  align-items: center;\n  color: var(--text-primary) !important;\n  font-size: 0.875rem;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n  margin-bottom: 1.5rem;\n}\n\n#back-button:hover {\n  opacity: 0.7;\n}\n\n#back-button\u003esvg {\n  flex-shrink: 0;\n}\n\n/* Sample apps */\n\n.sample-app {\n  color: var(--text-primary);\n}\n\n.sample-app h2 {\n  font-size: 2.125rem;\n  font-weight: 600;\n  line-height: 123.5%;\n  letter-spacing: 0.25px;\n}\n\n.sample-app h2:not(:first-of-type) {\n  margin: 4rem 0 0 0;\n}\n\n.sample-app h2:first-of-type {\n  margin: 0;\n}\n\n.sample-app h3 {\n  font-size: 1.25rem;\n  font-weight: 600;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n  margin: 3rem 0 0 0;\n}\n\n.sample-app h4 {\n  font-size: 0.875rem;\n  font-weight: 700;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n  margin: 3rem 0 0 0;\n}\n\n.sample-app p,\n.sample-app ul {\n  margin: 1.5rem 0 0 0;\n  font-size: 0.875rem;\n  list-style-type: disc;\n}\n\n.sample-app li::before {\n  display: none;\n}\n\n.sample-app li {\n  padding-left: 0 !important;\n  margin-left: 1.25rem;\n}\n\n.sample-app li::marker {\n  color: var(--text-primary);\n}\n\n.sample-app-heading {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n}\n\n.sample-app-heading .eyebrow {\n  color: var(--text-primary);\n  font-size: 0.625rem;\n  line-height: 160%;\n  letter-spacing: 1px;\n  text-transform: uppercase;\n}\n\n.sample-app-heading h1 {\n  color: var(--text-primary);\n  margin: 0.5rem 0 0 0;\n  font-size: 2.125rem;\n  font-weight: 600;\n  line-height: 123.5%;\n  letter-spacing: 0.25px;\n}\n\n.sample-app-heading p {\n  color: var(--text-primary);\n  margin: 0.5rem 0 1.5rem 0;\n  font-size: 1.25rem;\n  font-weight: 600;\n  line-height: 150%;\n  letter-spacing: 0.15px;\n}\n\n/* Sample apps content area with sidebar */\n.sample-app-split {\n  display: flex;\n  flex-direction: column;\n  gap: 3rem;\n}\n\n.sample-app-split .sidebar a:not(.connect-with-pinecone) {\n  font-size: 0.875rem;\n  color: var(--text-primary);\n  border-bottom: none;\n}\n\n.sample-app-split .toc-list {\n  display: flex;\n  flex-direction: column;\n  gap: 1rem;\n}\n\n.sample-app-split .toc-list a.bold {\n  font-weight: 700;\n  margin-top: 0.5rem;\n}\n\n.sample-app-split\u003e.content.no-margin\u003ep:first-of-type {\n  margin-top: 0 !important;\n}\n\n.connect-with-pinecone {\n  border: 1px solid var(--border);\n  border-radius: 0.25rem;\n  padding: 0.5rem 1rem;\n  display: inline-flex;\n  align-items: center;\n  gap: 0.5rem;\n  font-size: 0.875rem;\n  font-weight: 500;\n  line-height: 1.5rem;\n  letter-spacing: 0.4px;\n  color: var(--text-primary) !important;\n  text-decoration: none;\n  align-self: flex-start;\n}\n\n@media (min-width: 1280px) {\n  .sample-app-split {\n    flex-direction: row;\n  }\n\n  .sample-app-split .content {\n    overflow-x: auto;\n  }\n\n  .sample-app-split .sidebar {\n    width: 20.625rem;\n    flex-shrink: 0;\n  }\n}\n\n/* Hacky codeblock targeting */\n/* div[class*=\"bg-codeblock\"].relative {\n  border-radius: 0.25rem; */\n  /* border: 1px solid var(--border); */\n/* } */\n\n/* :not(.dark) div[class*=\"bg-codeblock\"].relative {\n  background: var(--black);\n}\n\n.dark div[class*=\"bg-codeblock\"].relative {\n  background: var(--paper);\n}  */\n\np\u003ecode {\n  font-size: 0.75rem;\n  line-height: 150%;\n  letter-spacing: 0.5px;\n  border-radius: 0.25rem;\n  padding: 0.125rem 0.5rem;\n  background-color: var(--paper) !important;\n  color: var(--text-primary) !important;\n  border: none;\n}\n\ncode .api-key.set {\n  color: orange;\n}\n\n.pinecone-connect-connected {\n  width: 100%;\n  max-width: 31.25rem;\n  background-color: var(--paper);\n  transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;\n  border-radius: 0.25rem;\n  padding: 1.5rem;\n  margin: 1.5rem 0;\n  border: 1px solid var(--border);\n}\n\n.pinecone-connect-connected img {\n  height: 1.875rem;\n  margin: 0;\n}\n\n.pinecone-connect-connected p {\n  color: var(--text-primary) !important;\n}\n\n.pinecone-connect-connected p:last-of-type {\n  margin-top: 0.75rem;\n}\n\n.remove-api-key {\n  display: flex;\n  width: 100%;\n  max-width: 31.25rem;\n  margin-top: -1.25rem;\n}\n\n.remove-api-key\u003ebutton {\n  font-size: 0.8125rem;\n  font-weight: 500;\n  color: var(--brand-blue);\n  margin-left: auto;\n}\n\n.connect-widget-skeleton {\n  margin-block: 45px;\n  width: 100%;\n  max-width: 31.25rem;\n  height: 180px;\n  background: var(--paper);\n  border-radius: 4px;\n  overflow: hidden;\n  position: relative;\n  border: 1px solid var(--border);\n}\n\n.skeleton-content {\n  width: 100%;\n  max-width: 450px;\n  height: 180px;\n  background: linear-gradient(90deg,\n      rgba(255, 255, 255, 0) 0%,\n      rgba(255, 255, 255, 0.6) 50%,\n      rgba(255, 255, 255, 0) 100%);\n  animation: shimmer 1.5s infinite;\n  position: absolute;\n  top: 0;\n  left: 0;\n}\n\n@keyframes shimmer {\n  0% {\n    transform: translateX(-100%);\n  }\n\n  100% {\n    transform: translateX(100%);\n  }\n}\n\n/* Model Gallery */\n\n.featured-card-container {\n  padding: 0 1rem;\n  position: relative;\n  width: 100%;\n  margin: 1rem 0;\n  overflow: visible;\n  -webkit-overflow-scrolling: touch;\n}\n\n.featured-model-cards {\n  display: grid;\n  grid-auto-flow: column;\n  grid-auto-columns: calc(25% - 0.75rem);\n  gap: 1rem;\n  overflow-x: auto;\n  scroll-behavior: smooth;\n  scroll-snap-type: x mandatory;\n  -webkit-overflow-scrolling: touch;\n  padding: 1rem 0;\n  margin: -1rem 0;\n  scrollbar-width: none;\n  -ms-overflow-style: none;\n  cursor: grab;\n}\n\n.featured-model-cards\u003e* {\n  scroll-snap-align: start;\n}\n\n.carousel-button {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 2.5rem;\n  height: 2.5rem;\n  border-radius: 9999px;\n  background: var(--paper);\n  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  z-index: 10;\n  cursor: pointer;\n  border: 1px solid var(--border);\n  padding: 0;\n}\n\n.carousel-button:hover {\n  background-color: var(--background);\n  transform: translateY(-50%) scale(1.05);\n  box-shadow: 0 6px 8px -2px rgb(0 0 0 / 0.15);\n}\n\n.carousel-button.prev {\n  left: -1.25rem;\n}\n\n.carousel-button.next {\n  right: -1.25rem;\n}\n\n/* Make sure parent containers don't clip the buttons */\n#content-container,\n#content-area,\nmain {\n  overflow: visible !important;\n}\n\n@media (max-width: 1280px) {\n  .featured-model-cards {\n    grid-auto-columns: calc(33.333% - 0.67rem);\n  }\n}\n\n@media (max-width: 1024px) {\n  .featured-model-cards {\n    grid-auto-columns: calc(50% - 0.5rem);\n  }\n}\n\n@media (max-width: 768px) {\n  .featured-model-cards {\n    grid-auto-columns: 90%;\n    padding-bottom: 1rem;\n  }\n\n  .carousel-button {\n    display: none !important;\n  }\n\n  .featured-card-container {\n    padding: 0;\n  }\n}\n\n:not(.dark) .model-card:hover {\n  box-shadow: 0px 5px 5px -3px rgba(163, 169, 175, 0.20), 0px 8px 10px 1px rgba(163, 169, 175, 0.14), 0px 3px 14px 2px rgba(163, 169, 175, 0.12);\n}\n\n.dark .model-card:hover {\n  box-shadow: none !important;\n}\n\n.outlined-button {\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  align-items: center;\n  width: 150px;\n  height: 36px;\n  padding: 4px;\n  border-radius: 4px;\n  border: 1px solid var(--border);\n  color: var(--paper);\n  text-decoration: none;\n  font-size: 14px;\n  letter-spacing: 0.4;\n  text-align: center;\n  color: var(--text-primary);\n  font-weight: 500;\n  transition: background-color 0.3s ease, border 0.3s ease, color 0.3s ease;\n}\n\n.outlined-button:hover {\n  background-color: var(--paper);\n  border: 1px solid var(--brand-blue);\n  color: var(--text-primary);\n}\n\n\n.control {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  background-color: rgba(255, 255, 255, 0.7);\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  opacity: 0.5;\n  transition: opacity 0.3s ease;\n}\n\n.control:hover {\n  opacity: 1;\n}\n\n.prev-slide {\n  left: 10px;\n}\n\n.next-slide {\n  right: 10px;\n}\n\n.inference-text p {\n  margin-top: 0rem;\n}\n\n\n/* Model page */\n.model-page-card {\n  padding: 1.5rem;\n  border-radius: 0.25rem;\n  border: 1px solid var(--border);\n  background: var(--paper);\n  margin-bottom: 2.5rem;\n}\n\n.model-page-card-title {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 1rem;\n  align-items: center;\n}\n\n.model-page-card-title\u003eh1 {\n  font-size: 1.5rem;\n  color: var(--text-primary);\n}\n\n.model-page-card-logo {\n  width: 2.125rem;\n  height: 2.125rem;\n  flex-shrink: 0;\n}\n\n.model-page-card-logo\u003eimg {\n  width: 100%;\n  height: 100%;\n  object-fit: contain;\n}\n\n.model-page-card-inference {\n  border-radius: 1rem;\n  border: 1px solid var(--border);\n  padding: 0.25rem 0.375rem 0.25rem 0.25rem;\n  display: flex;\n  align-items: center;\n  gap: 0.375rem;\n  font-size: 0.8125rem;\n}\n\n.model-page-card-stats {\n  display: flex;\n  gap: 1.5rem;\n  flex-wrap: wrap;\n  margin-top: 1rem;\n}\n\n.model-page-card-stats\u003ediv\u003espan {\n  font-size: 0.625rem;\n  color: var(--text-secondary);\n  letter-spacing: 0.2px;\n  font-weight: 500;\n}\n\n.model-page-card-stats\u003ediv\u003ep, .model-page-card-stats\u003ediv\u003espan[data-as=\"p\"] {\n  display: block;\n  font-size: 0.75rem;\n  color: var(--text-primary);\n  letter-spacing: 0.17px;\n}\n\n.model-page-card-stats\u003ediv.price {\n  margin-left: auto;\n}\n\n.model-page-card-stats\u003ediv.price\u003ep {\n  margin-left: auto;\n  font-weight: 600;\n}\n\n.model-page-tabs {\n  display: flex;\n  width: 100%;\n  border-bottom: 1px solid var(--border);\n  margin-bottom: 2rem;\n}\n\n.model-page-tabs\u003ebutton {\n  padding: 0.5625rem 1rem;\n  border-bottom: 1px solid transparent;\n  color: var(--secondary);\n  display: flex;\n  align-items: center;\n  gap: 0.375rem;\n  font-weight: 500;\n  letter-spacing: 0.4px;\n}\n\n.model-page-tabs\u003ebutton\u003esvg\u003epath {\n  fill: var(--secondary);\n}\n\n.model-page-tabs\u003ebutton.active {\n  border-bottom: 2px solid var(--brand-blue);\n  color: var(--brand-blue);\n}\n\n.model-page-tabs\u003ebutton.active\u003esvg\u003epath {\n  fill: var(--brand-blue);\n}\n\n.model-page-playground {\n  display: none;\n}\n\n.model-page-guides {\n  display: flex;\n  flex-direction: column;\n  gap: 3rem;\n}\n\n.model-page-content {\n  flex-shrink: 1;\n  width: auto;\n  max-width: 1050px;\n\n  @media (max-width: 1500px) {\n    max-width: 700px;\n  }\n}\n\n.model-page-content\u003e :first-child {\n  margin-top: 0;\n}\n\n.model-page-content pre {\n  white-space: pre-wrap;\n}\n\n.model-page-sidebar {\n  width: 100%;\n  flex-shrink: 1;\n}\n\n.model-page-sidebar .iframe-placeholder {\n  height: 800px;\n}\n\n/* removing inline padding for now */\n@media (min-width: 1280px) {\n  .model-search-container {\n    padding-inline: 0px;\n  }\n}\n\n.model-page-sidebar-readmore {\n  font-size: 0.875rem;\n  font-style: normal;\n  font-weight: 500;\n  line-height: 150%;\n  letter-spacing: 0.15px\n}\n\n.model-page-sidebar-readmore svg {\n  margin-bottom: 2px;\n}\n\n.model-search-container {\n  min-height: 2000px;\n\n  @media (max-width: 768px) {\n    min-height: 2000px;\n  }\n}\n\n#model-search-iframe {\n  min-height: 2000px;\n}\n\n@media (min-width: 1080px) {\n  .model-page-guides {\n    flex-direction: row;\n  }\n\n  .model-page-sidebar {\n    max-width: 20.6875rem;\n    flex-shrink: 0;\n  }\n\n}\n\n/* Hide scrollbar for Chrome/Safari */\n.featured-model-cards::-webkit-scrollbar {\n  display: none;\n}\n\n/* Show grabbing cursor while actively scrolling */\n.featured-model-cards:active {\n  cursor: grabbing;\n}\n\n/* Add minimum width for model card buttons */\n.featured-model-cards .example-card button,\n.featured-model-cards .model-card button {\n  min-width: 200px;\n  /* Ensures button doesn't shrink below this width */\n  width: 100%;\n  /* Allows button to grow with container */\n  max-width: 400px;\n  /* Prevents button from getting too wide */\n  margin: 0 auto;\n  /* Centers the button if container is wider */\n}\n\n@media (max-width: 576px) {\n  #pinecone-connect-widget {\n    scale: 0.95 !important;\n    transform-origin: top left;\n  }\n  .connect-widget-skeleton {\n    height: 180px;\n    margin-block: 30px;\n  }\n  \n  .skeleton-content {\n    height: 180px;\n  }\n}\n\n/* Target the iframe specifically */\n#pinecone-connect-widget iframe {\n  width: 100% !important;\n  max-width: 500px !important;\n}\n\n/* Media query for smaller screens */\n@media (max-width: 576px) {\n  #pinecone-connect-widget,\n  #pinecone-connect-widget \u003e div,\n  #pinecone-connect-widget iframe {\n    width: 100% !important;\n    min-width: 0 !important;\n    max-width: 100% !important;\n  }\n  \n  /* Also adjust parent container if needed */\n  div[style*=\"min-width\"] {\n    min-width: 0 !important;\n    width: 100% !important;\n  }\n}\n\n\n/* Style for the copy tooltip */\n.absolute.top-11.left-1\\/2.transform.-translate-x-1\\/2.-translate-y-1\\/2.peer-hover\\:opacity-100.opacity-0.text-black.rounded-lg.px-1\\.5.py-0\\.5.text-xs.bg-white,\ndiv[class*=\"absolute top-11 left-1/2 transform -translate-x-1/2 -translate-y-1/2\"][class*=\"text-black rounded-lg px-1.5 py-0.5 text-xs bg-white\"],\ndiv[aria-hidden=\"true\"][class*=\"absolute top-11 left-1/2 transform -translate-x-1/2 -translate-y-1/2\"][class*=\"opacity-0\"][class*=\"text-white rounded-lg px-1.5 py-0.5 text-xs\"] {\n  background-color: var(--brand-blue) !important;\n  color: white !important;\n}\n\n/* Also target the tooltip in the InlineCode component */\n.absolute.top-11.left-1\\/2.transform.-translate-x-1\\/2.-translate-y-1\\/2.hidden.group-hover\\:block.text-white.rounded-lg.px-1\\.5.py-0\\.5.text-xs {\n  background-color: var(--brand-blue) !important;\n  color: white !important;\n}\n\n/* Styles for when embedded in the Console. See console-iframe.js for more details. */\n.pinecone-console-embed {\n  /* Hide logo */\n  #navbar img {\n    display: none;\n  }\n\n  /* Hide top part of navbar */\n  #navbar .relative:first-of-type \u003e div:first-of-type {\n    height: 0 !important;\n  }\n\n  /* Hide navbar links */\n  #navbar nav {\n    display: none;\n  }\n\n  /* Hide dark mode toggle */\n  #navbar [aria-label=\"Toggle dark mode\"] {\n    display: none;\n  }\n\n  /* Move API version selector to the right edge */\n  #navbar button[aria-haspopup=\"menu\"] {\n    position: absolute;\n    top: 12px;\n    right: 0px;\n  }\n\n  /* Move content up to account for smaller navbar */\n  #content-container,\n  #sidebar {\n    margin-top: -4rem;\n  }\n\n  /* Hide mobile and desktop search button */\n  #search-bar-entry-mobile,\n  #search-bar-entry {\n    display: none;\n  }\n\n  /* Hide actions menu */\n  button[aria-label='More actions'] {\n    display: none;\n  }\n\n  /* Move header link action to the right edge */\n  h2 \u003e .absolute:first-of-type,\n  h3 \u003e .absolute:first-of-type,\n  h4 \u003e .absolute:first-of-type {\n    right: -12px;\n  }\n}\n\n/* Make specific buttons have non-rounded corners */\n#page-context-menu-button {\n  border-start-start-radius: 0.25rem !important;\n  border-end-start-radius: 0.25rem !important;\n}\n\n#page-context-menu button:last-child {\n  border-radius: 0 !important;\n  border-start-end-radius: 0.25rem !important;\n  border-end-end-radius: 0.25rem !important;\n}\n\n/*\n * Agent tool callout on quickstart page.\n * Visually distinguishes the portable search function\n * as a \"grab this and go\" artifact.\n */\n.agent-tool {\n  border-left: 4px solid var(--brand-blue, #002BFF);\n  padding: 1rem 1.25rem;\n  border-radius: 0.375rem;\n  background-color: #f0f4ff;\n  margin: 0.5rem 0 1rem 0;\n}\n\n.agent-tool \u003e p:first-child {\n  margin-top: 0;\n  font-size: 0.875rem;\n  letter-spacing: 0.025em;\n}\n\n.dark .agent-tool {\n  background-color: rgba(0, 43, 255, 0.08);\n  border-left-color: #4d6fff;\n}\n\n/* ---------------------------------------------------------------------------\n   Release notes: sidebar filter panel.\n\n   Mintlify renders its own tag filters in the right rail (`#changelog-filters`),\n   but that rail is `hidden xl:flex`, so they disappear below 1280px. script.js\n   rebuilds the controls in the left sidebar under the year list instead.\n\n   Colors come from the tokens at the top of this file, which already flip for\n   dark mode, so almost nothing here needs a `.dark` rule. Note that Mintlify's\n   own `--primary` and `--gray-*` variables hold space-separated RGB channels\n   rather than colors, so they only work wrapped in `rgb()`.\n\n   The filters are custom dropdowns rather than \u003cselect\u003e, since a native select\n   popup overlays its own control instead of opening beneath it.\n   --------------------------------------------------------------------------- */\n\n/* `mode: \"wide\"` already stops the rail and this panel from rendering, so this\n   is a guard rather than the mechanism: without it, dropping that frontmatter\n   from a year page would silently show Mintlify's filters alongside ours. */\n#changelog-filters {\n  display: none !important;\n}\n\n#pc-cl-filters {\n  margin-top: 1.5rem;\n  padding-top: 1.25rem;\n  border-top: 1px solid var(--divider);\n  display: flex;\n  flex-direction: column;\n  gap: 0.5rem;\n}\n\n.pc-cl-heading {\n  margin: 0 0 0.25rem;\n  font-size: 0.8125rem;\n  font-weight: 600;\n  color: var(--text-primary);\n}\n\n.pc-cl-search {\n  width: 100%;\n  padding: 0.375rem 0.625rem;\n  font-size: 0.8125rem;\n  line-height: 1.5;\n  color: inherit;\n  background-color: transparent;\n  border: 1px solid var(--divider);\n  border-radius: 0.5rem;\n  appearance: none;\n}\n\n.pc-cl-search::placeholder {\n  color: var(--text-secondary);\n}\n\n.pc-cl-search:focus {\n  outline: none;\n  border-color: var(--brand-blue);\n}\n\n/* Dropdowns */\n\n.pc-cl-dd-toggle {\n  width: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 0.5rem;\n  padding: 0.375rem 0.625rem;\n  font-size: 0.8125rem;\n  line-height: 1.5;\n  text-align: left;\n  color: inherit;\n  cursor: pointer;\n  background-color: transparent;\n  border: 1px solid var(--divider);\n  border-radius: 0.5rem;\n}\n\n.pc-cl-dd-toggle:hover {\n  background-color: var(--surface);\n}\n\n.pc-cl-dd.is-active .pc-cl-dd-toggle {\n  border-color: var(--brand-blue);\n  font-weight: 500;\n}\n\n.pc-cl-dd-caret {\n  flex: none;\n  width: 0.75rem;\n  height: 0.75rem;\n  opacity: 0.6;\n}\n\n.pc-cl-dd-toggle[aria-expanded=\"true\"] .pc-cl-dd-caret {\n  transform: rotate(180deg);\n}\n\n/* Fixed, not absolute: the sidebar scrolls, and a scroll container clips\n   absolutely positioned descendants whatever their z-index. script.js sets\n   `top`, `left`, `width`, and `max-height` from the toggle's rect. */\n.pc-cl-dd-menu {\n  position: fixed;\n  z-index: 50;\n  margin: 0;\n  padding: 0.25rem;\n  overflow-y: auto;\n  list-style: none;\n  background-color: var(--paper);\n  border: 1px solid var(--divider);\n  border-radius: 0.5rem;\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);\n}\n\n.dark .pc-cl-dd-menu {\n  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);\n}\n\n/* Mintlify's prose styles bullet and indent list items. */\n.pc-cl-dd-menu li {\n  margin: 0;\n  padding: 0;\n  list-style: none;\n}\n\n.pc-cl-dd-menu li::marker,\n.pc-cl-dd-menu li::before {\n  content: none;\n  display: none;\n}\n\n.pc-cl-dd-menu button {\n  width: 100%;\n  padding: 0.3125rem 0.5rem;\n  font-size: 0.8125rem;\n  line-height: 1.4;\n  text-align: left;\n  color: inherit;\n  cursor: pointer;\n  background-color: transparent;\n  border: 0;\n  border-radius: 0.375rem;\n}\n\n.pc-cl-dd-menu button:hover {\n  background-color: var(--surface);\n}\n\n/* Clear and result count */\n\n.pc-cl-clear {\n  align-self: flex-start;\n  padding: 0;\n  font-size: 0.8125rem;\n  color: var(--brand-blue);\n  cursor: pointer;\n  background: none;\n  border: 0;\n}\n\n.pc-cl-clear:hover {\n  text-decoration: underline;\n}\n\n.pc-cl-count {\n  margin: 0;\n  font-size: 0.75rem;\n  color: var(--text-secondary);\n}\n\n/* Shown in the content column when a filter matches nothing. */\n.pc-cl-empty {\n  color: var(--text-secondary);\n}\n\n/* ---------------------------------------------------------------------------\n   Changelog: \u003cUpdate\u003e tag pills.\n\n   Mintlify renders each \u003cUpdate\u003e tag as a rounded span with no padding or\n   border, so multiple tags run together (e.g. \"DatabaseSearch\") and read as one\n   label. Add the padding and outline Mintlify omits so each tag reads as its\n   own pill. The filter logic in script.js (tagsOf) selects the same spans, so a\n   Mintlify markup change could break one without the other; this selector was\n   verified to match only the changelog tag spans. --divider flips for dark\n   mode, so no .dark rule is needed.\n   --------------------------------------------------------------------------- */\n[class*=\"flex-wrap\"][class*=\"gap-2\"][class*=\"text-secondary\"] \u003e span[class*=\"rounded-lg\"][class*=\"font-medium\"] {\n  padding: 0.1875rem 0.625rem;\n  border-radius: 9999px;\n  border: 1px solid var(--divider);\n  background: transparent;\n}\n"])</script><script>self.__next_f.push([1,"48:[[\"$\",\"style\",\"0\",{\"data-custom-css-index\":0,\"data-custom-css-path\":\"styles.css\",\"dangerouslySetInnerHTML\":{\"__html\":\"$52\"}}]]\n54:T5f2,"])</script><script>self.__next_f.push([1,"/**\n * This script is used when the Pinecone docs are embedded in the Pinecone Console.\n * \n * IMPORTANT: You must coordinate changes to this file with changes in Console's DocsDrawer component.\n*/\nconst DOCS_MESSAGE_TYPES = {\n  LOAD: \"pinecone-docs-load\",\n  UNLOAD: 'pinecone-docs-unload',\n  INIT: \"pinecone-docs-init\",\n  READY: \"pinecone-docs-ready\",\n  GET_URL: \"pinecone-docs-get-url\",\n  SEND_URL: \"pinecone-docs-send-url\",\n  SEARCH: 'pinecone-docs-search',\n};\n\nwindow.addEventListener(\"message\", (event) =\u003e {\n  switch (event.data.type) {\n    case DOCS_MESSAGE_TYPES.INIT:\n      init();\n      break;\n\n    case DOCS_MESSAGE_TYPES.GET_URL:\n      sendMessage(DOCS_MESSAGE_TYPES.SEND_URL, {\n        url: window.location.href,\n      });\n      break;\n\n    case DOCS_MESSAGE_TYPES.SEARCH:\n      const searchInput = document.querySelector(\"#search-bar-entry\");\n\n      if (searchInput) {\n        searchInput.dispatchEvent(new Event(\"click\", { bubbles: true }));\n      }\n      break;\n\n    default:\n      break;\n  }\n});\n\nwindow.self.addEventListener(\"load\", () =\u003e {\n  if (window.self !== window.top) {\n    sendMessage(DOCS_MESSAGE_TYPES.LOAD);\n  }\n});\n\nwindow.self.addEventListener(\"beforeunload\", () =\u003e {\n  if (window.self !== window.top) {\n    sendMessage(DOCS_MESSAGE_TYPES.UNLOAD);\n  }\n});\n\n\nfunction init() { \n  document.body.classList.add(\"pinecone-console-embed\");\n  sendMessage(DOCS_MESSAGE_TYPES.READY);\n};\n\nfunction sendMessage(type, data) {\n  parent.postMessage(\n    {\n      type,\n      ...data,\n    },\n    \"*\"\n  );\n}\n\n"])</script><script>self.__next_f.push([1,"55:Tace0,"])</script><script>self.__next_f.push([1,"\"use client\";\n\n// Handle theme\nconst theme = getCookie(\"pinecone_theme_mode\");\n\nif (theme === \"system\") {\n  window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n    ? document.documentElement.classList.add(\"dark\")\n    : document.documentElement.classList.remove(\"dark\");\n} else if (theme === \"dark\") {\n  setTimeout(() =\u003e {\n    document.documentElement.classList.add(\"dark\");\n  }, 0);\n} else {\n  document.documentElement.classList.remove(\"dark\");\n}\n\nlet currentTheme = theme;\nconsole.log(\"Initial theme:\", currentTheme);\n\n// Add visibility change listener to detect theme changes when tab becomes active\ndocument.addEventListener(\"visibilitychange\", () =\u003e {\n  // Only check when tab becomes visible again\n  if (document.visibilityState === \"visible\") {\n    console.log(\"Tab became visible, checking theme\");\n    const newTheme = getCookie(\"pinecone_theme_mode\");\n    console.log(\"Current theme:\", currentTheme, \"New theme:\", newTheme);\n\n    // Only update if the theme actually changed\n    if (newTheme !== currentTheme) {\n      currentTheme = newTheme;\n\n      // First remove dark class regardless of the new theme\n      document.documentElement.classList.remove(\"dark\");\n\n      if (newTheme === \"dark\") {\n        document.documentElement.classList.add(\"dark\");\n      } else if (newTheme === \"system\") {\n        // Apply system preference\n        const systemPreference = window.matchMedia(\n          \"(prefers-color-scheme: dark)\"\n        ).matches;\n\n        if (systemPreference) {\n          document.documentElement.classList.add(\"dark\");\n        }\n      }\n      // If theme is light, we already removed the dark class above\n    }\n    // No theme change detected, no action needed\n  }\n});\n\n// Find mintlify dark mode button and replace with our own handler\nconst darkModeButton = document.querySelector(\n  'button[aria-label=\"Toggle dark mode\"]'\n);\nif (darkModeButton) {\n  const newButton = darkModeButton.cloneNode(true);\n  newButton.addEventListener(\"click\", function (event) {\n    toggleTheme();\n  });\n\n  darkModeButton.parentNode.replaceChild(newButton, darkModeButton);\n}\n\nfunction toggleTheme() {\n  const theme = getCookie(\"pinecone_theme_mode\");\n  if (theme === \"system\") {\n    window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n      ? document.documentElement.classList.add(\"dark\")\n      : document.documentElement.classList.remove(\"dark\");\n    document.cookie =\n      \"pinecone_theme_mode=dark; path=/; max-age=31536000; SameSite=lax; domain=.pinecone.io;\";\n  } else if (theme === \"dark\") {\n    document.documentElement.classList.remove(\"dark\");\n    document.cookie =\n      \"pinecone_theme_mode=light; path=/; max-age=31536000; SameSite=lax; domain=.pinecone.io;\";\n  } else {\n    document.documentElement.classList.add(\"dark\");\n    document.cookie =\n      \"pinecone_theme_mode=dark; path=/; max-age=31536000; SameSite=lax; domain=.pinecone.io;\";\n  }\n\n  // Reload iframe after theme change\n  const currentPath = window.location.pathname;\n\n  if (currentPath.includes(\"/models/\")) {\n    const iframe = document.querySelector(\"#model-search-iframe\");\n\n    if (iframe) {\n      iframe.src = iframe.src;\n    }\n  }\n\n  if (currentPath.includes(\"/quickstart\") || currentPath.includes(\"/reference/api/authentication\")) {\n    const iframe = document.querySelector(\"#pinecone-connect-widget iframe\");\n\n    if (iframe) {\n      iframe.src = iframe.src;\n    }\n  }\n\n  if (currentPath.includes(\"/sample-apps\")) {\n    const iframes = document.querySelectorAll(\"#sample-app-iframe, #pinecone-connect-widget iframe\");\n\n    if (iframes.length \u003e 0) {\n      iframes.forEach((iframe) =\u003e {\n        iframe.src = iframe.src;\n      });\n    }\n  }\n}\n\nfunction getCookie(name) {\n  const cookieName = name + \"=\";\n  const cookies = document.cookie.split(\";\");\n\n  for (let i = 0; i \u003c cookies.length; i++) {\n    let cookie = cookies[i].trim();\n\n    if (cookie.indexOf(cookieName) === 0) {\n      return cookie.substring(cookieName.length, cookie.length);\n    }\n  }\n\n  return null;\n}\n\n// Handle anchor links after dynamic content loads\nconst anchorObserver = new MutationObserver((mutations) =\u003e {\n  if (window.location.hash) {\n    const target = document.querySelector(window.location.hash);\n    if (target) {\n      // Disconnect observer once we find our target\n      anchorObserver.disconnect();\n\n      // Small delay to ensure final layout is settled\n      setTimeout(() =\u003e {\n        target.scrollIntoView();\n        window.scrollBy(0, -120); // Adjust for fixed header\n      }, 100);\n    }\n  }\n});\n\n// Start observing document for content changes\nanchorObserver.observe(document.body, {\n  childList: true,\n  subtree: true,\n});\n\n// Insert skeleton loader immediately\nconst pineconeConnectWidget = document.getElementById(\n  \"pinecone-connect-widget\"\n);\nif (pineconeConnectWidget) {\n  pineconeConnectWidget.innerHTML = `\n    \u003cdiv class=\"connect-widget-skeleton\"\u003e\n      \u003cdiv class=\"skeleton-content\"\u003e\u003c/div\u003e\n    \u003c/div\u003e\n  `;\n}\n\nwindow.onload = function () { };\n\n\nconst pineconeConnectWidgetScript = document.createElement(\"script\");\ndocument.body.appendChild(pineconeConnectWidgetScript);\n\nfunction debounce(func, delay) {\n  let timerId;\n  return function (...args) {\n    clearTimeout(timerId);\n    timerId = setTimeout(() =\u003e {\n      func.apply(this, args);\n    }, delay);\n  };\n}\n\n// Find instances of {{YOUR_API_KEY}} in code blocks and replace them with a span\nconst prepareApiKeys = () =\u003e {\n  const codeElements = document.querySelectorAll(\n    \"code:not(.inline-flex.gap-2.items-center)\"\n  );\n\n  codeElements.forEach((el) =\u003e {\n    el.innerHTML = el.innerHTML.replace(\n      /{{YOUR_API_KEY}}/g,\n      `\u003cspan class=\"api-key\"\u003eYOUR_API_KEY\u003c/span\u003e`\n    );\n\n    // Handle cases where the curly braces are in a different span\n    const tokens = el.querySelectorAll(\"span span\");\n    const apiKeyTokens = Array.from(tokens).filter((token) =\u003e\n      token.innerHTML.includes(\"YOUR_API_KEY\")\n    );\n\n    apiKeyTokens.forEach((token) =\u003e {\n      if (\n        token.previousElementSibling \u0026\u0026\n        token.previousElementSibling.textContent === \"{{\" \u0026\u0026\n        token.nextElementSibling \u0026\u0026\n        token.nextElementSibling.textContent === \"}}\"\n      ) {\n        token.previousElementSibling.remove();\n        token.nextElementSibling.remove();\n        token.innerHTML = `\u003cspan class=\"api-key\"\u003eYOUR_API_KEY\u003c/span\u003e`;\n      }\n    });\n  });\n};\n\n// Set api keys inside codeblocks\nconst setApiKeys = () =\u003e {\n  prepareApiKeys();\n  const apiKey = sessionStorage.getItem(\"apiKey\");\n  const codeBlocks = document.querySelectorAll(\"div.mt-5.mb-8.not-prose\");\n\n  // Replace the copy function in each code block so that it works with the added API keys\n  codeBlocks.forEach((codeBlock) =\u003e {\n    const copyButton = codeBlock.querySelector(\n      'button[data-testid=\"copy-code-button\"]'\n    );\n    const clonedElement = copyButton.cloneNode(true);\n    copyButton.parentNode.replaceChild(clonedElement, copyButton);\n\n    clonedElement.addEventListener(\"click\", () =\u003e {\n      const codeElement = codeBlock.querySelector(\"code\");\n      navigator.clipboard.writeText(codeElement.textContent);\n\n      const statusElement = clonedElement.nextElementSibling;\n\n      statusElement.textContent = \"Copied!\";\n      clonedElement.innerHTML = `\u003csvg class=\"fill-primary-light\" width=\"16\" height=\"11\" viewBox=\"0 0 16 11\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cpath d=\"M14.7813 1.21873C15.0751 1.51248 15.0751 1.98748 14.7813 2.2781L6.53135 10.5312C6.2376 10.825 5.7626 10.825 5.47197 10.5312L1.21885 6.28123C0.925098 5.98748 0.925098 5.51248 1.21885 5.22185C1.5126 4.93123 1.9876 4.9281 2.27822 5.22185L5.99697 8.9406L13.7188 1.21873C14.0126 0.924976 14.4876 0.924976 14.7782 1.21873H14.7813Z\"\u003e\u003c/path\u003e\u003c/svg\u003e`;\n\n      setTimeout(() =\u003e {\n        statusElement.textContent = \"Copy\";\n        clonedElement.innerHTML = `\u003csvg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"w-4 h-4 text-gray-400 group-hover/copy-button:text-gray-500 dark:text-white/40 dark:group-hover/copy-button:text-white/60\"\u003e\u003cpath d=\"M14.25 5.25H7.25C6.14543 5.25 5.25 6.14543 5.25 7.25V14.25C5.25 15.3546 6.14543 16.25 7.25 16.25H14.25C15.3546 16.25 16.25 15.3546 16.25 14.25V7.25C16.25 6.14543 15.3546 5.25 14.25 5.25Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c/path\u003e\u003cpath d=\"M2.80103 11.998L1.77203 5.07397C1.61003 3.98097 2.36403 2.96397 3.45603 2.80197L10.38 1.77297C11.313 1.63397 12.19 2.16297 12.528 3.00097\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c/path\u003e\u003c/svg\u003e`;\n      }, 2000);\n    });\n  });\n\n  if (apiKey) {\n    const apiKeys = document.querySelectorAll(\".api-key\");\n    apiKeys.forEach((el) =\u003e {\n      el.innerHTML = apiKey;\n      el.classList.add(\"set\");\n    });\n\n    // Add remove api key button\n    // Remove previous button to prevent duplicates\n    const removeButton = document.querySelector(\".remove-api-key\");\n    if (removeButton) {\n      removeButton.remove();\n    }\n\n    const widgetContainer = document.getElementById(\"pinecone-connect-widget\");\n\n    const div = document.createElement(\"div\");\n    div.classList.add(\"remove-api-key\");\n    const button = document.createElement(\"button\");\n    button.textContent = \"Remove API Key from guide\";\n    button.addEventListener(\"click\", () =\u003e {\n      sessionStorage.removeItem(\"apiKey\");\n      widgetContainer.innerHTML = \"\";\n      div.remove();\n      loadConnectWidget();\n\n      const setApiKeyElements = document.querySelectorAll(\".api-key.set\");\n      setApiKeyElements.forEach((el) =\u003e {\n        el.innerHTML = \"YOUR_API_KEY\";\n        el.classList.remove(\"set\");\n      });\n    });\n\n    div.appendChild(button);\n    widgetContainer.insertAdjacentElement(\"afterend\", div);\n  }\n};\n\nconst debouncedSetApiKeys = debounce(() =\u003e {\n  setApiKeys();\n}, 1000);\n\n// Function to re-set the API keys after codeblock language changes\nconst refreshApiKeys = () =\u003e {\n  try {\n    prepareApiKeys();\n    const apiKey = sessionStorage.getItem(\"apiKey\");\n    if (!apiKey) return;\n\n    const apiKeys = document.querySelectorAll(\".api-key:not(.set)\");\n    if (apiKeys.length \u003e 0) {\n      apiKeys.forEach((el) =\u003e {\n        el.innerHTML = apiKey;\n        el.classList.add(\"set\");\n      });\n    }\n  } catch (error) {\n    console.error(\"Error refreshing API keys:\", error);\n  }\n};\n\nconst debouncedRefreshApiKeys = debounce(() =\u003e {\n  refreshApiKeys();\n}, 1000);\n\nconst loadConnectWidget = () =\u003e {\n  const apiKey = sessionStorage.getItem(\"apiKey\");\n  const widgetContainer = document.getElementById(\"pinecone-connect-widget\");\n\n  if (!apiKey) {\n    import(\"https://connect.pinecone.io/embed.js\")\n      .then(() =\u003e {\n        try {\n          console.log(\"Trying to initialize connectToPinecone\");\n\n          // Clear the skeleton loader before initializing the widget\n          widgetContainer.innerHTML = \"\";\n\n          let integrationId = \"docs\"; // default\n          const currentPath = window.location.pathname;\n\n          if (currentPath === \"/guides/get-started/quickstart\") {\n            integrationId = \"db-quickstart\";\n          } else if (currentPath.startsWith(\"/guides/assistant/quickstart/\")) {\n            integrationId = \"assistant-quickstart\";\n          }\n\n          window.connectToPinecone(\n            (apiKey) =\u003e {\n              console.log(apiKey);\n              sessionStorage.setItem(\"apiKey\", apiKey);\n              setApiKeys();\n            },\n            {\n              integrationId,\n              container: widgetContainer,\n            }\n          );\n        } catch (error) {\n          console.error(\"Error initializing Pinecone widget:\", error);\n        }\n      })\n      .catch((error) =\u003e {\n        console.error(\"Error importing embed.js:\", error);\n      });\n  } else {\n    widgetContainer.innerHTML = `\n      \u003cdiv class=\"pinecone-connect-connected\"\u003e\n        \u003cimg src=\"https://www.pinecone.io/images/Pinecone-Logo-Black.png\" width=\"180\" height=\"auto\" alt=\"Pinecone\" style=\"object-fit: contain;\"\u003e\n        \u003cdiv style=\"font-size:14px\"\u003e\n          \u003cp\u003eYou're all set! An API key has been generated and provided to Pinecone Docs.\u003c/p\u003e\n          \u003cp\u003eYou can manage your API keys in the \u003ca href=\"https://app.pinecone.io\" target=\"_blank\"\u003ePinecone console\u003c/a\u003e.\u003c/p\u003e\n        \u003c/div\u003e\n      \u003c/div\u003e\n    `;\n  }\n};\n\nconst debouncedLoadConnectWidget = debounce(() =\u003e {\n  try {\n    loadConnectWidget();\n  } catch (error) {\n    console.error(\"Error loading connect widget:\", error);\n  }\n}, 1000);\n\nfunction addRelatedArticles(titles, links) {\n  const existing = document.querySelector(\"#related-articles\");\n  if (existing) return;\n\n  const sidebar = document.querySelector(\"#table-of-contents\");\n  const relatedArticles = document.createElement(\"div\");\n  relatedArticles.id = \"related-articles\";\n\n  const title = document.createElement(\"h2\");\n  title.textContent = \"Related Articles\";\n  relatedArticles.appendChild(title);\n\n  titles.forEach((title, index) =\u003e {\n    const relatedArticle = document.createElement(\"a\");\n    relatedArticle.href = links[index];\n    relatedArticle.textContent = title;\n    relatedArticle.insertAdjacentHTML(\n      \"beforeend\",\n      '\u003csvg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\u003cg id=\"ChevronRightFilled\"\u003e\u003cpath id=\"Vector\" d=\"M9.70492 6L8.29492 7.41L12.8749 12L8.29492 16.59L9.70492 18L15.7049 12L9.70492 6Z\" fill=\"#1B17F5\"/\u003e\u003c/g\u003e\u003c/svg\u003e'\n    );\n    relatedArticles.appendChild(relatedArticle);\n  });\n\n  sidebar.appendChild(relatedArticles);\n}\n\nconst relatedArticles = {\n  airbyte: {\n    titles: [\n      \"Data Sync and Search: Pinecone and Airbyte\",\n      \"Introduction to Airbyte and the Pinecone connector\",\n      \"Postgres to Pinecone Syncing\",\n    ],\n    links: [\n      \"https://www.pinecone.io/learn/series/airbyte/\",\n      \"https://www.pinecone.io/learn/series/airbyte/airbyte-and-pinecone-intro/\",\n      \"https://www.pinecone.io/learn/series/airbyte/airbyte-postgres-to-pinecone/\",\n    ],\n  },\n\n  bedrock: {\n    titles: [\"Pinecone as a Knowledge Base for Amazon Bedrock\"],\n    links: [\"https://www.pinecone.io/blog/amazon-bedrock-integration/\"],\n  },\n\n  sagemaker: {\n    titles: [\n      \"Mitigate hallucinations through Retrieval Augmented Generation using Pinecone vector database \u0026 Llama-2 from Amazon SageMaker JumpStart\",\n    ],\n    links: [\n      \"https://aws.amazon.com/blogs/machine-learning/mitigate-hallucinations-through-retrieval-augmented-generation-using-pinecone-vector-database-llama-2-from-amazon-sagemaker-jumpstart/\",\n    ],\n  },\n\n  langchain: {\n    titles: [\"LangChain AI Handbook\"],\n    links: [\"https://www.pinecone.io/learn/series/langchain/\"],\n  },\n\n  openai: {\n    titles: [\n      \"Generative Question-Answering with Long-Term Memory\",\n      \"OpenAI's Text Embeddings v3\",\n    ],\n    links: [\n      \"https://www.pinecone.io/learn/openai-gen-qa/\",\n      \"https://www.pinecone.io/learn/openai-embeddings-v3/\",\n    ],\n  },\n\n  snowflake: {\n    titles: [\n      \"Snowpark Container Services: Securely Deploy and run Sophisticated Generative AI and full-stack apps in Snowflake\",\n    ],\n    links: [\n      \"https://www.snowflake.com/blog/snowpark-container-services-deploy-genai-full-stack-apps/\",\n    ],\n  },\n};\n\nlet isScrollListenerAdded = false;\nlet scrollListener = null;\n\n// Mutation observer to handle page changes\nconst observer = new MutationObserver(function (mutations) {\n  mutations.forEach(function (mutation) {\n    if (mutation.type === \"childList\") {\n      try {\n        // Pinecone connect widget\n        const pineconeConnectWidget = document.querySelector(\n          \"#pinecone-connect-widget\"\n        );\n        if (\n          pineconeConnectWidget \u0026\u0026\n          !pineconeConnectWidget.classList.contains(\"loaded\")\n        ) {\n          debouncedLoadConnectWidget();\n          pineconeConnectWidget.classList.add(\"loaded\");\n        }\n\n        // console.log(\"mutation\")\n\n        if (\n          pineconeConnectWidget \u0026\u0026\n          !pineconeConnectWidget.classList.contains(\"apiKeysSet\")\n        ) {\n          debouncedSetApiKeys();\n          pineconeConnectWidget.classList.add(\"apiKeysSet\");\n        }\n\n        const [path, page, page2] = window.location.pathname\n          .split(\"/\")\n          .slice(1);\n\n        var contentContainer = document.querySelector(\"#content-container\");\n        var contentArea = document.querySelector(\"#content-area\");\n\n        //** Model Gallery **/\n        if (path !== \"models\") {\n          const sidebar = document.querySelector(\"#sidebar\");\n          if (sidebar) sidebar.style.display = \"\";\n          if (contentContainer) contentContainer.style.paddingLeft = \"\";\n        } else {\n          const sidebar = document.querySelector(\"#sidebar\");\n          if (sidebar) sidebar.style.display = \"none\";\n          const rightSidebar = document.querySelector(\"#content-side-layout\");\n          if (rightSidebar) rightSidebar.style.display = \"none\";\n          if (contentContainer) contentContainer.style.paddingLeft = \"0px\";\n          if (contentArea) contentArea.style.paddingLeft = \"0px\";\n          if (contentArea) contentArea.style.marginLeft = \"12px\";\n          const header = document.querySelector(\"#header\");\n          if (header) header.remove();\n          const tableOfContents = document.querySelector(\"#table-of-contents\");\n          if (tableOfContents) tableOfContents.remove();\n        }\n\n        //** References **/\n\n        // Hide toc items with class 'toc-item relevant' and data-depth=\"2\" on /guides/manage-cost/understanding-cost page\n        if (\n          path === \"guides\" \u0026\u0026\n          page === \"manage-cost\" \u0026\u0026\n          page2 === \"understanding-cost\"\n        ) {\n          document.querySelectorAll('li.toc-item[data-depth=\"2\"]').forEach((li) =\u003e {\n            li.style.display = \"none\";\n          });\n        }\n\n        //** Integrations **/\n\n        if (path === \"integrations\" \u0026\u0026 page === \"overview\") {\n          const toc = document.querySelector(\"#table-of-contents\");\n          if (toc) toc.style.display = \"none\";\n\n          const sidebar = document.querySelector(\"#content-side-layout\");\n          if (sidebar) sidebar.style.display = \"none\";\n        } else {\n          // Set sample apps side nav link to active for all sample apps\n          if (page === \"sample-apps\") {\n            const aElement = document.querySelector(\n              'a[href=\"/examples/sample-apps\"]'\n            );\n            if (aElement) {\n              aElement.className =\n                \"group mt-2 lg:mt-0 flex items-center pr-3 py-1.5 rounded-lg focus:outline-primary dark:focus:outline-primary-light bg-primary/10 text-primary font-semibold dark:text-primary-light dark:bg-primary-light/10\";\n            }\n          } else if (page === \"notebooks\") {\n            const aElement = document.querySelector(\n              'li \u003e a[href=\"/examples/sample-apps\"]'\n            );\n            if (aElement) {\n              aElement.className =\n                \"group mt-2 lg:mt-0 flex items-center pr-3 py-1.5 rounded-lg focus:outline-primary dark:focus:outline-primary-light hover:bg-gray-600/5 dark:hover:bg-gray-200/5 text-gray-700 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300\";\n            }\n          }\n          if (path === \"integrations\" \u0026\u0026 page !== \"overview\") {\n            // Insert back button\n            const backButton = document.querySelector(\"#back-button\");\n            if (!backButton) {\n              const link = document.createElement(\"a\");\n              link.id = \"back-button\";\n              link.href = \"/integrations/overview\";\n              link.textContent = \"Back to Integrations\";\n              link.insertAdjacentHTML(\n                \"afterbegin\",\n                '\u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\"\u003e\u003cpath d=\"M10.4693 5.44L9.5293 4.5L5.5293 8.5L9.5293 12.5L10.4693 11.56L7.41596 8.5L10.4693 5.44Z\" fill=\"var(--brand-blue)\"/\u003e\u003c/svg\u003e'\n              );\n\n              const header = document.querySelector(\"#header\");\n              header.insertAdjacentElement(\"afterbegin\", link);\n            }\n\n            // Add related articles\n            switch (\n            page /* Hide related articles for now\n            case \"airbyte\":\n              addRelatedArticles(\n                relatedArticles.airbyte.titles,\n                relatedArticles.airbyte.links\n              );\n              break;\n              airbyte;\n            case \"amazon-bedrock\":\n              addRelatedArticles(\n                relatedArticles.bedrock.titles,\n                relatedArticles.bedrock.links\n              );\n              break;\n            case \"amazon-sagemaker\":\n              addRelatedArticles(\n                relatedArticles.sagemaker.titles,\n                relatedArticles.sagemaker.links\n              );\n              break;\n            case \"langchain\":\n              addRelatedArticles(\n                relatedArticles.langchain.titles,\n                relatedArticles.langchain.links\n              );\n              break;\n            case \"openai\":\n              addRelatedArticles(\n                relatedArticles.openai.titles,\n                relatedArticles.openai.links\n              );\n              break;\n            case \"snowflake\":\n              addRelatedArticles(relatedArticles.snowflake.titles, relatedArticles.snowflake.links)\n              break; */\n            ) {\n              default:\n                break;\n            }\n          }\n\n          // Sample apps\n          if (page === \"sample-apps\" \u0026\u0026 !!page2) {\n            const header = document.querySelector(\"#header\");\n            if (header) header.style.display = \"none\";\n\n            const toc = document.querySelector(\"#table-of-contents\");\n            if (toc) toc.style.display = \"none\";\n\n            const contentArea = document.querySelector(\n              \"#content-area \u003e div.mt-8\"\n            );\n            contentArea.style.marginTop = \"0\";\n\n            // Create toc\n            document.querySelectorAll(\".sample-app-split\").forEach((div) =\u003e {\n              const toc = div.querySelector(\".toc\");\n              const content = div.querySelector(\".content\");\n              const existing = div.querySelector(\".toc-list\");\n\n              if (toc \u0026\u0026 content \u0026\u0026 !existing) {\n                const tocList = document.createElement(\"div\");\n                tocList.className = \"toc-list\";\n\n                const headers = content.querySelectorAll(\n                  \"h2, h3, .connect-with-pinecone\"\n                );\n\n                headers.forEach((header) =\u003e {\n                  // If connect btn, clone it and append\n                  if (header.classList.contains(\"connect-with-pinecone\")) {\n                    const cloned = header.cloneNode(true);\n                    tocList.appendChild(cloned);\n                    return;\n                  }\n                  // Slugify heading text and create id\n                  const slugify = (text) =\u003e\n                    text\n                      .toLowerCase()\n                      .replace(/[^a-z0-9]+/g, \"-\")\n                      .replace(/^-|-$/g, \"\");\n                  const id = slugify(header.textContent);\n                  header.id = id; // Set ID on the header using the slugified text\n\n                  // Create an anchor link and append it to the TOC\n                  const anchor = document.createElement(\"a\");\n                  anchor.href = `#${id}`;\n                  anchor.textContent = header.textContent;\n                  anchor.className = header.tagName === \"H2\" ? \"bold\" : \"\";\n\n                  tocList.appendChild(anchor);\n                });\n\n                toc.appendChild(tocList);\n\n                const initialTopOffset =\n                  tocList.getBoundingClientRect().top + window.scrollY - 148;\n                const stickySidebar = () =\u003e {\n                  if (window.innerWidth \u003e 1280) {\n                    if (window.scrollY \u003e= initialTopOffset) {\n                      tocList.style.position = \"fixed\";\n                      tocList.style.top = \"148px\";\n                    } else {\n                      tocList.style.position = \"relative\";\n                      tocList.style.top = \"\";\n                    }\n                  } else {\n                    tocList.style.position = \"relative\";\n                    tocList.style.top = \"\";\n                  }\n                };\n\n                stickySidebar();\n                window.addEventListener(\"scroll\", stickySidebar);\n                window.addEventListener(\"resize\", stickySidebar);\n              }\n            });\n          }\n\n          // Notebooks\n          if (\n            path === \"examples\" \u0026\u0026\n            (page === \"notebooks\" ||\n              page === \"sample-apps\" ||\n              page == \"reference-architectures\")\n          ) {\n            const toc = document.querySelector(\"#table-of-contents\");\n            if (toc) toc.style.display = \"none\";\n\n            const sidebar = document.querySelector(\"#content-side-layout\");\n            if (sidebar) sidebar.style.display = \"none\";\n\n            const heading = document.querySelector(\"#header h1\");\n            if (heading) heading.style.fontSize = \"1.5rem\";\n          }\n        }\n\n        // Detect when codeblock languages change and rerun the function to replace API keys\n        if (mutation.target.dataset.componentPart === \"code-block-root\") {\n          debouncedRefreshApiKeys();\n        }\n      } catch (error) {\n        console.error(\"Error handling mutation:\", error);\n      }\n    }\n  });\n});\n\nobserver.observe(document.body, { childList: true, subtree: true });\n\n// Replace the header cta button since replacing the svg via css ::after is not working\nwindow.addEventListener(\"load\", () =\u003e {\n  const ctaButton = document.querySelector(\"#topbar-cta-button\");\n\n  if (ctaButton) {\n    ctaButton.innerHTML = \"\";\n    const a = document.createElement(\"a\");\n    a.href = \"https://app.pinecone.io/?sessionType=signup\";\n    a.target = \"_blank\";\n    a.textContent = \"Sign up free\";\n\n    const svg =\n      '\u003csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\"\u003e\u003cpath d=\"M8.08906 5L6.91406 6.175L10.7307 10L6.91406 13.825L8.08906 15L13.0891 10L8.08906 5Z\" fill=\"white\"/\u003e\u003c/svg\u003e';\n\n    a.insertAdjacentHTML(\"beforeend\", svg);\n    ctaButton.appendChild(a);\n  }\n  localStorage.setItem(\"isDarkMode\", \"false\");\n  const [path, page, page2] = window.location.pathname.split(\"/\").slice(1);\n  if (path !== \"reference\") {\n    // Remove version picker from home page on load\n    const versionToggle = document.getElementById(\n      \"headlessui-menu-button-:r0:\"\n    );\n    if (versionToggle) {\n      versionToggle.style.visibility = \"hidden\";\n    }\n  }\n});\n// Model Carousel\ndocument.addEventListener(\"DOMContentLoaded\", () =\u003e {\n  const carousel = document.getElementById(\"modelCarousel\");\n  const prevButton = document.getElementById(\"prevButton\");\n  const nextButton = document.getElementById(\"nextButton\");\n\n  if (!carousel || !prevButton || !nextButton) return;\n\n  const handleScroll = (direction) =\u003e {\n    const cardWidth = carousel.offsetWidth / 3;\n    carousel.scrollBy({\n      left: direction * cardWidth,\n      behavior: \"smooth\",\n    });\n  };\n\n  prevButton.addEventListener(\"click\", (e) =\u003e {\n    e.preventDefault();\n    handleScroll(-1);\n  });\n\n  nextButton.addEventListener(\"click\", (e) =\u003e {\n    e.preventDefault();\n    handleScroll(1);\n  });\n});\n\n// Fix for Radix popper content wrapper used in page context menu\nconst fixRadixPoppers = () =\u003e {\n  // Handle page context menu popper elements that appear in the DOM\n  new MutationObserver((mutations) =\u003e {\n    document\n      .querySelectorAll(\"[data-radix-popper-content-wrapper]\")\n      .forEach((el) =\u003e {\n        // Check if this is the page context menu by looking for specific identifiers\n        const menuContent = el.querySelector(\"[data-radix-menu-content]\");\n        // Only target the specific page context menu with the copy/markdown/ChatGPT/Claude options\n        if (\n          menuContent \u0026\u0026\n          (menuContent.textContent.includes(\"Copy page\") ||\n            menuContent.textContent.includes(\"View as Markdown\") ||\n            menuContent.textContent.includes(\"Open in ChatGPT\") ||\n            menuContent.textContent.includes(\"Open in Claude\"))\n        ) {\n          // Unset the min-width style for the page context menu\n          el.style.minWidth = \"\";\n          el.style.zIndex = \"10\";\n        }\n      });\n  }).observe(document, { childList: true, subtree: true });\n\n  // Also check for existing page context menu elements\n  document\n    .querySelectorAll(\"[data-radix-popper-content-wrapper]\")\n    .forEach((el) =\u003e {\n      const menuContent = el.querySelector(\"[data-radix-menu-content]\");\n      // Only target the specific page context menu with the copy/markdown/ChatGPT/Claude options\n      if (\n        menuContent \u0026\u0026\n        (menuContent.textContent.includes(\"Copy page\") ||\n          menuContent.textContent.includes(\"View as Markdown\") ||\n          menuContent.textContent.includes(\"Open in ChatGPT\") ||\n          menuContent.textContent.includes(\"Open in Claude\"))\n      ) {\n        el.style.minWidth = \"\";\n        el.style.zIndex = \"10\";\n      }\n    });\n};\n// End of Selection\n// Changelog filtering (`/release-notes/*`).\n//\n// The changelog lives in its own nav dropdown, so it keeps the site's navbar\n// and sidebar while staying out of any one product's context. Mintlify renders\n// its own tag panel in the right rail, but that rail is `hidden xl:flex`, so\n// the filters vanish below 1280px. `mode: \"wide\"` drops the rail entirely and\n// this rebuilds the controls in the left sidebar under the year list, which\n// also gets us a search box and a result count.\n//\n// Filters are custom dropdowns rather than \u003cselect\u003e, because a native select\n// popup overlays its own control instead of opening beneath it.\n//\n// Styling lives in styles.css under `#pc-cl-filters`.\n(function () {\n  // Mintlify re-executes this file on client-side navigation, so without this\n  // guard every navigation would add another MutationObserver and another pair\n  // of document listeners, each holding the previous panel alive.\n  if (window.__pcChangelogFilters) return;\n  window.__pcChangelogFilters = true;\n\n  var PRODUCTS = [\"Database\", \"Assistant\", \"Nexus\", \"Marketplace\"];\n  var emptyNote = null;\n\n  // These same tag spans are styled as pills in styles.css (Changelog: \u003cUpdate\u003e tag pills).\n  function tagsOf(update) {\n    return Array.prototype.map\n      .call(update.querySelectorAll('div[class*=\"flex-wrap\"] span'), function (s) {\n        return s.textContent.trim();\n      })\n      .filter(Boolean);\n  }\n\n  function dropdown(label, options) {\n    return (\n      '\u003cdiv class=\"pc-cl-dd\" data-value=\"\"\u003e' +\n      '\u003cbutton type=\"button\" class=\"pc-cl-dd-toggle\" aria-expanded=\"false\"\u003e' +\n      '\u003cspan class=\"pc-cl-dd-label\"\u003e' + label + \"\u003c/span\u003e\" +\n      '\u003csvg class=\"pc-cl-dd-caret\" viewBox=\"0 0 12 12\" aria-hidden=\"true\"\u003e' +\n      '\u003cpath d=\"M2.5 4.5 6 8l3.5-3.5\" fill=\"none\" stroke=\"currentColor\" ' +\n      'stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/\u003e\u003c/svg\u003e' +\n      \"\u003c/button\u003e\" +\n      '\u003cul class=\"pc-cl-dd-menu\" hidden\u003e' +\n      ['\u003cli\u003e\u003cbutton type=\"button\" data-value=\"\"\u003e' + label + \"\u003c/button\u003e\u003c/li\u003e\"]\n        .concat(\n          options.map(function (o) {\n            return '\u003cli\u003e\u003cbutton type=\"button\" data-value=\"' + o + '\"\u003e' + o + \"\u003c/button\u003e\u003c/li\u003e\";\n          })\n        )\n        .join(\"\") +\n      \"\u003c/ul\u003e\u003c/div\u003e\"\n    );\n  }\n\n  // Any of these on an ancestor makes it the containing block for a fixed\n  // descendant. Test that a value is a set string rather than that it isn't\n  // \"none\": a property the browser doesn't support reads back as undefined, and\n  // `undefined !== \"none\"` would match every ancestor. `backdrop-filter` was\n  // prefixed until Safari 18, which is recent enough to still matter.\n  //\n  // `contain` needs the shorthands, not just the keywords it expands to.\n  // Computed style reports `contain: strict` as \"strict\" rather than\n  // \"layout paint size style\", so matching only \"layout\" and \"paint\" misses the\n  // two spellings people actually write.\n  var CONTAINS_LAYOUT = /\\b(strict|content|layout|paint)\\b/;\n\n  function establishesContainingBlock(cs) {\n    function set(v) {\n      return typeof v === \"string\" \u0026\u0026 v !== \"none\" \u0026\u0026 v !== \"\";\n    }\n    return (\n      set(cs.transform) ||\n      set(cs.filter) ||\n      set(cs.perspective) ||\n      set(cs.backdropFilter || cs.webkitBackdropFilter) ||\n      String(cs.willChange).indexOf(\"transform\") !== -1 ||\n      CONTAINS_LAYOUT.test(String(cs.contain))\n    );\n  }\n\n  function closeMenus(except, restoreFocus) {\n    var panel = document.getElementById(\"pc-cl-filters\");\n    if (!panel) return;\n    Array.prototype.forEach.call(panel.querySelectorAll(\".pc-cl-dd\"), function (dd) {\n      if (dd === except) return;\n      var menu = dd.querySelector(\".pc-cl-dd-menu\");\n      var toggle = dd.querySelector(\".pc-cl-dd-toggle\");\n      // Move focus off an option before hiding it, or focus ends up on a\n      // display:none element and falls back to \u003cbody\u003e.\n      if (restoreFocus \u0026\u0026 !menu.hidden \u0026\u0026 menu.contains(document.activeElement)) {\n        toggle.focus();\n      }\n      menu.hidden = true;\n      toggle.setAttribute(\"aria-expanded\", \"false\");\n    });\n  }\n\n  // The panel lives in the sidebar, which scrolls, and a scroll container clips\n  // absolutely positioned descendants whatever their z-index. On a short window\n  // that cut two thirds off the menu. So the menu is fixed to the viewport and\n  // positioned from the toggle's rect here, flipping above the control when\n  // there isn't room below it.\n  function placeMenu(dd) {\n    var toggle = dd.querySelector(\".pc-cl-dd-toggle\");\n    var menu = dd.querySelector(\".pc-cl-dd-menu\");\n    var r = toggle.getBoundingClientRect();\n    var gap = 4;\n    var margin = 8;\n\n    // A transformed ancestor becomes the containing block for a fixed element,\n    // and Mintlify's mobile nav drawer is translated on the X axis. So measure\n    // against whatever the containing block actually is; assuming the viewport\n    // puts the menu several hundred pixels off screen inside the drawer.\n    var origin = { left: 0, top: 0 };\n    var a = menu.parentElement;\n    while (a \u0026\u0026 a !== document.documentElement) {\n      var cs = getComputedStyle(a);\n      if (establishesContainingBlock(cs)) {\n        var ar = a.getBoundingClientRect();\n        origin = { left: ar.left, top: ar.top };\n        break;\n      }\n      a = a.parentElement;\n    }\n\n    var below = window.innerHeight - r.bottom - gap - margin;\n    var above = r.top - gap - margin;\n    var flipUp = below \u003c 160 \u0026\u0026 above \u003e below;\n    // Cap to the room actually available on the chosen side. Flooring this at a\n    // fixed height instead would overflow the margin on a very short window,\n    // where neither side clears the threshold above. Also clamp to the viewport,\n    // since `above` and `below` are measured from the toggle and go nonsensical\n    // when the sidebar is scrolled far enough that the toggle is off screen.\n    var room = Math.max(\n      64,\n      Math.min(flipUp ? above : below, window.innerHeight - margin * 2)\n    );\n\n    menu.style.left = Math.round(r.left - origin.left) + \"px\";\n    menu.style.width = Math.round(r.width) + \"px\";\n    menu.style.maxHeight = Math.round(room) + \"px\";\n    menu.hidden = false;\n    var top = flipUp ? Math.max(margin, r.top - gap - menu.offsetHeight) : r.bottom + gap;\n    menu.style.top = Math.round(top - origin.top) + \"px\";\n  }\n\n  // Removes both halves. The empty-state note lives in the content column rather\n  // than the panel, so it needs clearing on the same paths or every rebuild\n  // leaves another one behind and only the newest is wired to a live closure.\n  // Held by reference rather than found by query, because this runs on the\n  // non-changelog path too, once per mutation batch, on every page of the site.\n  function removePanel() {\n    var stale = document.getElementById(\"pc-cl-filters\");\n    if (stale) stale.remove();\n    if (emptyNote) {\n      emptyNote.remove();\n      emptyNote = null;\n    }\n  }\n\n  function build() {\n    // Cheapest check first. This runs from a MutationObserver watching the whole\n    // document, so every page on the site pays for whatever happens before the\n    // pathname test.\n    if (window.location.pathname.indexOf(\"release-notes/\") === -1) {\n      removePanel();\n      return;\n    }\n\n    var mdx = document.querySelector(\"div.mdx-content\");\n    var updates = mdx ? Array.prototype.slice.call(mdx.querySelectorAll(\".update\")) : [];\n\n    // Tear down before the guards below return. The feature availability page\n    // sits in this same nav dropdown but has no entries, so without this it can\n    // keep whatever panel the last year page built, still wired to that page's\n    // nodes.\n    if (!updates.length) {\n      removePanel();\n      return;\n    }\n\n    // Below `lg` the sidebar is hidden and Mintlify renders the nav again in a\n    // separate drawer, so there are two possible homes for the panel and only\n    // one is on screen at a time. Follow whichever is visible.\n    var host = Array.prototype.filter\n      .call(document.querySelectorAll(\"#navigation-items\"), function (el) {\n        return el.getBoundingClientRect().width \u003e 0;\n      })\n      .shift();\n    if (!host) return;\n\n    // Rebuild only when the panel is actually gone or stale. This runs from a\n    // MutationObserver, and applying a filter mutates the DOM, so rebuilding\n    // eagerly would drop the search box mid-keystroke.\n    var existing = document.getElementById(\"pc-cl-filters\");\n    if (\n      existing \u0026\u0026\n      existing.isConnected \u0026\u0026\n      existing.updates \u0026\u0026\n      existing.updates.length === updates.length \u0026\u0026\n      existing.updates[0] === updates[0]\n    ) {\n      // Move it if the drawer opened or closed since last time; appendChild\n      // relocates the same node, so listeners, the search term, and the\n      // selected filters all survive the move.\n      if (existing.parentElement !== host) host.appendChild(existing);\n      return;\n    }\n    removePanel();\n\n    var seen = {};\n    updates.forEach(function (u) {\n      tagsOf(u).forEach(function (t) {\n        seen[t] = true;\n      });\n    });\n    var tags = Object.keys(seen).sort();\n\n    var panel = document.createElement(\"div\");\n    panel.id = \"pc-cl-filters\";\n    panel.updates = updates;\n    panel.innerHTML =\n      '\u003cp class=\"pc-cl-heading\"\u003eFilter\u003c/p\u003e' +\n      '\u003cinput type=\"search\" class=\"pc-cl-search\" placeholder=\"Search releases\" ' +\n      'aria-label=\"Search releases\"\u003e' +\n      dropdown(\n        \"All products\",\n        tags.filter(function (t) {\n          return PRODUCTS.indexOf(t) !== -1;\n        })\n      ) +\n      dropdown(\n        \"All updates\",\n        tags.filter(function (t) {\n          return PRODUCTS.indexOf(t) === -1;\n        })\n      ) +\n      '\u003cbutton type=\"button\" class=\"pc-cl-clear\" hidden\u003eClear filters\u003c/button\u003e' +\n      '\u003cp class=\"pc-cl-count\" role=\"status\"\u003e\u003c/p\u003e';\n\n    host.appendChild(panel);\n\n    // Sits in the content column, not the panel. At zero matches the column\n    // would otherwise be empty, and on mobile the panel's count is hidden\n    // inside the nav drawer, so there'd be nothing on screen explaining why.\n    var empty = document.createElement(\"p\");\n    empty.className = \"pc-cl-empty\";\n    empty.hidden = true;\n    empty.textContent = \"No releases match these filters.\";\n    updates[0].parentNode.insertBefore(empty, updates[0]);\n    emptyNote = empty;\n\n    var dds = Array.prototype.slice.call(panel.querySelectorAll(\".pc-cl-dd\"));\n    var search = panel.querySelector(\".pc-cl-search\");\n    var clear = panel.querySelector(\".pc-cl-clear\");\n    var count = panel.querySelector(\".pc-cl-count\");\n\n    function apply() {\n      var vals = dds.map(function (dd) {\n        return dd.getAttribute(\"data-value\");\n      });\n      var q = search.value.trim().toLowerCase();\n      var shown = 0;\n\n      updates.forEach(function (u) {\n        var t = tagsOf(u);\n        var ok =\n          vals.every(function (v) {\n            return !v || t.indexOf(v) !== -1;\n          }) \u0026\u0026 (!q || u.textContent.toLowerCase().indexOf(q) !== -1);\n        u.style.display = ok ? \"\" : \"none\";\n        if (ok) shown++;\n      });\n\n      // The count stays in the DOM rather than being toggled with `hidden`: a\n      // live region has to be in the accessibility tree before its text changes\n      // for the change to be announced, so unhiding and filling it in the same\n      // task loses the first announcement. `role=\"status\"` implies\n      // `aria-live=\"polite\"`.\n      var filtering = !!q || vals.some(Boolean);\n      clear.hidden = !filtering;\n      empty.hidden = shown !== 0;\n      count.textContent = !filtering\n        ? \"\"\n        : shown === 0\n          ? \"No matching releases\"\n          : shown === 1\n            ? \"1 release\"\n            : shown + \" releases\";\n    }\n\n    dds.forEach(function (dd) {\n      var toggle = dd.querySelector(\".pc-cl-dd-toggle\");\n      var menu = dd.querySelector(\".pc-cl-dd-menu\");\n      var label = dd.querySelector(\".pc-cl-dd-label\");\n      var placeholder = label.textContent;\n\n      toggle.addEventListener(\"click\", function (e) {\n        e.stopPropagation();\n        var willOpen = menu.hidden;\n        closeMenus(dd);\n        if (willOpen) {\n          placeMenu(dd);\n          toggle.setAttribute(\"aria-expanded\", \"true\");\n        } else {\n          menu.hidden = true;\n          toggle.setAttribute(\"aria-expanded\", \"false\");\n        }\n      });\n\n      menu.addEventListener(\"click\", function (e) {\n        var btn = e.target.closest(\"button[data-value]\");\n        if (!btn) return;\n        var v = btn.getAttribute(\"data-value\");\n        dd.setAttribute(\"data-value\", v);\n        label.textContent = v || placeholder;\n        dd.classList.toggle(\"is-active\", !!v);\n        menu.hidden = true;\n        toggle.setAttribute(\"aria-expanded\", \"false\");\n        apply();\n      });\n    });\n\n    search.addEventListener(\"input\", apply);\n\n    clear.addEventListener(\"click\", function () {\n      search.value = \"\";\n      dds.forEach(function (dd) {\n        dd.setAttribute(\"data-value\", \"\");\n        dd.classList.remove(\"is-active\");\n        dd.querySelector(\".pc-cl-dd-label\").textContent =\n          dd.querySelector(\"button[data-value='']\").textContent;\n      });\n      apply();\n    });\n\n    // The entries can outlive the panel: React discards the panel when it\n    // re-renders the nav without necessarily re-rendering the content column, so\n    // they can still carry the last panel's `display: none`. Reconcile them with\n    // this panel, which starts with nothing selected. Only touches `style`, and\n    // the observer watches `childList`, so this can't re-trigger a build.\n    //\n    // Gated on an entry actually being hidden. A fresh panel already renders as\n    // unfiltered, so calling this unconditionally only added an inline style to\n    // every entry on every rebuild.\n    var carriesStaleFilter = updates.some(function (u) {\n      return u.style.display === \"none\";\n    });\n    if (carriesStaleFilter) apply();\n  }\n\n  build();\n\n  // Mintlify is a single-page app, so rebuild when the content changes.\n  new MutationObserver(build).observe(document, {\n    childList: true,\n    subtree: true,\n  });\n\n  // Registered once, deliberately. React re-renders the sidebar on every SPA\n  // navigation, so build() runs several times per page; registering these inside\n  // it added a pair each time and kept every past panel alive in the closures.\n  document.addEventListener(\"click\", function () {\n    closeMenus();\n  });\n  document.addEventListener(\"keydown\", function (e) {\n    if (e.key === \"Escape\") closeMenus(null, true);\n  });\n\n  // Menus are fixed to the viewport, so scrolling or resizing would leave one\n  // floating away from its control. Capture is needed to see scrolls from any\n  // element, which also means this fires for a menu's own overflow scroll, so\n  // skip those: closing the menu you're scrolling is the case the fixed\n  // positioning was for. A document-level scroll targets `document`, which has\n  // no `closest`.\n  window.addEventListener(\"scroll\", function (e) {\n    if (e.target \u0026\u0026 e.target.closest \u0026\u0026 e.target.closest(\".pc-cl-dd-menu\")) return;\n    closeMenus();\n  }, true);\n  window.addEventListener(\"resize\", function () {\n    closeMenus();\n  });\n})();\n"])</script><script>self.__next_f.push([1,"56:T3359,"])</script><script>self.__next_f.push([1,"const styles = `\n.ikp-ai-chat-wrapper {\n  border-radius: 0.5rem;\n}\n\n.ikp-ai-chat-wrapper \u003e :first-child {\n  border-radius: inherit;\n}\n\n.ikp-ai-chat-input__fieldset {\n  box-shadow: none;\n  border: 1px solid var(--ikp-color-gray-200);\n  background: transparent;\n}\n\n[data-theme=\"dark\"] .ikp-ai-chat-input__fieldset {\n  border-color: var(--ikp-color-gray-dark-700);\n  background: transparent;\n}\n\n/* for the logo version */\n\n.ikp-ai-chat-tagline__container, .ikp-ai-search-tagline__container {\n  align-items: center;\n  position: relative;\n}\n\n.ikp-ai-chat-tagline__text, .ikp-ai-search-tagline__text {\n  visibility: hidden;\n  width: 20px;\n  color: var(--ikp-color-gray-600);\n}\n\n.ikp-ai-chat-tagline__text:before, .ikp-ai-search-tagline__text:before {\n  content: 'By';\n  font-weight: normal;\n  visibility: visible;\n}\n\n.ikp-ai-chat-tagline__container:after, .ikp-ai-search-tagline__container:after {\n  content: '';\n  margin-left: 1.35rem;\n  width: 80px;\n  height: 16px;\n  background: url(\"https://storage.googleapis.com/customer-imgs/pinecone-gray.svg\");\n  background-size: cover;\n  background-position: center;\n  background-repeat: no-repeat;\n}\n\n.ikp-ai-chat-tagline__container:before, .ikp-ai-search-tagline__container:before {\n  content: '\u0026';\n  position: absolute;\n  right: 80px;\n  color: #8d8c87;\n  margin-left: 0.35rem;\n  margin-right: 0.35rem;\n  font-size: 0.875rem;\n  font-weight: 600;\n  transform: translateY(-50%);\n  top: 50%;\n}\n\n[data-theme='dark'] .ikp-ai-chat-tagline__container:before, [data-theme='dark'] .ikp-ai-search-tagline__container:before {\n  color: #ffffff7a;\n}\n\n[data-theme='dark'] .ikp-ai-chat-tagline__container:after, [data-theme='dark'] .ikp-ai-search-tagline__container:after {\n  background: url(\"https://storage.googleapis.com/customer-imgs/pinecone-logo-white.svg\");\n  background-size: cover;\n  background-position: center;\n  background-repeat: no-repeat;\n}\n\n\n.ikp-ai-chat-wrapper, #inkeep-widget-root, .ikp-ai-chat-header, .ikp-ai-chat-footer, .ikp-ai-search-wrapper {\n  background-color: var(--paper) !important;\n}\n\n.ikp-icon {\n  color: var(--brand-blue) !important;\n}\n\n.ikp-markdown-code {\n  background-color: rgba(0, 0, 0, 0.06) !important;\n  color: inherit !important;\n  padding: 0.1em 0.3em !important;\n  border-radius: 3px !important;\n}\n\n[data-theme=\"dark\"] .ikp-markdown-code {\n  background-color: rgba(255, 255, 255, 0.1) !important;\n}\n\n.ikp-ai-search-results__item {\n  border-color: var(--border) !important;\n}\n\n.ikp-ai-chat-footer::before, .ikp-ai-chat-header::after {\n  background: none !important;\n}\n\n.ikp-ai-chat-message-avatar-content \u003e svg {\n  color: var(--text-primary) !important;\n}\n\n.ikp-ai-chat-input__fieldset {\n  border-radius: 0px !important;\n}`\n\n\nconst escalationSchema = {\n  type: \"object\",\n  description: \"Schema describing the answer confidence classification and its explanation.\",\n  \"properties\": {\n    \"explanation\": {\n      \"type\": \"string\",\n      \"description\": \"A brief few word justification of why a specific confidence level was chosen.\"\n    },\n    \"answerConfidence\": {\n      \"type\": \"string\",\n      \"description\": \"A measure of how confidently the AI Assistant completely and directly answered the User Question.\",\n      \"oneOf\": [\n        {\n          \"const\": \"very_confident\",\n          \"description\": \"The AI Assistant provided a complete and direct answer to all parts of the User Question. The answer fully resolved the issue without requiring any further action from the User. Every part of the answer was cited from the information sources. The assistant did not ask for more information or provide options requiring User action. This is the highest Answer Confidence level and should be used sparingly.\"\n        },\n        {\n          \"const\": \"somewhat_confident\",\n          \"description\": \"The AI Assistant provided a complete and direct answer to the User Question, but the answer contained minor caveats or uncertainties. Examples include asking follow-up questions, requesting additional information, suggesting uncertainty, or mentioning potential exceptions.\"\n        },\n        {\n          \"const\": \"not_confident\",\n          \"description\": \"The AI Assistant tried to answer the User Question but did not fully resolve it. The assistant provided options requiring further action from the User, asked for more information, showed uncertainty, suggested contacting support, or provided an indirect or incomplete answer.\"\n        },\n        {\n          \"const\": \"no_sources\",\n          \"description\": \"The AI Assistant did not use or cite any sources from the information sources to answer the User Question.\"\n        },\n        {\n          \"const\": \"other\",\n          \"description\": \"The User Question is unclear or unrelated to the subject matter.\"\n        }\n      ]\n    }\n  },\n  \"required\": [\"answerConfidence\", \"explanation\"],\n  \"additionalProperties\": false\n}\n\nfunction loadScript(url, callback) {\n  const script = document.createElement(\"script\");\n  script.src = url;\n  script.type = \"text/javascript\";\n  script.onload = callback;\n  document.head.appendChild(script);\n}\n\nloadScript(\n  \"https://cdn.jsdelivr.net/npm/@inkeep/cxkit-mintlify@0.5/dist/index.js\",\n  () =\u003e {\n    const supportFormConfig = {\n      heading: \"Contact support\",\n      successView: {\n        heading: \"Submission successful\",\n        message:\n          \"To view your open tickets, go to the Support page on the Pinecone console.\",\n      },\n      fields: [\n        {\n          label: \"Email (associated with Pinecone account)\",\n          name: \"email\",\n          inputType: \"email\",\n          isRequired: true,\n        },\n        {\n          label: \"Subject\",\n          name: \"subject\",\n          inputType: \"text\",\n          isRequired: true,\n        },\n\n        {\n          _type: 'include_chat_session',\n          defaultValue: true,\n          label: 'Include chat history',\n          name: 'include_chat_session',\n        },\n        {\n          label: \"Additional details\",\n          name: \"additional_details\",\n          inputType: \"textarea\",\n        },\n      ],\n      buttons: {\n        submit: {\n          onSubmit: async ({ values, conversation }) =\u003e {\n            const { subject, email, additional_details } = values;\n            const formData = new FormData();\n            formData.append(\"subject\", subject);\n            formData.append(\"email\", email);\n            formData.append(\"additional_details\", additional_details);\n            formData.append(\"chatbot_source\", \"docs\");\n\n            if (conversation) {\n              formData.append(\"chatSession\", JSON.stringify(conversation));\n            }\n\n            try {\n              await fetch(\"https://www.pinecone.io/api/submitTicket\", {\n                method: \"POST\",\n                body: formData,\n                mode: \"no-cors\",\n              });\n              return { success: true };\n            } catch (error) {\n              console.error(\"Error submitting support form:\", error);\n              return { success: false };\n            }\n          },\n        }\n      }\n    };\n    // Customization settings\n    const settings = {\n      baseSettings: {\n        //  PROD key (as recommended by Inkeep)\n        apiKey: \"aaecfcf1b69e03895ee83831eb78d000d6a1c5d14b83d91c\", \n        primaryBrandColor: \"#1c17ff\",\n        theme: {\n          styles: [\n            // {\n            //   key: \"pinecone-stylesheet\",\n            //   type: \"link\",\n            //   value: \"https://www.pinecone.io/customerStylesheets/pinecone.css\",\n            // },\n            {\n              key: \"pinecone-stylesheet\",\n              type: \"style\",\n              value: styles,\n            },\n          ],\n          primaryColors: {\n            textColorOnPrimary: \"white\",\n          },\n          colors: {\n            gray: {\n              50: \"rgb(242 243 251)\",\n              100: \"rgb(236 237 246)\",\n              200: \"rgb(223 225 236)\",\n              300: \"rgb(203 207 220)\",\n              400: \"rgb(152 159 177)\",\n              500: \"rgb(105 111 132)\",\n              600: \"rgb(74 83 104)\",\n              700: \"rgb(54 64 86)\",\n              800: \"rgb(31 40 61)\",\n              900: \"rgb(17 24 46)\",\n            },\n          },\n        },\n\n        transformSource: source =\u003e {\n          const urlPatterns = {\n            docs: 'docs.pinecone.io',\n            learn: 'www.pinecone.io/learn',\n            blog: 'www.pinecone.io/blog',\n            home: 'pinecone.io',\n          }\n\n          const tabConfig = {\n            [urlPatterns.docs]: {\n              getBreadcrumbs: (crumbs) =\u003e ['Docs', ...crumbs.slice(1)],\n              tab: 'Docs',\n            },\n            [urlPatterns.learn]: {\n              getBreadcrumbs: (crumbs) =\u003e ['Learn', ...crumbs.slice(1)],\n              icon: 'IoBookOutline',\n              tab: 'Learn',\n            },\n            [urlPatterns.blog]: {\n              getBreadcrumbs: (crumbs) =\u003e ['Blog', ...crumbs.slice(1)],\n              icon: 'IoPencilOutline',\n              tab: 'Blog',\n            },\n\n            [urlPatterns.home]: {\n              getBreadcrumbs: (crumbs) =\u003e ['Home', ...crumbs.slice(1)],\n              icon: 'IoHomeOutline',\n              tab: 'Home',\n            },\n          };\n\n          // Find matching config based on URL\n          const matchingPattern = Object.keys(tabConfig).find(pattern =\u003e source.url.includes(pattern));\n          const config = matchingPattern ? tabConfig[matchingPattern] : null;\n\n          if (!config) {\n            return source;\n          }\n\n          const breadcrumbs = config.getBreadcrumbs(source.breadcrumbs);\n          const existingTabs = source.tabs ?? [];\n\n          // Check if tab already exists\n          const tabExists = existingTabs.some(existingTab =\u003e\n            typeof existingTab === 'string'\n              ? existingTab === config.tab\n              : Array.isArray(existingTab) \u0026\u0026 existingTab[0] === config.tab,\n          );\n\n          const tabs = tabExists\n            ? existingTabs\n            : [\n              ...existingTabs,\n              [config.tab, { breadcrumbs: breadcrumbs[0] === config.tab ? breadcrumbs.slice(1) : breadcrumbs }],\n            ];\n\n          return {\n            ...source,\n            breadcrumbs,\n            icon: { builtIn: config.icon },\n            tabs,\n          };\n        },\n      },\n      aiChatSettings: {\n        chatSubjectName: \"Pinecone\",\n        aiAssistantAvatar: {\n          light: \"https://storage.googleapis.com/organization-image-assets/pinecone-botAvatarSrcUrl-1707422859519.svg\",\n          dark: \"https://storage.googleapis.com/organization-image-assets/pinecone-botAvatarDarkSrcUrl-1707422858768.svg\",\n        },\n        getHelpOptions: [\n          {\n            name: \"Community\",\n            action: {\n              type: 'open_link',\n              url: \"https://community.pinecone.io/\",\n            },\n            icon: {\n              builtIn: \"IoPeopleOutline\",\n            },\n          },\n          {\n            name: \"Support Center\",\n            action: {\n              type: 'open_link',\n              url: \"https://app.pinecone.io/organizations/-/settings/support\",\n            },\n            icon: {\n              builtIn: \"IoHelpBuoyOutline\",\n            },\n          },\n          {\n            name: \"Create Support Ticket\",\n            action: {\n              type: 'open_form',\n              formSettings: supportFormConfig,\n            },\n            icon: {\n              builtIn: \"info\",\n            },\n          },\n        ],\n        exampleQuestions: [\n          \"What are the benefits of serverless?\",\n          \"How do I do a dense and sparse search?\",\n          \"What are the primary ways to minimize latency?\",\n        ],\n        getTools: () =\u003e {\n          return [\n            {\n              type: 'function',\n              function: {\n                name: 'answerConfidence',\n                description: \"Determine how confident the AI assistant was and whether or not to escalate to humans.\",\n\n                parameters: escalationSchema,\n              },\n              renderMessageButtons: ({ args }) =\u003e {\n                const confidence = args?.answerConfidence;\n                // if the answer confidence is not very confident, show a button that will open the support form\n                if ([\"not_confident\", \"no_sources\", \"other\"].includes(confidence)) {\n                  const action = {\n                    label: 'Contact Support',\n                    icon: { builtIn: 'LuUsers' },\n                    action: {\n                      type: 'open_form',\n                      formSettings: supportFormConfig,\n                    },\n                  }\n                  return [action]\n                }\n                return []\n              },\n            },\n          ]\n        },\n      },\n      searchSettings: {\n        view: 'dual-pane',\n        // If the docs are embedded, open links in a new tab\n        shouldOpenLinksInNewTab: window.self !== window.top,\n        tabs: [[\n          'Docs', { isAlwaysVisible: true }],\n          'Learn',\n          'Blog',\n          'Home',\n          'GitHub',\n        ],\n      },\n    };\n\n\n    // Initialize the UI components\n    Inkeep.ModalSearchAndChat(settings); // Search Bar\n  }\n);"])</script><script>self.__next_f.push([1,"49:[\"$\",\"$L53\",null,{\"customJsDisabled\":false,\"jsFiles\":[{\"_id\":\"67fc3ec4a310f0d378eb5619\",\"filePath\":\"console-iframe.js\",\"subdomain\":\"pinecone\",\"__v\":0,\"content\":\"$54\"},{\"_id\":\"67fc3ec7a310f0d378eb56d6\",\"filePath\":\"script.js\",\"subdomain\":\"pinecone\",\"__v\":0,\"content\":\"$55\"},{\"_id\":\"6971122df45ad9b071c218f8\",\"filePath\":\"inkeep.js\",\"subdomain\":\"pinecone\",\"__v\":0,\"content\":\"$56\"}]}]\n59:Teff,"])</script><script>self.__next_f.push([1,"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,p:`p`,ul:`ul`,..._provideComponents(),...props.components},{Card,CardGroup,Heading,Note}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Pinecone’s APIs let you interact programmatically with your Pinecone account.`}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.a,{href:`/reference/pinecone-sdks#sdk-versions`,children:`SDK versions`}),` are pinned to specific API versions.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`database`,children:`Database`}),`\n`,_jsxs(_components.p,{children:[`Use the Database API to store and query records in `,_jsx(_components.a,{href:`/guides/get-started/quickstart`,children:`Pinecone Database`}),`.`]}),`\n`,_jsx(_components.p,{children:`The following Pinecone SDKs support the Database API:`}),`\n`,_jsxs(CardGroup,{cols:3,children:[_jsx(Card,{title:`CLI`,icon:`terminal`,href:`/reference/cli/overview`}),_jsx(Card,{title:`Python SDK`,icon:`python`,href:`/reference/sdks/python/overview`}),_jsx(Card,{title:`Node.js SDK`,icon:`node-js`,href:`/reference/sdks/node/overview`}),_jsx(Card,{title:`Java SDK`,icon:`java`,href:`/reference/sdks/java/overview`}),_jsx(Card,{title:`Go SDK`,icon:`golang`,href:`/reference/sdks/go/overview`})]}),`\n`,_jsx(Heading,{level:`2`,id:`inference`,children:`Inference`}),`\n`,_jsxs(_components.p,{children:[`Use the Inference API to generate vector embeddings and rerank results using `,_jsx(_components.a,{href:`/guides/index-data/create-an-index#embedding-models`,children:`embedding models`}),` and `,_jsx(_components.a,{href:`/guides/search/rerank-results#reranking-models`,children:`reranking models`}),` hosted on Pinecone’s infrastructure.`]}),`\n`,_jsx(_components.p,{children:`There are two ways to use the Inference API:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`As a standalone service, through the `,_jsx(_components.a,{href:`/reference/api/latest/inference/rerank`,children:`Rerank documents`}),` and `,_jsx(_components.a,{href:`/reference/api/latest/inference/generate-embeddings`,children:`Generate vectors`}),` endpoints.`]}),`\n`,_jsxs(_components.li,{children:[`As an integrated part of database operations, through the `,_jsx(_components.a,{href:`/reference/api/latest/control-plane/create_for_model`,children:`Create an index with integrated embedding`}),`, `,_jsx(_components.a,{href:`/reference/api/latest/data-plane/upsert_records`,children:`Upsert text`}),`, and `,_jsx(_components.a,{href:`/reference/api/latest/data-plane/search_records`,children:`Search with text`}),` endpoints.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`The following Pinecone SDKs support using the Inference API:`}),`\n`,_jsxs(CardGroup,{cols:3,children:[_jsx(Card,{title:`Python SDK`,icon:`python`,href:`/reference/sdks/python/overview`}),_jsx(Card,{title:`Node.js SDK`,icon:`node-js`,href:`/reference/sdks/node/overview`}),_jsx(Card,{title:`Java SDK`,icon:`java`,href:`/reference/sdks/java/overview`}),_jsx(Card,{title:`Go SDK`,icon:`golang`,href:`/reference/sdks/go/overview`})]})]})}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.\")}"])</script><script>self.__next_f.push([1,"4a:[\"$\",\"$L57\",null,{\"slug\":\"reference/api/introduction\",\"pageMetadata\":\"$30:props:pageMetadata\",\"theme\":\"mint\",\"children\":[\"$\",\"$L58\",null,{\"mdxSource\":{\"compiledSource\":\"$59\",\"frontmatter\":{},\"scope\":{\"config\":{},\"pageMetadata\":{\"title\":\"API reference\",\"description\":\"Pinecone REST API: Pinecone's APIs let you interact programmatically with your Pinecone account.\",\"sidebarTitle\":\"Introduction\",\"href\":\"/reference/api/introduction\"}}},\"mdxSourceWithNoJs\":\"$undefined\",\"displayDomain\":\"docs.pinecone.io\"}]}]\n"])</script><script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"ec498eeaf978486e97df12e6f8e98ec0","spa":2}' crossorigin="anonymous"></script>
</body></html>