[{"data":1,"prerenderedAt":539},["ShallowReactive",2],{"navigation_docs":3,"-features-data-integrations":98,"-features-data-integrations-surround":534},[4,26,77],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":25},"Getting Started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,15,20],{"title":11,"path":12,"stem":13,"icon":14},"Overview","\u002Fgetting-started\u002Foverview","1.getting-started\u002F1.overview","i-lucide-info",{"title":16,"path":17,"stem":18,"icon":19},"Platform Navigation","\u002Fgetting-started\u002Fplatform-navigation","1.getting-started\u002F2.platform-navigation","i-lucide-compass",{"title":21,"path":22,"stem":23,"icon":24},"Quickstart","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F3.quickstart","i-lucide-play-circle",false,{"title":27,"icon":28,"path":29,"stem":30,"children":31,"page":25},"Features","i-lucide-star","\u002Ffeatures","2.features",[32,37,42,47,52,57,62,67,72],{"title":33,"path":34,"stem":35,"icon":36},"Feature Overview","\u002Ffeatures\u002Foverview","2.features\u002F1.overview","i-lucide-list",{"title":38,"path":39,"stem":40,"icon":41},"Company Setup","\u002Ffeatures\u002Fcompany-setup","2.features\u002F2.company-setup","i-lucide-building-2",{"title":43,"path":44,"stem":45,"icon":46},"Applications","\u002Ffeatures\u002Fapplications","2.features\u002F3.applications","i-lucide-box",{"title":48,"path":49,"stem":50,"icon":51},"Observability","\u002Ffeatures\u002Fobservability","2.features\u002F4.observability","i-lucide-activity",{"title":53,"path":54,"stem":55,"icon":56},"Guardrails","\u002Ffeatures\u002Fguardrails","2.features\u002F5.guardrails","i-lucide-shield-alert",{"title":58,"path":59,"stem":60,"icon":61},"Data Integrations","\u002Ffeatures\u002Fdata-integrations","2.features\u002F6.data-integrations","i-lucide-database",{"title":63,"path":64,"stem":65,"icon":66},"Models and Routing","\u002Ffeatures\u002Fmodels-and-routing","2.features\u002F7.models-and-routing","i-lucide-git-branch",{"title":68,"path":69,"stem":70,"icon":71},"Governance","\u002Ffeatures\u002Fgovernance","2.features\u002F8.governance","i-lucide-shield-check",{"title":73,"path":74,"stem":75,"icon":76},"Tools","\u002Ffeatures\u002Ftools","2.features\u002F9.tools","i-lucide-globe",{"title":78,"icon":79,"path":80,"stem":81,"children":82,"page":25},"Integrations","i-lucide-plug","\u002Fintegrations","3.integrations",[83,88,93],{"title":84,"path":85,"stem":86,"icon":87},"Using the API","\u002Fintegrations\u002Fapi-usage","3.integrations\u002F3.api-usage","i-lucide-terminal-square",{"title":89,"path":90,"stem":91,"icon":92},"API Keys","\u002Fintegrations\u002Fapi-keys","3.integrations\u002Fapi-keys","i-lucide-key-round",{"title":94,"path":95,"stem":96,"icon":97},"Providers","\u002Fintegrations\u002Fproviders","3.integrations\u002Fproviders","i-lucide-cpu",{"id":99,"title":58,"body":100,"description":527,"extension":528,"links":529,"meta":530,"navigation":531,"path":59,"seo":532,"stem":60,"__hash__":533},"docs\u002F2.features\u002F6.data-integrations.md",{"type":101,"value":102,"toc":517},"minimark",[103,107,112,115,118,122,130,134,141,144,166,169,172,176,182,185,215,218,223,227,230,236,266,270,273,281,284,287,291,297,301,305,311,444,447,510,513],[104,105,106],"p",{},"Data Integrations let applications retrieve relevant content from organization documents and use it as context during request processing.",[108,109,111],"h2",{"id":110},"vector-search","Vector Search",[104,113,114],{},"Vector search is the retrieval mechanism behind Data Integrations, commonly known as retrieval augmented generation (RAG). When a request qualifies, Optiak searches the application's enabled data sources for the passages most relevant to the request and adds them to the model's context before generating a response, instead of sending entire documents with every request.",[104,116,117],{},"Vector search must be enabled at the organization level before any application can use it. Turning it off stops retrieval for every application, regardless of each application's own configuration.",[108,119,121],{"id":120},"data-sources","Data Sources",[104,123,124,125,129],{},"Optiak uses the term ",[126,127,128],"strong",{},"data source"," for a named collection of uploaded documents. Use separate data sources when different applications, products, customers, teams, or environments should use different context - for example, product docs, support policies, or customer-specific content.",[108,131,133],{"id":132},"organization-setup","Organization Setup",[104,135,136,137,140],{},"Admins manage organization data sources in ",[126,138,139],{},"Company Setup -> Data Integrations",".",[104,142,143],{},"From there, admins can:",[145,146,147,151,154,157,160,163],"ul",{},[148,149,150],"li",{},"Enable or disable vector search for the organization.",[148,152,153],{},"Create multiple named data sources.",[148,155,156],{},"Upload PDF, Markdown, plain text, Word (.docx), and PowerPoint (.pptx) files.",[148,158,159],{},"Review files in each data source.",[148,161,162],{},"Delete files or data sources when they should no longer be used.",[148,164,165],{},"Toggle which data sources are available to applications.",[104,167,168],{},"If vector search is disabled at the organization level, applications cannot enable it.",[104,170,171],{},"If a data source is disabled at the organization level, it is not available for application selection. If a file or data source is deleted, it is removed from future retrieval.",[108,173,175],{"id":174},"application-setup","Application Setup",[104,177,178,179,140],{},"Applications configure vector search in ",[126,180,181],{},"Modules -> Data Integrations",[104,183,184],{},"Application modes:",[145,186,187,197,203,209],{},[148,188,189,192,193,140],{},[126,190,191],{},"Per request"," - Vector search is off by default; requests must opt in with ",[194,195,196],"code",{},"vector_search_enabled: true",[148,198,199,202],{},[126,200,201],{},"Always on"," - Vector search runs for every supported request to the application.",[148,204,205,208],{},[126,206,207],{},"LLM Decides"," - Data retrieval is exposed to the model as a tool it can call; the model decides whether and how to use it.",[148,210,211,214],{},[126,212,213],{},"Disabled"," - Vector search does not run for the application.",[104,216,217],{},"Applications can also choose which organization-enabled data sources they are allowed to search.",[104,219,220,221,140],{},"If no organization data sources exist, the application shows that vector search cannot be configured until an admin creates one in ",[126,222,139],{},[108,224,226],{"id":225},"connections","Connections",[104,228,229],{},"Instead of uploading files manually, admins can connect an external account so files sync into a data source automatically.",[104,231,232,233,235],{},"From ",[126,234,139],{},", admins can:",[145,237,238,241,244,263],{},[148,239,240],{},"Connect a Google Drive account through the Nango sign-in flow.",[148,242,243],{},"Choose the Drive folder to sync from.",[148,245,246,247,250,251,254,255,258,259,262],{},"Trigger a sync on demand and see its status (",[194,248,249],{},"pending"," right after connecting, then ",[194,252,253],{},"active",", ",[194,256,257],{},"syncing",", or ",[194,260,261],{},"error",") and last sync time.",[148,264,265],{},"Disconnect the account, which stops future syncing.",[108,267,269],{"id":268},"multiple-data-sources","Multiple Data Sources",[104,271,272],{},"Optiak supports multiple data sources. A data source is searchable by an application only when it is enabled at both levels:",[145,274,275,278],{},[148,276,277],{},"The organization makes the data source available.",[148,279,280],{},"The application enables the data source.",[104,282,283],{},"This lets one organization maintain separate sources such as product docs, support policies, customer-specific content, or test data while keeping each application limited to the context it should use.",[104,285,286],{},"When vector search is disabled for an application, all of that application's selected data sources are cleared.",[108,288,290],{"id":289},"llm-decides-mode","LLM Decides Mode",[104,292,293,294,296],{},"In ",[126,295,207],{}," mode, data retrieval is not run ahead of the request. Instead, Optiak exposes it to the model as a callable tool alongside the request's own function definitions, and the model decides at inference time whether it needs business data. If the model calls it, Optiak searches the application's allowed data sources, feeds the results back to the model, and lets the model decide whether to call it again (up to a bounded number of turns) or finish its response.",[298,299,300],"callout",{},"LLM Decides Data Retrieval requires a model that supports tool calling and at least one allowed data source. Streaming requests do not run the LLM Decides tool loop.",[108,302,304],{"id":303},"request-level-opt-in","Request-Level Opt-In",[104,306,307,308,310],{},"When an application is set to ",[126,309,191],{},", callers can opt in through the public Gateway API:",[312,313,318],"pre",{"className":314,"code":315,"language":316,"meta":317,"style":317},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"model\": \"smart\",\n  \"messages\": [\n    { \"role\": \"user\", \"content\": \"What changed in our uploaded policy?\" }\n  ],\n  \"vector_search_enabled\": true\n}\n","json","",[194,319,320,329,357,372,417,423,438],{"__ignoreMap":317},[321,322,325],"span",{"class":323,"line":324},"line",1,[321,326,328],{"class":327},"sMK4o","{\n",[321,330,332,335,339,342,345,348,352,354],{"class":323,"line":331},2,[321,333,334],{"class":327},"  \"",[321,336,338],{"class":337},"spNyl","model",[321,340,341],{"class":327},"\"",[321,343,344],{"class":327},":",[321,346,347],{"class":327}," \"",[321,349,351],{"class":350},"sfazB","smart",[321,353,341],{"class":327},[321,355,356],{"class":327},",\n",[321,358,360,362,365,367,369],{"class":323,"line":359},3,[321,361,334],{"class":327},[321,363,364],{"class":337},"messages",[321,366,341],{"class":327},[321,368,344],{"class":327},[321,370,371],{"class":327}," [\n",[321,373,375,378,380,384,386,388,390,393,395,398,400,403,405,407,409,412,414],{"class":323,"line":374},4,[321,376,377],{"class":327},"    {",[321,379,347],{"class":327},[321,381,383],{"class":382},"sBMFI","role",[321,385,341],{"class":327},[321,387,344],{"class":327},[321,389,347],{"class":327},[321,391,392],{"class":350},"user",[321,394,341],{"class":327},[321,396,397],{"class":327},",",[321,399,347],{"class":327},[321,401,402],{"class":382},"content",[321,404,341],{"class":327},[321,406,344],{"class":327},[321,408,347],{"class":327},[321,410,411],{"class":350},"What changed in our uploaded policy?",[321,413,341],{"class":327},[321,415,416],{"class":327}," }\n",[321,418,420],{"class":323,"line":419},5,[321,421,422],{"class":327},"  ],\n",[321,424,426,428,431,433,435],{"class":323,"line":425},6,[321,427,334],{"class":327},[321,429,430],{"class":337},"vector_search_enabled",[321,432,341],{"class":327},[321,434,344],{"class":327},[321,436,437],{"class":327}," true\n",[321,439,441],{"class":323,"line":440},7,[321,442,443],{"class":327},"}\n",[104,445,446],{},"The same flag is available on the Responses endpoint:",[312,448,450],{"className":314,"code":449,"language":316,"meta":317,"style":317},"{\n  \"model\": \"smart\",\n  \"input\": \"Answer using the uploaded product documentation.\",\n  \"vector_search_enabled\": true\n}\n",[194,451,452,456,474,494,506],{"__ignoreMap":317},[321,453,454],{"class":323,"line":324},[321,455,328],{"class":327},[321,457,458,460,462,464,466,468,470,472],{"class":323,"line":331},[321,459,334],{"class":327},[321,461,338],{"class":337},[321,463,341],{"class":327},[321,465,344],{"class":327},[321,467,347],{"class":327},[321,469,351],{"class":350},[321,471,341],{"class":327},[321,473,356],{"class":327},[321,475,476,478,481,483,485,487,490,492],{"class":323,"line":359},[321,477,334],{"class":327},[321,479,480],{"class":337},"input",[321,482,341],{"class":327},[321,484,344],{"class":327},[321,486,347],{"class":327},[321,488,489],{"class":350},"Answer using the uploaded product documentation.",[321,491,341],{"class":327},[321,493,356],{"class":327},[321,495,496,498,500,502,504],{"class":323,"line":374},[321,497,334],{"class":327},[321,499,430],{"class":337},[321,501,341],{"class":327},[321,503,344],{"class":327},[321,505,437],{"class":327},[321,507,508],{"class":323,"line":419},[321,509,443],{"class":327},[104,511,512],{},"Request-level flags cannot override organization or application blocks. If vector search is disabled, no request can force it on.",[514,515,516],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":317,"searchDepth":331,"depth":331,"links":518},[519,520,521,522,523,524,525,526],{"id":110,"depth":331,"text":111},{"id":120,"depth":331,"text":121},{"id":132,"depth":331,"text":133},{"id":174,"depth":331,"text":175},{"id":225,"depth":331,"text":226},{"id":268,"depth":331,"text":269},{"id":289,"depth":331,"text":290},{"id":303,"depth":331,"text":304},"Use organization data sources for vector search.","md",null,{},{"icon":61},{"title":58,"description":527},"q4WbN21ZEnF9PK8h6mBKBZNaHs42SZvbPJRWD6QjYIw",[535,537],{"title":53,"path":54,"stem":55,"description":536,"icon":56,"children":-1},"Configure safety checks for application traffic.",{"title":63,"path":64,"stem":65,"description":538,"icon":66,"children":-1},"Control which models applications can use and how requests are routed.",1789640937839]