Just like other services in Collate (Database, Pipelines, Dashboards, Messaging, and so on), it’s possible to create a Custom Drive Connector to bring metadata from a storage or file system-like service into Collate.This guide walks through how to implement your own Custom Drive Connector by extending the ingestion framework. The implementation pattern follows other service types closely, making the transition smooth for anyone familiar with the ecosystem.
You need to yield CreateEntityRequest objects wrapped in an Either type. This pattern handles both successful entity creation and errors.Import necessary types:
To run your Custom Drive Connector inside Docker (for example, with Airflow or directly from the UI), the ingestion image must include your module.Dockerfile example:
This ensures that your code is baked into the ingestion container. Always align the ingestion image tag with the Collate version that is running your server/UI.
The Metadata Agent extracts directories, files, spreadsheets, and other structural metadata from your source and keeps your Collate catalog in sync. It powers discovery, lineage, and governance across your data assets.When you click Create & Deploy, Collate automatically deploys a Metadata Agent for this service and triggers the first ingestion run. View its status and run history from the Agents tab on the service detail page.To configure the additional Metadata Agent and schedule ingestion, follow these steps:
In the left navigation, click Connections and select your service.
Click the Agents tab.
Click Add Agent and select Metadata from the dropdown.For some services, the dropdown is not available and clicking Add Agent takes you directly to the agent configuration page.
On the Configure Ingestion page, do the following and click Next.
Name this Ingestion: Enter a unique, recognizable name for this ingestion pipeline.
Agent Setup: Configure the core parameters for this agent. The following fields are available:
Field
Default
Description
Number of Threads
1
Number of threads to use for parallel drive ingestion.
Mark Deleted Directories
On
Soft-delete directories in Collate when they are removed from the source. Associated entities like files, spreadsheets, worksheets, and lineage are also deleted.
Mark Deleted Files
On
Soft-delete files in Collate when they are removed from the source. Associated entities like lineage are also deleted.
Mark Deleted Spreadsheets
On
Soft-delete spreadsheets in Collate when they are removed from the source. Associated entities like worksheets and lineage are also deleted.
Mark Deleted Worksheets
On
Soft-delete worksheets in Collate when they are removed from the source. Associated entities like lineage are also deleted.
Include Directories
On
Fetch directory metadata. Turn off to skip directories entirely.
Include Files
On
Fetch file metadata. Turn off to skip files entirely.
Include Spreadsheets
On
Fetch spreadsheet metadata. Turn off to skip spreadsheets entirely.
Include Worksheets
On
Fetch worksheet metadata. Turn off to skip worksheets entirely.
Filter Patterns: Apply include or exclude rules to scope which directories, files, spreadsheets, and worksheets this agent ingests. Use FQN for filtering to apply regex on fully qualified names (e.g. service_name.directory_name.file_name) instead of raw names. These follow the same filter options described in Step 5.
Scope & Behaviour: Control what metadata to include and how to handle deletions. Toggle each option on or off based on your needs:
Toggle
Default
Description
Enable Debug Log
Off
Sets the ingestion log level to DEBUG. Useful for troubleshooting.
Include Tags
On
Ingest tags from the source.
Include Owners
Off
Assign owners from the source when the owner email matches a Collate user. Does not overwrite an existing owner.
Override Metadata
Off
When on, source values overwrite existing descriptions, tags, owners, and display names in Collate. A description or display name that the source doesn’t send never replaces an existing value. If the connector supplies custom properties, the values it sends are merged over the existing ones: properties the source sends overwrite, and properties it doesn’t send are kept. When off, Collate only updates fields that have no existing value.
On the Schedule Interval page, set when the agent runs:
Schedule: Choose a preset interval (Hourly, Daily, Weekly, Monthly) or enter a custom cron expression.
On-Demand: No automatic schedule; trigger the agent manually when needed.
Click Add to deploy the agent.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Collate Documentation","colors":{"primary":"#1570EF","light":"#1570EF","dark":"#1570EF"},"logo":"https://mintcdn.com/collatedocs/yvgGxaeRR5RwtQo6/public/images/icons/collate-logo.svg?fit=max\u0026auto=format\u0026n=yvgGxaeRR5RwtQo6\u0026q=85\u0026s=59d7983952a91cd53138369f2e21a5ac","favicon":"https://mintcdn.com/collatedocs/yvgGxaeRR5RwtQo6/public/images/icons/collate-monogram.svg?fit=max\u0026auto=format\u0026n=yvgGxaeRR5RwtQo6\u0026q=85\u0026s=a8507d257fb5cbd5ac2366790c55d8f7","api":{"mdx":{"auth":{"method":"bearer"},"server":"https://sandbox.open-metadata.org/api"}},"appearance":{"default":"light","strict":true},"navbar":{"links":[{"icon":"Headphones","href":"mailto:support@getcollate.io","label":"Support"},{"icon":"Book","href":"https://www.getcollate.io/blog","label":"Blogs"},{"href":"https://cloud.getcollate.io/","label":"Free Trial"}]},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/collateinc","x":"https://twitter.com/collatedata","youtube":"https://www.youtube.com/@CollateData"},"links":[{"items":[{"label":"Terms of Service","href":"https://www.getcollate.io/terms"},{"label":"Privacy Policy","href":"https://www.getcollate.io/privacypolicy"},{"label":"Trust Center","href":"https://trustcenter.getcollate.io/"},{"label":"Contact Us","href":"https://www.getcollate.io/contact-sales"}]}]},"seo":{"metatags":{"robots":"index,follow"}},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"ga4":{"measurementId":"GTM-554C968W"}},"interaction":{"drilldown":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"collatedocs","hasAudioNarration":false,"actualSubdomain":"collatedocs","customDomains":["docs.getcollate.io"],"gitSource":{"type":"github","owner":"open-metadata","repo":"docs-collate","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aedfc9e2e4164cdd9d1c1bb","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"Connectors","count":1744},{"language":"default","tag":"SDKs \u0026 APIs","count":626},{"language":"default","tag":"Database","count":414},{"language":"default","tag":"Data Governance","count":329},{"language":"default","tag":"Data Assets","count":316},{"language":"default","tag":"SDKs and APIs","count":313},{"language":"default","tag":"Collate APIs","count":285},{"language":"default","tag":"Data Quality \u0026 Observability","count":237},{"language":"default","tag":"Pipeline","count":164},{"language":"default","tag":"Guide for Data Users","count":160}]},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":true,"enableAskAiSearchBar":false,"deflection":{"enabled":true,"email":"support@getcollate.io","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"starterQuestions":[{"_id":"694587850a00f222af972838","deploymentId":"694583b20a00f222af96d417","questionText":"How to set up SSO?","status":"active","generatedBy":"manual","createdAt":"2025-12-19T17:12:37.423Z","updatedAt":"2025-12-19T17:12:37.423Z","__v":0},{"_id":"6945876e0a00f222af97266a","deploymentId":"694583b20a00f222af96d417","questionText":"How to use AskCollate?","status":"active","generatedBy":"manual","createdAt":"2025-12-19T17:12:14.884Z","updatedAt":"2025-12-19T17:12:14.884Z","__v":0},{"_id":"694587660a00f222af9725a6","deploymentId":"694583b20a00f222af96d417","questionText":"How to set up Snowflake?","status":"active","generatedBy":"manual","createdAt":"2025-12-19T17:12:06.575Z","updatedAt":"2025-12-19T17:12:06.575Z","__v":0}],"googleFontsInlined":false},"customCss":[{"filePath":"public/globals.css","content":"/* latin-ext */\n@font-face {\n font-family: 'DM Sans';\n font-style: italic;\n font-weight: 100 1000;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmsans/v17/rP2Fp2ywxg089UriCZa4ET-DNl0.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'DM Sans';\n font-style: italic;\n font-weight: 100 1000;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmsans/v17/rP2Fp2ywxg089UriCZa4Hz-D.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* latin-ext */\n@font-face {\n font-family: 'DM Sans';\n font-style: normal;\n font-weight: 100 1000;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmsans/v17/rP2Hp2ywxg089UriCZ2IHSeH.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'DM Sans';\n font-style: normal;\n font-weight: 100 1000;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/dmsans/v17/rP2Hp2ywxg089UriCZOIHQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n@tailwind base;@tailwind components;@tailwind utilities;:root{--top-nav-height: 70px;--main-nav-height: 42px;--side-nav-width: 288px;--side-nav-collapsed-width: 42px;--select-dropdown-default-height: 28px;--select-dropdown-default-width: 165px;--side-nav-width: min(20%, 300px);--api-side-nav-width: max(14%, 220px);--content-div-width: min(17%, 250px);--default-border-color: #dce3ec;--primary-color: #5469d4;--primary-shadow-color: #5469d433;--primary-background-color: rgba(84, 105, 212, 0.05);--select-background-color: #f4f7ff;--icon-background-color: #f1f3fe;--select-border-color: #e9eefc;--homepage-container-px: 130px;--default-text-color: rgb(60, 66, 87);--gray-text-color: rgba(60, 66, 87, 0.7);--white-color: #fff;--top-nav-color: #f7fafc;--code-background-color: #212d63;--code-gray-background-color: rgb(79, 86, 107);--code-light-background-color: #f7fafc;--code-toolbar-color: #212d63;--code-gray-toolbar-color: #3c4257;--code-light-toolbar-color: #ffffff;--code-light-border-color: #e3e8ee;--code-filename-color: #a4cdfe;--code-gray-filename-color: #dadce1;--code-light-filename-color: #f7fafc;--code-block-text-color: #f5fbff;--purple-bg-color: #7147e81a;--green-bg-color: #0084761a;--pink-bg-color: #b02aac1a;--purple-icon-color: #7147e8;--green-icon-color: #008376;--pink-icon-color: #b02aac;--beta-label-color: #0950C5;--beta-label-bg-color: #E4EEFF;--prod-label-color: #81C562;--prod-label-bg-color: #EEFBE7;--stable-label-color: #1890ff;--stable-label-bg-color: #e6f7ff;--connector-icon-bg-color: #F8F8F8;--green-tag-color: #43A047;--green-tag-bg-color: #43A0471A;--orange-tag-color: #FF7C50;--orange-tag-bg-color: #FF7C501A}body{font-family:\"DM Sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica,\n Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:var(--default-text-color);margin:0;font-size:16px;font-weight:400;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-weight:600;font-family:\"DM Sans\"}b,strong{font-weight:600}p{line-height:1.5em;margin:8px 0px 0px 0px;color:#414651}h1{font-size:36px;line-height:44px;color:#222244!important;margin-bottom:10px!important}h2{font-size:30px;line-height:38px}h3{font-size:24px;line-height:32px}h4{font-size:20px;line-height:30px}h5{font-size:18px;line-height:28px}h6{font-size:16px;line-height:24px}a{color:var(--primary-color);font-weight:500}li::marker{color:var(--primary-color)}ol{list-style:decimal;margin-top:16px;margin-left:16px}ol li::marker{color:var(--default-text-color)}li>ul{margin-top:0px;margin-left:16px}pre{border-radius:6px;background-color:var(--code-background-color)}pre,code{-ms-overflow-style:none;scrollbar-width:none}*::-webkit-scrollbar{display:none}*{scrollbar-width:none}pre::-webkit-scrollbar,code::-webkit-scrollbar{display:none}a.link{color:#004CD3;font-weight:600;text-decoration:none;border:none}a.link:hover{text-decoration:underline}.connector-tab{display:block;width:100%;text-align:start;padding:8px;cursor:pointer;border-radius:4px}.connector-tab:hover{background-color:var(--primary-background-color)}.active-connector{border:0.5px solid var(--select-border-color);background-color:var(--primary-background-color);color:var(--primary-color);font-weight:600}.divider{color:var(--default-border-color)}.icons{height:2rem;width:2rem}.cloud-button{border-radius:1rem;border:1px solid rgb(194, 128, 255);background-color:rgb(194, 128, 255)}.search-box{height:2.25rem;width:550px;border:1px solid #f4f4f4;border-radius:0.5rem;background-color:#f4f4f4;padding:4px 20px;color:#9e9d9d;display:flex;align-items:center}.search{width:90%;height:90%;border:none;background-color:#f4f4f4;outline:none}.overview-container{width:100vw;display:flex;flex-direction:column;justify-content:center;padding:50px 10%;background:#f4f7ff}.overview-heading{font-weight:700;font-size:22px;line-height:42px;margin-bottom:12px}.container-heading{font-weight:700;font-size:22px;line-height:42px;margin-bottom:40px}.cards-container{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}.blogs-container{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}.homepage-containers{padding:0px 10%;margin:80px 0px 0px 0px}#myUL{list-style-type:none;margin:0;padding:0}.nested{display:none}.active{display:block;color:var(--primary-color)}.DownArrow{display:none}.RightArrow{display:block}.highlightedCode{background-color:#1a2652}.page-404{height:calc(100vh - var(--top-nav-height) - var(--main-nav-height))}.content{flex-grow:0;flex-shrink:1}.non-collapsed-content{width:calc(100vw - var(--side-nav-width))}.collapsed-content{width:calc(100vw - var(--side-nav-collapsed-width))}.card-icon-container{padding:8px;width:fit-content;border-radius:10px}.card-purple-icon{background-color:var(--purple-bg-color);border:1px solid #7147e8}.card-green-icon{background-color:var(--green-bg-color);border:1px solid #008376}.card-pink-icon{background-color:var(--pink-bg-color);border:1px solid #b02aac}.nav-bar-container{position:sticky;top:0px;z-index:100}.min-width-600{min-width:600px}@media (max-width: 1240px){.blogs-container{grid-template-columns:1fr 1fr}}@media (max-width: 900px){.cards-container{grid-template-columns:1fr 1fr}.blogs-container{grid-template-columns:1fr}.overview-container{padding:20px 60px;width:100%}.homepage-containers{padding:20px 60px;margin:32px 0px 0px 0px}}@media (max-width: 600px){.cards-container{grid-template-columns:1fr}.non-collapsed-content{display:none}.collapsed-content{width:calc(100% - 41px)}}#header h1,#header p{display:none!important}.mdx-content{margin-top:0px!important}.api-page-container{display:grid;grid-template-columns:var(--api-side-nav-width) calc(100vw - var(--api-side-nav-width))}.hash-link{overflow:hidden;width:0px;height:0px;display:block;visibility:hidden;text-decoration:none;pointer-events:none;margin-top:-300px!important;padding-top:300px}.cookie-modal{position:fixed;bottom:0;background-color:#F8FBFC;z-index:20;padding:1rem;box-shadow:var(--shadow-card);transform:translateY(100%);transition:transform 1.2s ease-in-out, visibility 1.2s ease-in-out;visibility:hidden;border:1px solid rgb(201, 196, 196);border-radius:10px}.cookie-modal p{color:#292929;font-weight:300}.cookie-modal-buttons{margin-top:2rem;display:flex;gap:0.75rem;justify-content:flex-end}.button{border-radius:1.5rem;padding:0.5rem 2rem;font-size:0.875rem;cursor:pointer;border:none}.button-accept{background-color:#7147E8;color:white}.button-reject{background-color:white;color:#7147E8;border:1px solid #7147E8}@media (min-width: 640px){.cookie-modal{margin:1.25rem;max-width:36rem}}@media (min-width: 1024px){.cookie-modal{max-width:48rem}}.cookie-modal.visible{transform:translateY(0);visibility:visible}.brand-docs-banner{font-weight:500;padding:0px 8px;border-radius:12px;margin-top:16px;width:fit-content}.breadcrumb-item:first-child{display:none}.breadcrumb-item:last-of-type a{color:#414651;pointer-events:none;cursor:text;text-decoration:none}#page-loader{position:fixed;top:0;left:0;width:0%;height:3px;background:linear-gradient(90deg, #3b82f6, #8b5cf6);z-index:9999;transition:width 0.3s ease}[data-component-part=\"version-select-trigger\"]{background:#EFF8FF!important;border:1.5px solid #B2DDFF!important;border-radius:100px!important;overflow:visible!important;padding:4px 14px!important;height:32px!important;font-weight:600!important;font-size:13px!important}[data-component-part=\"version-select-trigger\"]:hover{background:#E0F2FE!important;border-color:#7DD3FC!important}[data-component-part=\"version-select-trigger\"][data-state=\"open\"],[data-component-part=\"version-select-trigger\"][aria-expanded=\"true\"]{background:#DBEAFE!important;border-color:#93C5FD!important}[data-component-part=\"version-select-trigger\"] span{color:#026AA2!important;font-weight:600!important;max-width:none!important}[data-component-part=\"version-select-item\"]{border-radius:8px!important;font-size:13px!important;font-weight:500!important;padding:6px 12px!important;cursor:pointer!important}[data-component-part=\"version-select-item\"][data-state=\"checked\"],[data-component-part=\"version-select-item\"][aria-checked=\"true\"]{color:#1570EF!important;background:#EFF8FF!important;font-weight:600!important}#navbar .border-b{border:none}#navbar .nav-tabs{background-color:#FAFAFA;width:max-content;border:1px solid #EAECF5;border-radius:100px;margin:24px auto 4px;column-gap:16px;max-width:100%;overflow-x:auto;display:flex;flex-wrap:nowrap;justify-content:flex-start}#navbar .nav-tabs .nav-tabs-item{padding:12px 24px;font-size:16px;white-space:nowrap;flex-shrink:0;color:#414651;font-weight:500}@media (max-width: 1440px){#navbar .nav-tabs{column-gap:4px}#navbar .nav-tabs .nav-tabs-item{padding:10px 16px;font-size:15px}}#navbar .nav-tabs a[href^=\"/how-to-guides/\"]{display:none!important}#navbar .nav-tabs a[href^=\"/ai-2-0/how-to-guides/\"]{display:none!important}#navbar .nav-tabs .nav-tabs-item:hover{color:#181D27;text-decoration:none}#navbar .nav-tabs .nav-tabs-item .absolute{display:none!important}#navbar .nav-tabs .nav-tabs-item[data-active=\"true\"]{color:#1570EF;background-color:#EFF8FF;border:1.5px solid #B2DDFF;border-radius:100px;font-weight:600}#navbar .nav-tabs:has(a[href^=\"/how-to-guides/\"][data-active=\"true\"]) a.nav-tabs-item[href=\"/how-to-guides\"]{color:#1570EF;background-color:#EFF8FF;border:1.5px solid #B2DDFF;border-radius:100px;font-weight:600}body:has(.homepage-container) #navbar .nav-tabs .nav-tabs-item[data-active=\"true\"]:not([href=\"/\"]):not([href=\"/ai-2-0\"]){color:#414651;background-color:transparent;border:1.5px solid transparent;border-radius:0;font-weight:500;text-shadow:none}body:has(.homepage-container) #navbar .nav-tabs .nav-tabs-item[href=\"/\"],body:has(.homepage-container) #navbar .nav-tabs .nav-tabs-item[href=\"/ai-2-0\"]{color:#1570EF;background-color:#EFF8FF;border:1.5px solid #B2DDFF;border-radius:100px;font-weight:600;text-shadow:-0.2px 0 0 currentColor, 0.2px 0 0 currentColor}#navbar .h-10{height:auto!important}.navbar-link a{background-color:transparent;color:#535862;font-weight:600}.nav-logo{height:36px}.navbar-link a:hover{color:#181D27;background-color:transparent}.products-container h2{color:#222244;font-size:22px;font-weight:600}.card{border:none;box-shadow:0px 4px 12px -1px rgba(10, 13, 18, 0.08);transition:all 0.3s ease}.card>*{padding:20px;transition:all 0.3s ease}.card h2{color:#181D27;font-size:18px;line-height:20px}.card:hover{box-shadow:0px 3px 3px -1.5px #0A0D120A,\n 0px 8px 8px -4px #0A0D1208,\n 0px 20px 24px -4px #0A0D1214;transform:translateY(-2px)}.card:hover>*{padding:24px;margin:-4px}.connector-page .card [data-component-part=\"card-content-container\"]{position:relative}.card [data-component-part=\"card-icon\"]:has(>svg){background-color:#e6f1ff;padding:24px;border-radius:100%;display:inline-flex;align-items:center;justify-content:center}body:not(:has(.homepage-container)) .card [data-component-part=\"card-icon\"]{width:auto!important;height:auto!important;min-width:32px!important;min-height:32px!important;align-self:flex-start!important}body:not(:has(.homepage-container)) .card [data-component-part=\"card-icon\"] img{width:32px!important;height:32px!important;object-fit:contain;flex-shrink:0}.connector-page div[data-component-part=\"card-icon\"]{background-color:#F8F9FC;padding:16px;border-radius:100%;display:inline-flex;align-items:center;justify-content:center;width:auto!important;height:auto!important}.connector-page div[data-component-part=\"card-icon\"] svg,.connector-page div[data-component-part=\"card-icon\"] img{width:32px!important;height:32px!important;object-fit:contain;flex-shrink:0;position:relative;z-index:1}.prod-beta-chip{display:flex;gap:4px;font-size:10px;width:max-content;border-radius:100px;padding:0px 6px;font-weight:500;position:absolute;top:12px;right:12px}.prod-beta-chip.prod{color:#067647;background-color:#ECFDF3;border:1px solid #ABEFC6}.prod-beta-chip.beta{color:#175CD3;background-color:#EFF8FF;border:1px solid #B2DDFF}.prod-beta-chip img{margin:0px}.prod-beta-chip span{margin-top:-7px}#sidebar-content{border:none;top:132px!important;height:calc(100vh - 132px)!important}.sidebar-group-header{display:none}.my-2:has(ul.sidebar-group a[href^=\"/api-reference\"])>.sidebar-group-header,.my-2:has(ul.sidebar-group a[href*=\"/developer-guide/\"])>.sidebar-group-header{display:flex}.sidebar-group-header h5{color:#222244;font-size:14px;font-weight:600}#table-of-contents-content .toc-item a{color:#414651}#table-of-contents-content .toc-item a:hover{color:#414651;border-color:#D5D9EB}#table-of-contents-content .toc-item a.text-primary{color:#004CD3;border-color:#004CD3;font-weight:600}body:not(:has(.homepage-container)) .mdx-content h1,.products-container h1,.collate-ai-container h1{display:flex;flex-direction:column;align-items:flex-start;margin-top:0!important}body:not(:has(.homepage-container)) .mdx-content h1::before,.products-container h1::before,.collate-ai-container h1::before{content:\"Collate Documentation\";display:block;background-color:#F0F9FF;color:#0BA5EC;padding:4px 12px;border-radius:100px;font-size:14px;font-weight:600;line-height:1.5;margin-bottom:16px;width:fit-content;flex-shrink:0}h1.ConnectorName::before{position:absolute;top:-2px;left:0px}body:has(.homepage-container) #search-bar-entry,body:has(.homepage-container) #assistant-entry{display:none!important}.search-container{position:relative;margin-top:64px;display:flex;align-items:center;justify-content:center;width:100%;max-width:800px;margin-left:auto;margin-right:auto;padding:0px 6px}.homepage-search-input{width:100%;padding:18px 58px 18px 70px;border:2px solid #EAECF5;border-radius:100px;font-size:16px;color:#3C4257;cursor:pointer;transition:all 0.2s ease;box-sizing:border-box}.homepage-search-input::placeholder{color:#CECFD2;font-size:18px}.homepage-search-input:hover{background-color:#FFFFFF}.homepage-search-input:focus{outline:none;background-color:#FFFFFF;box-shadow:0 0 0 3px rgba(84, 105, 212, 0.1)}.ask-ai-icon-button{position:absolute;left:26px;top:12px;background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;pointer-events:auto}.ask-ai-icon{color:#9CA3AF;pointer-events:auto;width:40px!important;height:40px!important}.search-shortcut{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:#9CA3AF;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;pointer-events:none;white-space:nowrap}.navbar-link:last-of-type a{background-color:#1570EF;color:white;border-radius:100px;display:flex;justify-content:center}.navbar-link:last-of-type a:hover{background-color:#0257cd}body:has(.how-to-guides-container) #sidebar-content,body:has(.sdk-container) #sidebar-content,body:has(.connector-page) #sidebar-content,body:has(.getting-started-container) #sidebar-content,body:has(.collate-ai-container) #sidebar-content{display:none}body:has(.how-to-guides-container) #content-container,body:has(.sdk-container) #content-container,body:has(.connector-page) #content-container,body:has(.getting-started-container) #content-container,body:has(.collate-ai-container) #content-container{max-width:1300px!important}.collate-ai-container{margin-top:10px}article iframe,.prose iframe{max-width:600px!important;width:100%!important;margin:0 auto!important;display:block!important;height:auto!important;aspect-ratio:16 / 9!important;border:none!important}@media (max-width: 1024px){.navbar-link:first-of-type{margin-top:20px}article iframe,.prose iframe{max-width:100%!important;width:100%!important;height:auto!important;aspect-ratio:16 / 9!important}}@media (max-width: 768px){article iframe,.prose iframe{max-width:100%!important;width:100%!important;margin:0!important;height:auto!important;aspect-ratio:16 / 9!important}}.card:not(:has([data-component-part=\"card-icon\"])){border:1px solid #EAECF5!important;background-color:#F8F9FC!important;box-shadow:none!important}.card.card:not(:has([data-component-part=\"card-icon\"])) h2{color:#004CD3;font-weight:500;font-size:20px;margin-bottom:12px;line-height:30px}.card.card:not(:has([data-component-part=\"card-icon\"])):hover h2{text-decoration:underline}.how-to-guides-container ul{list-style:none;padding-left:0}.how-to-guides-container ul li{padding-left:28px;position:relative;margin-bottom:8px}.how-to-guides-container ul li::before,.sdk-container ul li::before,.python-container ul li::before{content:'';position:absolute;left:0;top:6px;width:16px;height:16px;background-color:transparent;background-image:url(\"/public/images/icons/check-circle.svg\");background-size:contain;background-repeat:no-repeat}.sdk-container .card img{min-width:40px!important;width:40px!important;height:40px!important}.code-block,.code-block [data-component-part=\"code-block-root\"]{border:none!important;background-color:#3E444F!important;border-radius:16px!important;backdrop-filter:blur(40px)}.code-block pre,.code-block code,.code-block span{color:#E5E7EB!important;background-color:transparent!important}.code-block pre{background-color:transparent!important}.python-container{background-color:#FAFAFA;border-radius:12px;padding:6px 20px}.callout [data-component-part=\"callout-content\"]{color:#414651!important}@layer utilities{.callout [data-component-part=\"callout-content\"] a{color:var(--primary-color)!important}}.chat-assistant-floating-input{max-width:370px!important;margin-left:auto!important;margin-right:auto!important}div:has(>#chat-assistant-sheet){border:none}div:has(>#chat-assistant-sheet) .cursor-col-resize{display:none!important}#chat-assistant-sheet{margin-top:0.4rem!important;min-height:90%!important;border:1px solid #EAECF5;border-top-left-radius:24px;border-top-right-radius:24px;box-shadow:0px 2px 2px -1px #0A0D120A,\n 0px 4px 6px -2px #0A0D1208,\n 0px 12px 16px -4px #0A0D1214;background:#0A0D12;color:rgba(255, 255, 255, 0.9)}.chat-assistant-sheet-header span{color:rgba(255, 255, 255, 0.9)!important}.chat-assistant-sheet-header span.font-medium{font-size:0}.chat-assistant-sheet-header span.font-medium::before{content:\"Ask AI\";font-size:0.875rem;font-weight:600}.chat-assistant-sheet-header svg{width:16px;height:16px;color:rgba(255, 255, 255, 0.8)}#chat-assistant-textarea{background-color:#373A41;border-radius:100px;color:rgba(255, 255, 255, 0.9);padding:14px 48px 14px 16px;max-height:52px!important;overflow-y:auto}#chat-assistant-textarea::placeholder{color:rgba(255, 255, 255, 0.6)}.chat-assistant-send-button{width:32px!important;height:32px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%);background-color:#2970FF}#chat-assistant-textarea~span{top:50%!important;bottom:auto!important;transform:translateY(-50%)}.chat-assistant-send-button:hover{background-color:#004EEB}.chat-assistant-send-button svg{width:16px;height:16px}div:has(>div>#chat-assistant-textarea){border:none!important;background-color:#373A41}#chat-content{margin-top:12px}#chat-content .rounded-2xl.bg-gray-100{background:#22262F!important}#chat-content button{color:rgba(255, 255, 255, 0.6)}#chat-content button[aria-label*=\"Vote\"]:hover,#chat-content button[aria-label=\"Copy chat response\"]:hover{color:#22262F}#chat-content .whitespace-pre-line,#chat-content li{color:rgba(255, 255, 255, 0.7)}#chat-content .rounded-2xl.bg-gray-100 .text-gray-800,#chat-content .rounded-2xl.bg-gray-100 div{color:#FFFFFFE5!important}#assistant-entry{margin-left:auto;border:2px solid #1570EF;background-color:transparent}#assistant-entry svg,#assistant-entry span{background:none;-webkit-text-fill-color:#1570EF;font-weight:600;color:#1570EF}#assistant-entry:hover{background:linear-gradient(45deg, #175CD3 0%, #1570EF 100%)}#assistant-entry:hover svg,#assistant-entry:hover span{background:none;-webkit-background-clip:unset;-webkit-text-fill-color:white;background-clip:unset;color:white}div:has(>#search-bar-entry):has(>#assistant-entry){flex-direction:row-reverse!important}div[data-component-part=\"code-group-tab-bar\"] p{margin-top:0px}table{width:100%;border-collapse:collapse;margin:16px 0;border:1px solid #EAECF5;border-radius:12px}table thead{background-color:#F8F9FC}table th{padding:12px 24px!important;text-align:left;font-weight:600;color:#181D27;border-bottom:2px solid #EAECF5}table td{padding:12px 24px!important;color:#414651;border-bottom:1px solid #EAECF5}table tr:last-child td{border-bottom:none}table tr:hover{background-color:#F8F9FC}.space-x-2>:not([hidden])~:not([hidden]){margin:0px}.header-logo{max-width:max-content;border-radius:32px 80px 0 0;background:#224;padding:9px 44px 10px 45px;display:flex;gap:20px;align-items:center}.header-logo .collate-logo{width:84px;height:14px}.header-logo .x-icon{width:18px;height:18px}.header-logo .om-logo{width:64px;height:25px}.collate-summit{margin:0px auto 72px;max-width:1200px;padding:20px}.summit-content{background-image:url('/public/images/banner-bg.png');background-size:100% 100%;background-position:center;background-repeat:no-repeat;border-radius:0px 20px 20px 20px;padding:28px 44px;width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:24}.summit-content .summit-header{font-size:48px;font-weight:400;color:#224;line-height:52px}.summit-content p{color:#5816DC;margin-top:0px;margin-left:4px;font-size:28px;font-weight:600}.summit-content .explore-collate{background-color:#FBE200;color:black;font-size:18px;white-space:nowrap;padding:11px 20px;border-radius:6px;font-weight:600}.summit-content .explore-collate:hover{background-color:#dec908}.summit-content .explore-collate a{color:black;font-weight:600}@media (max-width: 768px){.summit-content{flex-direction:column;align-items:center;text-align:center;padding:48px 24px}}@media (max-width: 640px){.header-logo{padding:9px 36px 10px 24px}}"},{"filePath":"public/modal.css","content":".modal{position:fixed;left:0;top:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:all 0.3s ease-in-out;pointer-events:none;z-index:999}.modal.enter-done{opacity:1;pointer-events:visible}.modal.exit{opacity:0}.modal-content{margin:0 10px;width:600px;height:300px;background-color:var(--white-color);transition:all 0.3s ease-in-out;transform:translateY(-200px)}.modal.enter-done .modal-content{transform:translateY(0)}.modal.exit .modal-content{transform:translateY(-200px)}"},{"filePath":"snippets/components/CodePreview.css","content":".split-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;align-items:start}@media (max-width: 768px){.split-layout{grid-template-columns:1fr;gap:1rem}}.code-content .code-block [data-component-part=\"code-block-root\"]{background-color:#0b1e3d!important}.content-panel{display:flex;flex-direction:column;gap:1.5rem;padding-right:1rem}.content-section{padding:0.5rem 1rem;border-left:2px solid transparent;border-radius:6px;cursor:pointer;position:relative;box-sizing:border-box;transition:background 0.25s ease,\n border-color 0.25s ease,\n box-shadow 0.25s ease}.content-section:hover{background:linear-gradient(\n 90deg,\n rgba(176, 176, 176, 0.08) 0%,\n rgba(176, 176, 176, 0.03) 100%\n );border-left-color:rgba(176, 176, 176, 0.5)}.content-section.active{background:linear-gradient(\n 90deg,\n rgba(176, 176, 176, 0.15) 0%,\n rgba(176, 176, 176, 0.05) 100%\n );border-left-color:#b0b0b0;box-shadow:0 2px 8px rgba(176, 176, 176, 0.1),\n inset 0 0 20px rgba(176, 176, 176, 0.05);color:rgb(63, 65, 69)}.content-section.active::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(\n 180deg,\n #c0c0c0 0%,\n #b0b0b0 50%,\n #a0a0a0 100%\n )}.content-section h4{margin:0 0 0.75rem 0;font-size:1rem;font-weight:600;color:#1a1a1a}.content-section p{margin:0.5rem 0;line-height:1.6;color:#4a4a4a}.content-section code{background:rgba(0, 0, 0, 0.05);padding:0.2em 0.4em;border-radius:3px;font-size:0.9em}.code-panel{position:sticky;top:calc(var(--navbar-height, 64px) + 6rem);height:calc(\n 100vh - var(--navbar-height, 64px) - 6rem\n );display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#1e1e1e;box-shadow:0 4px 6px rgba(0, 0, 0, 0.1)}.code-panel [data-component-part=\"code-block-root\"]{padding:0rem 1rem}.code-panel .code-block{margin:0}.code-header{display:flex;justify-content:space-between;align-items:center;padding:0.4rem 1rem;background:#0b1e3d;border-bottom:1px solid #404040;color:white;font-size:0.875rem;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace}.copy-btn{display:flex;align-items:center;gap:0.5rem;padding:0.375rem 0.75rem;background:transparent;border:1px solid #404040;border-radius:4px;color:#a0a0a0;cursor:pointer;transition:all 0.2s ease;font-size:0.875rem}.copy-btn:hover{background:#404040;border-color:#606060;color:#fff}.copy-btn svg{width:16px;height:16px}.copy-btn .icon-check{display:none}.copy-btn[data-copied=\"true\"] .icon-copy{display:none}.copy-btn[data-copied=\"true\"] .icon-check{display:block;color:#10b981}.code-content{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:auto;background:#0b1e3d;scroll-behavior:smooth;padding:14px 0px}.code-content::-webkit-scrollbar{width:8px;height:8px}.code-content::-webkit-scrollbar-track{background:#2d2d2d}.code-content::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}.code-content::-webkit-scrollbar-thumb:hover{background:#606060}.code-content pre{margin:0;padding:0rem 1rem;background:transparent;color:#d4d4d4;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:0.875rem;line-height:1.6;white-space:pre;word-wrap:normal;overflow-wrap:normal;position:relative}.code-content pre code{background:transparent;padding:0;color:inherit;font-size:inherit;border-radius:0;display:block;white-space:pre}.code-line{display:block;padding-left:1rem;padding-right:1rem;margin-left:-1rem;margin-right:-1rem;transition:all 0.2s ease;position:relative;white-space:pre;line-height:inherit;border-left:2px solid transparent}.code-line::after{content:'\\a';white-space:pre}.code-line.highlighted{background:rgba(200, 200, 200, 0.15)!important;border-left:2px solid #d0d0d0;padding-left:calc(1rem - 2px);min-height:1.5em}.code-line.highlighted::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#d0d0d0;z-index:1}.code-line.highlighted+.code-line.highlighted{border-top:none}.code-line.highlighted:not(.code-line.highlighted+.code-line.highlighted){border-top-left-radius:4px}.code-line.highlighted:not(:has(+.code-line.highlighted)){border-bottom-left-radius:4px}.line-number{display:inline-block;min-width:2.5em;padding-right:1em;margin-right:0.5em;text-align:right;color:#858585;user-select:none;border-right:1px solid #404040}@media (prefers-color-scheme: dark){.content-section p{color:#c0c0c0}.content-section code{background:rgba(255, 255, 255, 0.1)}.code-panel{border-color:#404040}}@media (max-width: 768px){.code-panel{position:relative;top:0;max-height:400px}.split-layout{grid-template-columns:1fr}}.code-content [data-testid=\"copy-code-button\"]{display:none!important}.code-content #ask-ai-code-block-button{display:none!important}div[data-fade-overlay=\"true\"]{--fade-color-light: transparent !important;--fade-color-dark: transparent !important;display:none!important}:has([data-floating-buttons])>[data-component-part=code-block-root] pre>code{padding-right:0px!important}@media (max-width: 768px){.code-panel{position:relative;top:0;height:400px}}"},{"filePath":"snippets/components/ConnectorDetailsHeader/ConnectorDetailsHeader.css","content":".container{margin:48px 0px!important;display:flex;flex-direction:column;gap:6px}.Heading{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--default-border-color)}.ConnectorName{font-size:32px;font-weight:700;margin-bottom:0px}.PlatformDetails{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--gray-text-color)}.PlatformIcon{padding:4px;background-color:var(--connector-icon-bg-color);border:1px solid var(--default-border-color);border-radius:12px}.ImageContainer{background-color:var(--connector-icon-bg-color);padding:12px;border:1px solid var(--default-border-color);border-radius:28px}.IconContainer{background-color:#F8F9FC;padding:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0}.ConnectorIcon{width:32px!important;height:32px!important;object-fit:contain;display:block;margin:0}.FeaturesHeading{font-size:14px;color:var(--gray-text-color)}.SubHeading{display:flex;flex-direction:column;gap:8px}.FeaturesList{display:flex;flex-wrap:wrap;gap:12px}.FeatureTag{padding:4px 10px;font-size:12px;border-radius:14px;width:fit-content;display:flex;align-items:center;gap:4px}.AvailableFeature{color:var(--green-tag-color);border:1px solid var(--green-tag-color);background-color:var(--green-tag-bg-color)}.UnavailableFeature{color:var(--orange-tag-color);border:1px solid var(--orange-tag-color);background-color:var(--orange-tag-bg-color)}.StageBadge{font-size:10px;height:auto;color:var(--green-tag-color)}"},{"filePath":"snippets/components/ConnectorGrid/Integrations.css","content":".no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.integrations-section{padding:3rem 1rem 9rem;max-width:1300px;margin:0 auto}.integrations-card{background:#FAFAFA;border-radius:12px;border:1px solid #EAECF5;display:flex;height:660px;overflow:hidden;position:relative;padding:40px 40px 40px 0px}.integrations-mobile-header{display:none;width:100%;background:#ffffff;border-bottom:1px solid #d9daee;padding:32px;font-size:20px;justify-content:center;align-items:center;gap:12px;position:sticky;top:0;z-index:15;cursor:pointer}.arrow{transition:transform 0.3s ease}.arrow.open{transform:rotate(180deg)}.arrow-down{width:10px;height:10px}.integrations-sidebar{width:220px;border-right:1px solid #EAECF5;display:flex;flex-direction:column;position:sticky;top:0;z-index:5}.sidebar-item{display:block;width:100%;padding:12px 22px;font-size:16px;color:#535862;cursor:pointer;white-space:nowrap;flex-shrink:0;text-align:right;font-weight:500;border-right:2px solid transparent}.sidebar-item:hover{color:#414651;border-right:2px solid #D5D9EB}.sidebar-item.active{border-right:2px solid #004CD3;font-weight:600;color:#004CD3}.integrations-grid{flex:1;padding:20px 32px;overflow-y:auto;display:grid;gap:20px;align-content:flex-start}.integrations-grid.desktop{grid-template-columns:repeat(auto-fill, minmax(200px, 1fr))}.integrations-grid.mobile{display:none}.integration-card{max-height:110px;text-decoration:none;display:flex;align-items:center;gap:12px;background-color:white;box-shadow:0px 4px 12px -1px #0A0D1214;border-radius:12px;padding:12px 20px;box-sizing:border-box;transition:all 0.3s ease}.integration-card span{color:#181D27;font-weight:500;font-size:16px;line-height:120%}a.integration-card span:hover{text-decoration:none}a.integration-card:hover{box-shadow:0px 3px 3px -1.5px #0A0D120A,\n 0px 8px 8px -4px #0A0D1208,\n 0px 20px 24px -4px #0A0D1214;padding:16px 24px;margin:-4px;text-decoration:none;transform:translateY(-2px)}.integration-card img{width:32px;height:32px;object-fit:contain;flex-shrink:0}.load-more{grid-column:span 2;padding:24px;font-size:20px;background:#ffffff;border:none;cursor:pointer}@media (max-width: 1024px){.integrations-card{flex-direction:column;height:auto;padding:0px;overflow:auto}.integrations-mobile-header{display:flex}.integrations-sidebar{display:none;width:100%;position:absolute;top:98px;left:0;right:0;border-right:none;border-bottom:1px solid #d9daee;background:#ffffff;overflow-y:scroll}.integrations-sidebar.open{display:block}.sidebar-item{text-align:center}.sidebar-item.active{border-right:none}.integrations-grid.desktop{display:none}.integrations-grid.mobile{display:grid;grid-template-columns:repeat(2, 1fr);padding:24px}}"},{"filePath":"style.css","content":".homepage-container,.sdk-api-container{max-width:1440px;margin:0 auto;padding:0px 10px 40px}.collate-ai-iframe{margin:32px 0px 40px}.banner-content{padding:96px 0;background:radial-gradient(46.63% 44.4% at 50% 50%, rgba(201, 207, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%)}.page-header{color:#181D27!important;font-weight:600;font-size:56px;text-align:center;margin-top:24px}#header-highlight{background:linear-gradient(to top, #016AFB 0%, #00E0EE 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-description{text-align:center;color:#717680;font-size:20px;margin-top:20px}.header-description{font-size:18px;margin-top:16px}.chips{display:flex;justify-content:center;gap:24px;margin-top:24px}.chip{padding:8px 12px;border-radius:100px;box-shadow:0px 4px 12px -1px rgba(10, 13, 18, 0.08);display:flex;gap:12px;align-items:center;font-weight:500;width:max-content}.chip.blue{background:linear-gradient(93.13deg, #EBF9FF 0%, #ECF4FF 189.43%);color:#194185}.chip.blue:hover{background:linear-gradient(93.13deg, #E5F7FF 0%, #DDECFF 189.43%);color:#175CD3}.chip.purple{background-color:#F0F9FF;color:#0BA5EC;margin:0 auto;padding:8px 20px;box-shadow:none;font-size:14px}.release-banner{max-width:1300px;margin:0 auto;background:linear-gradient(135deg, rgba(195, 201, 252, 0.5) 0%, rgba(142, 234, 252, 0.5) 100%);padding:48px 100px;border-radius:24px}.banner-image{width:1200px;border:3px solid #BED2FB;border-radius:16px;box-shadow:0px 2px 2px -1px #0A0D120A,\n 0px 4px 6px -2px #0A0D1208,\n 0px 12px 16px -4px #0A0D1214}.release-banner-content{display:grid;grid-template-columns:repeat(2, 1fr);gap:50px;align-items:center}.release-banner-content h2{color:#181D27;font-weight:500;font-size:32px;margin-bottom:16px}.release-banner-content p{color:#414651;font-size:18px;margin-bottom:40px}.release-banner-content a{background-color:white;box-shadow:0px 2px 2px -1px #0A0D120A,\n 0px 4px 6px -2px #0A0D1208,\n 0px 12px 16px -4px #0A0D1214;padding:12px 24px;border-radius:99px;font-size:18px;font-weight:500;color:#131313}.release-banner-content a:hover{text-decoration:underline}.guides,.highlights,.quick-links{padding:48px 48px 96px}.guide-header{font-weight:500;font-size:40px;color:#181D27;text-align:center;margin-top:24px}.guide-list{display:grid;grid-template-columns:repeat(7, 1fr);gap:24px;margin:0 auto;margin-top:52px;max-width:100%}.guide-card{box-shadow:0px 4px 12px -1px rgba(10, 13, 18, 0.08);padding:20px;border-radius:20px;display:flex;flex-direction:column;align-items:center;color:#252B37;font-weight:500;font-size:18px;gap:16px;width:100%;transition:all 0.3s ease;text-align:center}.guide-card:hover{box-shadow:0px 20px 24px -4px #0A0D1214;transform:translateY(-4px);padding:24px;margin:-4px}a.guide-card img{width:80px!important;height:80px!important}.see-all{text-align:center;margin:64px auto 0px;color:#004CD3;font-size:18px;font-weight:500;box-shadow:0px 2px 2px -1px rgba(10, 13, 18, 0.04),\n 0px 4px 6px -2px rgba(10, 13, 18, 0.03),\n 0px 12px 16px -4px rgba(10, 13, 18, 0.08);width:max-content;padding:12px 24px;background-color:#EAF4FF;border-radius:100px}.see-all:hover{background-color:#CDE4FE;color:#1849A9}.highlight-cards{max-width:850px;display:grid;grid-template-columns:repeat(2, 1fr);gap:32px;margin:60px auto 0px}.highlight-card{box-shadow:0px 4px 12px -1px rgba(10, 13, 18, 0.08);padding:20px;border-radius:12px;transition:all 0.3s ease}.highlight-card p{font-size:18px;color:#717680}.highlight-card:hover{box-shadow:0px 3px 3px -1.5px rgba(10, 13, 18, 0.04),\n 0px 8px 8px -4px rgba(10, 13, 18, 0.03),\n 0px 20px 24px -4px rgba(10, 13, 18, 0.08);padding:24px;margin:-4px;transform:translateY(-2px)}.highlight-card .icon{width:48px!important;height:48px!important}.highlight-header{font-size:20px;font-weight:500;color:#181D27;margin-top:12px}.read-more{margin-top:20px;display:flex;gap:10px;align-items:center;color:#175CD3;font-weight:600}.highlight-card:hover .read-more{color:#1849A9}.read-more img{margin-top:2px}.links{margin:0 auto;margin-top:40px;max-width:80%;display:grid;grid-template-columns:repeat(3, 1fr);justify-items:center}.link-header{color:#181D27;display:flex;gap:10px;align-items:center;margin-bottom:16px}.link-header h3{font-size:20px;font-weight:500}.link-list{color:#175CD3;font-weight:500;display:flex;flex-direction:column;gap:12px}.link-list a:hover{text-decoration:underline;color:#1849A9}.collate-video{background:linear-gradient(135deg, rgba(195, 201, 252, 0.5) 0%, rgba(142, 234, 252, 0.5) 100%);border-radius:24px;max-width:90%;margin:32px auto 64px;padding:36px 80px}.video-content{display:grid;grid-template-columns:repeat(2, 1fr);align-items:center;gap:16px}.video-container{width:100%;max-width:600px;margin:20px auto;padding:0 16px;box-sizing:border-box}.video-container iframe{width:100%;height:auto;aspect-ratio:16 / 9;display:block;border-radius:20px;border:3px solid #BED2FB}.video{border-radius:20px;border:3px solid #BED2FB;max-width:100%;height:auto;box-shadow:0px 2px 2px -1px rgba(10, 13, 18, 0.04),\n 0px 4px 6px -2px rgba(10, 13, 18, 0.03),\n 0px 12px 16px -4px rgba(10, 13, 18, 0.08)}.video-chip{background-color:rgba(255, 255, 255, 0.4);width:max-content;padding:12px 8px;border-radius:24px;color:#0086C9;font-size:12px}.video-description{color:#414651;font-size:18px;max-width:90%}.product-demo{background-color:#0BA5EC;padding:8px 14px;color:white;border-radius:24px;margin-right:8px;font-size:12px}.video-header{text-align:left;margin-bottom:16px}.external-links{padding:36px 80px}.explore-container{display:grid;grid-template-columns:repeat(3, 1fr)}.explore-items{display:flex;gap:20px;width:100%}.explore-header{color:#252B37;font-size:24px;font-weight:600;letter-spacing:-2%}.explore-desc{font-size:18px;color:#717680;margin-top:4px}.explore-card{background-color:#F4F9FF;box-shadow:0px 4px 12px -8px #0026543D;padding:12px 20px;border-radius:12px;color:#535862;font-size:14px;font-weight:400;transition:all 0.3s ease}.explore-card:hover{box-shadow:0px 3px 3px -1.5px rgba(10, 13, 18, 0.04),\n 0px 8px 8px -4px rgba(10, 13, 18, 0.03),\n 0px 20px 24px -4px rgba(10, 13, 18, 0.08);padding:16px 24px;margin:-4px;transform:translateY(-2px)}.explore-card-header{display:flex;gap:10px}.explore-card-header div{color:#252B37;font-weight:500;font-size:18px}.home-footer{display:flex;justify-content:space-between;padding:36px 80px 0px;color:#717680}.home-footer-links{display:flex;gap:20px}.footer-link-name{color:#252B37;font-weight:400}.footer-link-name:hover{color:#181D27;text-decoration:underline}.home-footer-social{display:flex;gap:8px}.social-link{padding:4px 8px;border-radius:4px}.social-link:hover{background-color:#F8F9FC}.connector-page div[data-component-part=\"card-icon\"]{background-color:#F8F9FC;padding:21px 20px;border-radius:100%;display:inline-flex;align-items:center;justify-content:center}.connector-page div[data-component-part=\"card-icon\"]>*{position:relative;z-index:1}.connector-page .card [data-component-part=\"card-content-container\"]{padding:16px}.card-details{display:flex;gap:6px;align-items:center}.card-logo{width:20px;height:20px;margin:0px}.products-container{max-width:1150px;margin:0 auto;padding:60px 14px 40px}.products-container h1{font-size:30px!important}.products-container [data-as=\"p\"]:first-of-type{display:block;margin-bottom:40px}.product-cards{margin-top:16px;padding-bottom:48px}.product-cards .card [data-component-part=\"card-content\"]{margin-top:4px}.products-container .external-links{padding:64px 0px 36px}.products-container .home-footer{padding:36px 0px 0px}.sdk-api-container{padding:72px 0px;max-width:1300px}.sdk-api-container span[data-as=\"p\"]{display:block;margin-bottom:8px;color:#414651}.sdk-api-container a.link{color:#004CD3!important}.sdk-api-container h3{color:#222244;font-size:20px}.api-header{display:grid;grid-template-columns:repeat(2, 1fr);gap:40px;margin-top:16px;padding-bottom:56px;border-bottom:1px solid #EAECF5}.sdk-api-container .code-group{background-color:#515865}.sdk-api-container .code-group button{color:white!important;font-weight:600;font-size:14px}.sdk-api-container .code-group button .absolute{display:none}.sdk-api-container [data-component-part=\"code-block-root\"]{background-color:#3E444F!important}.sdk-api-container [data-component-part=\"code-block-root\"] pre,.sdk-api-container [data-component-part=\"code-block-root\"] pre .line span{color:white!important}.client-sdks{border:1px solid #E9EAEB;border-radius:8px}.client-header{color:#414651;font-weight:600;padding:24px 24px 0px;background-color:#FAFAFA;border-top-left-radius:8px;border-top-right-radius:8px}.client-sdks [role=\"tablist\"]{margin-bottom:0px!important;display:flex;justify-content:center;gap:100px}.client-sdks [data-component-part=\"tabs-list\"]{padding:10px 24px 0px;background-color:#FAFAFA}.client-sdks [data-active=\"true\"]{border-bottom:3px solid #1570EF}.client-sdks [data-active=\"false\"]{border-bottom:none}.client-sdks [data-component-part=\"tab-button\"]{display:flex;flex-direction:column;color:#181D27!important}.client-sdks [data-component-part=\"tab-button\"] img{width:40px;height:40px}.client-sdks [data-component-part=\"tab-content\"]{background-color:#F5F5F5;padding:10px 24px}.api-header-auth{display:grid;grid-template-columns:repeat(2, 1fr);gap:40px;padding-top:48px;padding-bottom:56px;border-bottom:1px solid #EAECF5}.api-header-auth h2{color:#222244;font-size:20px;font-weight:600;margin-bottom:12px}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] div:first-child span{color:white!important;font-size:14px;font-weight:600;margin-left:8px}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] [data-testid=\"copy-code-button\"] svg{color:white}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] .group{background-color:#252B37;border:1px solid #5B626F;padding:4px;border-radius:4px;color:white}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] .group div svg:first-of-type{display:none!important}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] .group div p{color:white;margin:0px}.sdk-api-container [data-component-part=\"code-group-tab-bar\"] .group div:hover{background-color:transparent}@media (max-width: 1280px){.guide-list{grid-template-columns:repeat(3, 1fr)}.links{max-width:100%}.collate-video,.external-links,.home-footer{padding:32px 56px}.release-banner{padding:40px 52px}}@media (max-width: 1220px){.chips{display:grid;grid-template-columns:repeat(4, 1fr);max-width:auto;justify-items:center}}@media (max-width: 1024px){.release-banner-content{grid-template-columns:repeat(1, 1fr)}.release-banner h2{font-size:28px}.video-content{grid-template-columns:repeat(1, 1fr);gap:28px}.explore-container{grid-template-columns:repeat(1, 1fr);gap:32px}.home-footer{display:grid;grid-template-columns:repeat(3, 1fr);row-gap:20px}.collate-tm{grid-column:span 3/span 3}.home-footer-links{grid-column:span 2/span 2}.home-footer-social{justify-self:flex-end}}@media (max-width: 768px){.page-header{font-size:48px}.chips{grid-template-columns:repeat(2, 1fr);max-width:400px;margin:40px auto 0}.guide-list{grid-template-columns:repeat(2, 1fr)}.links{grid-template-columns:repeat(2, 1fr);justify-items:start;row-gap:40px}.video-container{padding:0 12px;margin:16px auto}.external-links,.home-footer{padding:24px}.home-footer-links{flex-direction:column}}@media (max-width: 640px){.chips{grid-template-columns:repeat(1, 1fr);max-width:auto;justify-items:center}.release-banner{padding:40px 20px}.guide-list{grid-template-columns:repeat(1, 1fr)}.highlight-cards{grid-template-columns:repeat(1, 1fr)}.links{grid-template-columns:repeat(1, 1fr)}.collate-video{padding:24px}.explore-items{flex-direction:column}}.chat-assistant-floating-input::before{display:none!important}"},{"filePath":"snippets/components/CodeLayout/CodeLayout.css","content":".code-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;align-items:start;width:100%}.code-layout h2{margin-top:0px}.code-layout-sticky{position:-webkit-sticky;position:sticky;top:132px;align-self:flex-start;max-height:calc(100vh - 132px);overflow-y:auto;z-index:10}"},{"filePath":"ai-2-0/snippets/components/CodeLayout/CodeLayout.css","content":".code-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;align-items:start;width:100%}.code-layout h2{margin-top:0px}.code-layout-sticky{position:-webkit-sticky;position:sticky;top:132px;align-self:flex-start;max-height:calc(100vh - 132px);overflow-y:auto;z-index:10}"},{"filePath":"ai-2-0/snippets/components/CodePreview.css","content":".split-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;align-items:start}@media (max-width: 768px){.split-layout{grid-template-columns:1fr;gap:1rem}}.code-content .code-block [data-component-part=\"code-block-root\"]{background-color:#0b1e3d!important}.content-panel{display:flex;flex-direction:column;gap:1.5rem;padding-right:1rem}.content-section{padding:0.5rem 1rem;border-left:2px solid transparent;border-radius:6px;cursor:pointer;position:relative;box-sizing:border-box;transition:background 0.25s ease,\n border-color 0.25s ease,\n box-shadow 0.25s ease}.content-section:hover{background:linear-gradient(\n 90deg,\n rgba(176, 176, 176, 0.08) 0%,\n rgba(176, 176, 176, 0.03) 100%\n );border-left-color:rgba(176, 176, 176, 0.5)}.content-section.active{background:linear-gradient(\n 90deg,\n rgba(176, 176, 176, 0.15) 0%,\n rgba(176, 176, 176, 0.05) 100%\n );border-left-color:#b0b0b0;box-shadow:0 2px 8px rgba(176, 176, 176, 0.1),\n inset 0 0 20px rgba(176, 176, 176, 0.05);color:rgb(63, 65, 69)}.content-section.active::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(\n 180deg,\n #c0c0c0 0%,\n #b0b0b0 50%,\n #a0a0a0 100%\n )}.content-section h4{margin:0 0 0.75rem 0;font-size:1rem;font-weight:600;color:#1a1a1a}.content-section p{margin:0.5rem 0;line-height:1.6;color:#4a4a4a}.content-section code{background:rgba(0, 0, 0, 0.05);padding:0.2em 0.4em;border-radius:3px;font-size:0.9em}.code-panel{position:sticky;top:calc(var(--navbar-height, 64px) + 6rem);height:calc(\n 100vh - var(--navbar-height, 64px) - 6rem\n );display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#1e1e1e;box-shadow:0 4px 6px rgba(0, 0, 0, 0.1)}.code-panel [data-component-part=\"code-block-root\"]{padding:0rem 1rem}.code-panel .code-block{margin:0}.code-header{display:flex;justify-content:space-between;align-items:center;padding:0.4rem 1rem;background:#0b1e3d;border-bottom:1px solid #404040;color:white;font-size:0.875rem;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace}.copy-btn{display:flex;align-items:center;gap:0.5rem;padding:0.375rem 0.75rem;background:transparent;border:1px solid #404040;border-radius:4px;color:#a0a0a0;cursor:pointer;transition:all 0.2s ease;font-size:0.875rem}.copy-btn:hover{background:#404040;border-color:#606060;color:#fff}.copy-btn svg{width:16px;height:16px}.copy-btn .icon-check{display:none}.copy-btn[data-copied=\"true\"] .icon-copy{display:none}.copy-btn[data-copied=\"true\"] .icon-check{display:block;color:#10b981}.code-content{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:auto;background:#0b1e3d;scroll-behavior:smooth;padding:14px 0px}.code-content::-webkit-scrollbar{width:8px;height:8px}.code-content::-webkit-scrollbar-track{background:#2d2d2d}.code-content::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}.code-content::-webkit-scrollbar-thumb:hover{background:#606060}.code-content pre{margin:0;padding:0rem 1rem;background:transparent;color:#d4d4d4;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:0.875rem;line-height:1.6;white-space:pre;word-wrap:normal;overflow-wrap:normal;position:relative}.code-content pre code{background:transparent;padding:0;color:inherit;font-size:inherit;border-radius:0;display:block;white-space:pre}.code-line{display:block;padding-left:1rem;padding-right:1rem;margin-left:-1rem;margin-right:-1rem;transition:all 0.2s ease;position:relative;white-space:pre;line-height:inherit;border-left:2px solid transparent}.code-line::after{content:'\\a';white-space:pre}.code-line.highlighted{background:rgba(200, 200, 200, 0.15)!important;border-left:2px solid #d0d0d0;padding-left:calc(1rem - 2px);min-height:1.5em}.code-line.highlighted::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#d0d0d0;z-index:1}.code-line.highlighted+.code-line.highlighted{border-top:none}.code-line.highlighted:not(.code-line.highlighted+.code-line.highlighted){border-top-left-radius:4px}.code-line.highlighted:not(:has(+.code-line.highlighted)){border-bottom-left-radius:4px}.line-number{display:inline-block;min-width:2.5em;padding-right:1em;margin-right:0.5em;text-align:right;color:#858585;user-select:none;border-right:1px solid #404040}@media (prefers-color-scheme: dark){.content-section p{color:#c0c0c0}.content-section code{background:rgba(255, 255, 255, 0.1)}.code-panel{border-color:#404040}}@media (max-width: 768px){.code-panel{position:relative;top:0;max-height:400px}.split-layout{grid-template-columns:1fr}}.code-content [data-testid=\"copy-code-button\"]{display:none!important}.code-content #ask-ai-code-block-button{display:none!important}div[data-fade-overlay=\"true\"]{--fade-color-light: transparent !important;--fade-color-dark: transparent !important;display:none!important}:has([data-floating-buttons])>[data-component-part=code-block-root] pre>code{padding-right:0px!important}@media (max-width: 768px){.code-panel{position:relative;top:0;height:400px}}"},{"filePath":"ai-2-0/snippets/components/ConnectorDetailsHeader/ConnectorDetailsHeader.css","content":".container{margin:48px 0px!important;display:flex;flex-direction:column;gap:6px}.Heading{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--default-border-color)}.ConnectorName{font-size:32px;font-weight:700;margin-bottom:0px}.PlatformDetails{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--gray-text-color)}.PlatformIcon{padding:4px;background-color:var(--connector-icon-bg-color);border:1px solid var(--default-border-color);border-radius:12px}.ImageContainer{background-color:var(--connector-icon-bg-color);padding:12px;border:1px solid var(--default-border-color);border-radius:28px}.IconContainer{background-color:#F8F9FC;padding:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0}.ConnectorIcon{width:32px!important;height:32px!important;object-fit:contain;display:block;margin:0}.FeaturesHeading{font-size:14px;color:var(--gray-text-color)}.SubHeading{display:flex;flex-direction:column;gap:8px}.FeaturesList{display:flex;flex-wrap:wrap;gap:12px}.FeatureTag{padding:4px 10px;font-size:12px;border-radius:14px;width:fit-content;display:flex;align-items:center;gap:4px}.AvailableFeature{color:var(--green-tag-color);border:1px solid var(--green-tag-color);background-color:var(--green-tag-bg-color)}.UnavailableFeature{color:var(--orange-tag-color);border:1px solid var(--orange-tag-color);background-color:var(--orange-tag-bg-color)}.StageBadge{font-size:10px;height:auto;color:var(--green-tag-color)}"},{"filePath":"ai-2-0/snippets/components/ConnectorFilter/ConnectorFilter.css","content":".connector-filter{--connector-filter-accent: #1570ef;position:sticky;top:0;z-index:20;margin:20px 0 28px;padding:16px;border:1px solid var(--default-border-color, #e5e7eb);border-radius:8px;background-color:var(--background-color, #fff);box-shadow:0 2px 8px rgba(15, 23, 42, 0.06)}.connector-filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.connector-filter-field{display:flex;flex-direction:column;gap:6px;flex:1 1 160px;min-width:140px}.connector-filter-search-field{flex:1 1 170px;min-width:140px}.connector-filter-field label{font-size:14px;font-weight:600;color:var(--default-text-color, #374151)}.connector-filter-search{display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border:1px solid var(--select-border-color, #d1d5db);border-radius:6px;background-color:var(--background-color, #fff);color:var(--gray-text-color, #6b7280)}.connector-filter-search:focus-within{border-color:var(--connector-filter-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--connector-filter-accent) 20%, transparent)}.connector-filter-search svg{flex-shrink:0}.connector-filter-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:13px;color:var(--default-text-color, #111827)}.connector-filter-dropdown{position:relative}.connector-filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:36px;padding:0 10px;border:1px solid var(--select-border-color, #d1d5db);border-radius:6px;background-color:var(--background-color, #fff);color:var(--default-text-color, #111827);font-size:13px;cursor:pointer;text-align:left}.connector-filter-trigger:hover{border-color:var(--connector-filter-accent)}.connector-filter-trigger[aria-expanded=\"true\"]{border-color:var(--connector-filter-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--connector-filter-accent) 20%, transparent)}.connector-filter-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connector-filter-chevron{flex-shrink:0;color:var(--gray-text-color, #6b7280);transition:transform 0.15s ease}.connector-filter-chevron-open{transform:rotate(180deg);color:var(--connector-filter-accent)}.connector-filter-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;max-height:320px;overflow-y:auto;margin:0;padding:6px;list-style:none;border:1px solid var(--default-border-color, #e5e7eb);border-radius:8px;background-color:var(--background-color, #fff);box-shadow:0 8px 24px rgba(15, 23, 42, 0.12)}.connector-filter-menu li{list-style:none}.connector-filter-menu li::marker,.connector-filter-menu li::before{content:none}.connector-filter-menu li[role=\"option\"]{padding:7px 10px;border-radius:5px;font-size:13px;color:var(--default-text-color, #111827);cursor:pointer}.connector-filter-menu li[role=\"option\"]:hover{background-color:var(--primary-background-color, rgba(21, 112, 239, 0.08))}.connector-filter-menu li[role=\"option\"].active{background-color:var(--primary-background-color, rgba(21, 112, 239, 0.1));color:var(--connector-filter-accent);font-weight:600}.connector-filter-group-label{padding:6px 10px 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--gray-text-color, #9ca3af)}.connector-filter-reset{flex-shrink:0;margin-left:auto;height:36px;padding:0 14px;border:1px solid var(--connector-filter-accent);border-radius:6px;background-color:transparent;color:var(--connector-filter-accent);font-size:13px;font-weight:600;cursor:pointer}.connector-filter-reset:hover{background-color:color-mix(in srgb, var(--connector-filter-accent) 10%, transparent)}"},{"filePath":"ai-2-0/snippets/components/ConnectorGrid/Integrations.css","content":".no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.integrations-section{padding:3rem 1rem 9rem;max-width:1300px;margin:0 auto}.integrations-card{background:#FAFAFA;border-radius:12px;border:1px solid #EAECF5;display:flex;height:660px;overflow:hidden;position:relative;padding:40px 40px 40px 0px}.integrations-mobile-header{display:none;width:100%;background:#ffffff;border-bottom:1px solid #d9daee;padding:32px;font-size:20px;justify-content:center;align-items:center;gap:12px;position:sticky;top:0;z-index:15;cursor:pointer}.arrow{transition:transform 0.3s ease}.arrow.open{transform:rotate(180deg)}.arrow-down{width:10px;height:10px}.integrations-sidebar{width:220px;border-right:1px solid #EAECF5;display:flex;flex-direction:column;position:sticky;top:0;z-index:5}.sidebar-item{display:block;width:100%;padding:12px 22px;font-size:16px;color:#535862;cursor:pointer;white-space:nowrap;flex-shrink:0;text-align:right;font-weight:500;border-right:2px solid transparent}.sidebar-item:hover{color:#414651;border-right:2px solid #D5D9EB}.sidebar-item.active{border-right:2px solid #004CD3;font-weight:600;color:#004CD3}.integrations-grid{flex:1;padding:20px 32px;overflow-y:auto;display:grid;gap:20px;align-content:flex-start}.integrations-grid.desktop{grid-template-columns:repeat(auto-fill, minmax(200px, 1fr))}.integrations-grid.mobile{display:none}.integration-card{max-height:110px;text-decoration:none;display:flex;align-items:center;gap:12px;background-color:white;box-shadow:0px 4px 12px -1px #0A0D1214;border-radius:12px;padding:12px 20px;box-sizing:border-box;transition:all 0.3s ease}.integration-card span{color:#181D27;font-weight:500;font-size:16px;line-height:120%}a.integration-card span:hover{text-decoration:none}a.integration-card:hover{box-shadow:0px 3px 3px -1.5px #0A0D120A,\n 0px 8px 8px -4px #0A0D1208,\n 0px 20px 24px -4px #0A0D1214;padding:16px 24px;margin:-4px;text-decoration:none;transform:translateY(-2px)}.integration-card img{width:32px;height:32px;object-fit:contain;flex-shrink:0}.load-more{grid-column:span 2;padding:24px;font-size:20px;background:#ffffff;border:none;cursor:pointer}@media (max-width: 1024px){.integrations-card{flex-direction:column;height:auto;padding:0px;overflow:auto}.integrations-mobile-header{display:flex}.integrations-sidebar{display:none;width:100%;position:absolute;top:98px;left:0;right:0;border-right:none;border-bottom:1px solid #d9daee;background:#ffffff;overflow-y:scroll}.integrations-sidebar.open{display:block}.sidebar-item{text-align:center}.sidebar-item.active{border-right:none}.integrations-grid.desktop{display:none}.integrations-grid.mobile{display:grid;grid-template-columns:repeat(2, 1fr);padding:24px}}"},{"filePath":"ai-2-0/snippets/components/ReleaseCarousel/ReleaseCarousel.css","content":".release-carousel{position:relative}.release-carousel-viewport{overflow:hidden}.release-carousel-content [data-as=\"p\"]{display:block;margin-bottom:24px;color:#344054;font-size:18px}.release-carousel-content [data-as=\"p\"] strong{color:#181D27;font-weight:700}.release-carousel-content a{display:inline-block}.release-carousel-title-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}.release-carousel-content .release-carousel-title-row h2{margin:0}.release-carousel-eyebrow{display:inline-block;flex-shrink:0;background-color:#F0F9FF;color:#0BA5EC;padding:4px 14px;border-radius:100px;font-size:13px;font-weight:600;letter-spacing:0.02em;text-transform:uppercase}.release-carousel-content.slide-next{animation:release-carousel-slide-next 0.45s ease}.release-carousel-content.slide-prev{animation:release-carousel-slide-prev 0.45s ease}@keyframes release-carousel-slide-next{from{opacity:0;transform:translateX(60px)}to{opacity:1;transform:translateX(0)}}@keyframes release-carousel-slide-prev{from{opacity:0;transform:translateX(-60px)}to{opacity:1;transform:translateX(0)}}.release-carousel-image{width:100%;max-width:1200px;display:block;border:3px solid #BED2FB;border-radius:16px;box-shadow:0px 2px 2px -1px #0A0D120A,\n 0px 4px 6px -2px #0A0D1208,\n 0px 12px 16px -4px #0A0D1214;cursor:zoom-in}.release-carousel-lightbox{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:40px;background-color:rgba(16, 24, 40, 0.85)}.release-carousel-lightbox-image{max-width:100%;max-height:100%;display:block;border-radius:12px;box-shadow:0px 12px 16px -4px #0A0D1214;cursor:default}.release-carousel-lightbox-close{position:absolute;top:24px;right:24px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255, 255, 255, 0.3);background-color:rgba(255, 255, 255, 0.1);color:white;cursor:pointer;transition:background-color 0.15s ease}.release-carousel-lightbox-close:hover{background-color:rgba(255, 255, 255, 0.2)}.release-carousel .carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid #BED2FB;background-color:white;color:#181D27;box-shadow:0px 2px 2px -1px #0A0D120A,\n 0px 4px 6px -2px #0A0D1208,\n 0px 12px 16px -4px #0A0D1214;cursor:pointer;transition:background-color 0.15s ease}.release-carousel .carousel-arrow:hover{background-color:#EFF4FF}.release-carousel .carousel-arrow-prev{left:16px}.release-carousel .carousel-arrow-next{right:16px}.release-carousel .carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}.release-carousel .carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background-color:#BED2FB;padding:0;cursor:pointer;transition:background-color 0.15s ease, transform 0.15s ease}.release-carousel .carousel-dot.active{background-color:#1570EF;transform:scale(1.2)}@media (max-width: 1024px){.release-carousel .carousel-arrow-prev{left:4px}.release-carousel .carousel-arrow-next{right:4px}}@media (max-width: 768px){.release-carousel .carousel-arrow{width:32px;height:32px}}"}],"page":{"pagePath":"ai-2-0/connectors/drive/custom-drive","slug":"/ai-2-0/connectors/drive/custom-drive","pageMetadata":{"title":"Custom Drive Connector","description":"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.","slug":"/ai-2-0/connectors/drive/custom-drive","sidebarTitle":"Overview","href":"/ai-2-0/connectors/drive/custom-drive/index"},"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: \"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,OptimizedFrame,OptimizedImage,Table,Tip}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedFrame)_missingMdxReference(`OptimizedFrame`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`1`,id:`custom-drive-connector`,children:`Custom Drive Connector`}),`\n`,_jsxs(_components.p,{children:[`Just like other services in Collate (Database, Pipelines, Dashboards, Messaging, and so on), it’s possible to create a `,_jsx(_components.strong,{children:`Custom Drive Connector`}),` to bring metadata from a storage or file system-like service into Collate.`]}),`\n`,_jsx(_components.p,{children:`This guide walks through how to implement your own Custom Drive Connector by extending the ingestion framework. The implementation pattern follows other service types closely, making the transition smooth for anyone familiar with the ecosystem.`}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Tip`}),`: Review the `,_jsx(_components.a,{href:`https://github.com/open-metadata/OpenMetadata/blob/main/ingestion/tests/integration/custom_connectors/custom_drive.py`,children:`tested Custom Drive connector`}),` for a complete implementation.`]})}),`\n`,_jsx(_components.p,{children:`Watch Collate’s Webinar on Custom Connectors to get more context on how to build these integrations.`}),`\n`,_jsx(OptimizedFrame,{width:`800`,height:`450`,src:`https://www.youtube.com/embed/fDUj30Ub9VE?si=h1F_tckA_45V2ux3`,title:`YouTube video player`,frameborder:`0`,allow:`accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share`,referrerpolicy:`strict-origin-when-cross-origin`,allowfullscreen:true}),`\n`,_jsx(Heading,{level:`2`,id:`steps-to-set-up-a-custom-drive-connector`,children:`Steps to Set Up a Custom Drive Connector`}),`\n`,_jsx(Heading,{level:`3`,id:`step-1-prepare-your-drive-connector`,children:`Step 1 - Prepare Your Drive Connector`}),`\n`,_jsx(_components.p,{children:`A Custom Drive Connector is a Python class that inherits from:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.ingestion.api.steps `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Source`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`It must implement required methods such as:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`prepare`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`_iter`})}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`test_connection`}),` (optional but recommended so the UI can validate access)`]}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`custom_drive`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`/`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` my_drive_connector.py`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Inside`}),` `,_jsx(_components.code,{children:`my_drive_connector.py`}),`, `,_jsx(_components.strong,{children:`define your class`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`class`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#4EC9B0`},children:` MyDriveConnector`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`Source`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:` ...`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` _iter`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`self`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:` ...`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Tip`}),`: `,_jsx(_components.code,{children:`_iter`}),` is a generator that produces the `,_jsx(_components.code,{children:`CreateEntityRequest`}),` instances expected by the ingestion framework.`]})}),`\n`,_jsxs(_components.p,{children:[`For more on the ingestion framework, refer to the `,_jsx(_components.a,{href:`/ai-2-0/how-to-guides/guide-for-data-users/ingestion/workflows`,children:`Ingestion Workflow Docs`}),`.`]}),`\n`,_jsx(Heading,{level:`3`,id:`step-2-yield-drive-data-as-entities`,children:`Step 2 - Yield Drive Data as Entities`}),`\n`,_jsxs(_components.p,{children:[`You need to yield `,_jsx(_components.code,{children:`CreateEntityRequest`}),` objects wrapped in an `,_jsx(_components.code,{children:`Either`}),` type. This pattern handles both successful entity creation and errors.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Import necessary types`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.ingestion.api.models `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Either, StackTraceError`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.generated.schema.api.data.createDirectory `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` CreateDirectoryRequest`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.generated.schema.api.data.createFile `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` CreateFileRequest`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.generated.schema.api.data.createSpreadsheet `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` CreateSpreadsheetRequest`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` metadata.generated.schema.api.data.createWorksheet `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` CreateWorksheetRequest`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Example usage`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`30`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`30`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` directory `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` self`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.drive_client.list_directories():`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` try`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` yield`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Either(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` right`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CreateDirectoryRequest(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` name`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`directory.name,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` description`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`directory.description,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` parent`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`directory.parent_fqn,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` href`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`directory.href,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` except`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:` Exception`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` as`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` exc:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` yield`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Either(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` left`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`StackTraceError(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` name`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Drive Directory Ingestion Error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` error`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:`str`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(exc),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` stack_trace`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`traceback.format_exc(),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` file_metadata `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` self`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.drive_client.list_files():`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` yield`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Either(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` right`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`CreateFileRequest(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` name`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_metadata.name,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` description`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_metadata.description,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` fileFormats`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_metadata.file_formats,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` parent`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_metadata.parent_directory_fqn,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` size`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`file_metadata.size,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Extend the same pattern with `,_jsx(_components.code,{children:`CreateSpreadsheetRequest`}),` and `,_jsx(_components.code,{children:`CreateWorksheetRequest`}),` if your Drive service exposes those concepts.`]}),`\n`,_jsx(Heading,{level:`3`,id:`step-3-package-your-custom-drive-connector`,children:`Step 3 - Package Your Custom Drive Connector`}),`\n`,_jsxs(_components.p,{children:[`To use the connector, package it as a Python module. A minimal `,_jsx(_components.code,{children:`setup.py`}),` may look like:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`10`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` setuptools `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` setup, find_packages`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`setup(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` name`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"custom_drive_connector\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` version`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0.1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` packages`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`find_packages(),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` install_requires`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[],`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Build the package`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`python`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` setup.py`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` sdist`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`step-4-update-the-ingestion-image`,children:`Step 4 - Update the Ingestion Image`}),`\n`,_jsx(_components.p,{children:`To run your Custom Drive Connector inside Docker (for example, with Airflow or directly from the UI), the ingestion image must include your module.`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Dockerfile example`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`10`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`FROM`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` openmetadata/ingestion:2.0.5`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`WORKDIR`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ingestion`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`USER`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` airflow`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` custom_drive custom_drive`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` setup.py .`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` pip install --no-deps .`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`This ensures that your code is baked into the ingestion container. Always align the ingestion image tag with the Collate version that is running your server/UI.`}),`\n`,_jsx(Heading,{level:`3`,id:`step-5-run-collate-with-custom-image`,children:`Step 5 - Run Collate with Custom Image`}),`\n`,_jsx(_components.p,{children:`If you’re using Docker Compose, update your setup to use the new image.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`make`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`make`,children:_jsxs(_components.code,{language:`make`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`run`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`\tdocker compose -f docker-compose.yml up --build`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`step-6-configure-custom-drive-in-collate-ui`,children:`Step 6 - Configure Custom Drive in Collate UI`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Connections`}),` in the left navigation and select the `,_jsx(_components.strong,{children:`Drive`}),` service.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add New Service`}),` and select `,_jsx(_components.strong,{children:`Custom`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Enter your Source Python Class as:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`custom_drive.my_drive_connector.MyDriveConnector`})}),`\n`]})})}),`\n`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Ensure the full module path is specified so Collate can import the connector.`}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=16db1fe545da6b814fe7943fa50a04a0`,alt:`Custom Connector`,\"data-og-width\":`862`,width:`862`,\"data-og-height\":`679`,height:`679`,\"data-path\":`public/images/connectors/custom-drive.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=280\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=bb262295f08a64faaf9bc5a6d78d5681 280w, https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=560\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=33c457897a647c0e926bb17de112ce5e 560w, https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=840\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=318fc02696075794c0d87507c09987bd 840w, https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=1100\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=796cd3024c17f8fea87bbb049fd2f1e1 1100w, https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=1650\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=91d63bc3f1a1debd17aadcc75a011b80 1650w, https://mintcdn.com/collatedocs/12mtkhFtvTP7FUxZ/public/images/connectors/custom-drive.png?w=2500\u0026fit=max\u0026auto=format\u0026n=12mtkhFtvTP7FUxZ\u0026q=85\u0026s=9c03d712b293efdeeca48c0e7a70902d 2500w`}),`\n`,_jsx(Heading,{level:`2`,id:`configure-metadata-agent-and-schedule-ingestion`,children:`Configure Metadata Agent and Schedule Ingestion`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Metadata Agent`}),` extracts directories, files, spreadsheets, and other structural metadata from your source and keeps your Collate catalog in sync. It powers discovery, lineage, and governance across your data assets.`]}),`\n`,_jsxs(_components.p,{children:[`When you click `,_jsx(_components.strong,{children:`Create \u0026 Deploy`}),`, Collate automatically deploys a Metadata Agent for this service and triggers the first ingestion run. View its status and run history from the `,_jsx(_components.strong,{children:`Agents`}),` tab on the service detail page.`]}),`\n`,_jsx(_components.p,{children:`To configure the additional Metadata Agent and schedule ingestion, follow these steps:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`In the left navigation, click `,_jsx(_components.strong,{children:`Connections`}),` and select your service.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Click the `,_jsx(_components.strong,{children:`Agents`}),` tab.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add Agent`}),` and select `,_jsx(_components.strong,{children:`Metadata`}),` from the dropdown.`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=accad7d1c4ddf209781bff851d51d464`,alt:`Add Metadata Agent`,\"data-og-width\":`2398`,width:`2398`,\"data-og-height\":`1144`,height:`1144`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=280\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=5dd44ba435bfeceaac84230d7264bbb7 280w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=560\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=e12f79a7373a46d04c36efa093be483d 560w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=840\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=12950eeae4d2cd9426638f175af8b0fe 840w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=1100\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=7486cc2baf8d72718c07bb3dac96f46e 1100w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=1650\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=0e364bcd336536ae5930b8346e9d084d 1650w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/add-metadata-agent.png?w=2500\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=fde1825dbe05f0280ad8bdc4a5b1be2d 2500w`}),`\n`,_jsxs(_components.p,{children:[`For some services, the dropdown is not available and clicking `,_jsx(_components.strong,{children:`Add Agent`}),` takes you directly to the agent configuration page.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`On the `,_jsx(_components.strong,{children:`Configure Ingestion`}),` page, do the following and click `,_jsx(_components.strong,{children:`Next`}),`.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Name this Ingestion`}),`: Enter a unique, recognizable name for this ingestion pipeline.`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=d5ec1f0f3742cadab8cd54c602c97239`,alt:`Name this Ingestion`,\"data-og-width\":`1578`,width:`1578`,\"data-og-height\":`644`,height:`644`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=280\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=8c9726beb9254f2e85812bf763fd98f1 280w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=560\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=2b18fb762c382687a512bf9248da4517 560w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=840\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=76d14c21296ecbc014bcdf38ac64c18b 840w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=1100\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=28bdf6284e38e5462a9473e86d897e29 1100w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=1650\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=011cb42c178a72fefb1b147555e7b639 1650w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/metadata-agent-name.png?w=2500\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=ef78049f242030d5e4c08f05c19aa46f 2500w`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Agent Setup`}),`: Configure the core parameters for this agent. The following fields are available:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Number of Threads`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`1`}),_jsx(_components.td,{children:`Number of threads to use for parallel drive ingestion.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Mark Deleted Directories`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Soft-delete directories in Collate when they are removed from the source. Associated entities like files, spreadsheets, worksheets, and lineage are also deleted.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Mark Deleted Files`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Soft-delete files in Collate when they are removed from the source. Associated entities like lineage are also deleted.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Mark Deleted Spreadsheets`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Soft-delete spreadsheets in Collate when they are removed from the source. Associated entities like worksheets and lineage are also deleted.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Mark Deleted Worksheets`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Soft-delete worksheets in Collate when they are removed from the source. Associated entities like lineage are also deleted.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Directories`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Fetch directory metadata. Turn off to skip directories entirely.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Files`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Fetch file metadata. Turn off to skip files entirely.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Spreadsheets`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Fetch spreadsheet metadata. Turn off to skip spreadsheets entirely.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Worksheets`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Fetch worksheet metadata. Turn off to skip worksheets entirely.`})]})]})]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=8a132a356d8ea3314299b648265a253c`,alt:`Agent Setup`,\"data-og-width\":`1530`,width:`1530`,\"data-og-height\":`1558`,height:`1558`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=280\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=9db3e1c2a848e662179c17ca57102fef 280w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=560\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=3b137d080ef1256c46388372c5706cde 560w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=840\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=9c6906a45ec948d2a558d5eeb32dda04 840w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=1100\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=cbc96d159975c774b495bae757c402ef 1100w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=1650\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=08afe52622def4d03d54f6bcc62349f8 1650w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-agent-setup.png?w=2500\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=2465e5a1e79e74b3341f16682836e108 2500w`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Filter Patterns`}),`: Apply include or exclude rules to scope which directories, files, spreadsheets, and worksheets this agent ingests. Use FQN for filtering to apply regex on fully qualified names (e.g. `,_jsx(_components.code,{children:`service_name.directory_name.file_name`}),`) instead of raw names. These follow the same filter options described in `,_jsx(_components.strong,{children:`Step 5`}),`.`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=1337b9f82862926e08662b4f1fb0013b`,alt:`Filter Patterns`,\"data-og-width\":`1570`,width:`1570`,\"data-og-height\":`1040`,height:`1040`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=280\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=e61866efc6d3cd832b7f6080d984ce3e 280w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=560\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=72ec0c3a14dd104d9dffcb3d0024fb3f 560w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=840\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=d9f2a51a06d857fad27f7e792b2351f0 840w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=1100\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=fd1ad0ee0b903b1df8fec82397b24b03 1100w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=1650\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=2604e88ab540f5f832e7fb51296a1b50 1650w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-filter-pattern.png?w=2500\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=f9955482c45ffb392873e50e16947860 2500w`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Scope \u0026 Behaviour`}),`: Control what metadata to include and how to handle deletions. Toggle each option on or off based on your needs:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Toggle`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Enable Debug Log`}),_jsx(_components.td,{children:`Off`}),_jsx(_components.td,{children:`Sets the ingestion log level to DEBUG. Useful for troubleshooting.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Tags`}),_jsx(_components.td,{children:`On`}),_jsx(_components.td,{children:`Ingest tags from the source.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include Owners`}),_jsx(_components.td,{children:`Off`}),_jsx(_components.td,{children:`Assign owners from the source when the owner email matches a Collate user. Does not overwrite an existing owner.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Override Metadata`}),_jsx(_components.td,{children:`Off`}),_jsx(_components.td,{children:`When on, source values overwrite existing descriptions, tags, owners, and display names in Collate. A description or display name that the source doesn’t send never replaces an existing value. If the connector supplies custom properties, the values it sends are merged over the existing ones: properties the source sends overwrite, and properties it doesn’t send are kept. When off, Collate only updates fields that have no existing value.`})]})]})]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=508c5978a32083dabbc5443f2a1ec4b4`,alt:`Scope \u0026 Behaviour`,\"data-og-width\":`1562`,width:`1562`,\"data-og-height\":`894`,height:`894`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=280\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=3411f6ce123e01a207b1129be90e2aae 280w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=560\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=1da374b43919c4df0046982a2b28b381 560w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=840\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=105c1b25b587a19f2d979a367421bdc5 840w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=1100\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=8bbf96335660782946f8f02740585be2 1100w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=1650\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=7d91881f62b4aa74ba3bd8adb4a06228 1650w, https://mintcdn.com/collatedocs/tVR0kaoXvgs3p2Wx/public/images/ai-2.0/connectors/metadata-ingestion/Drive/drive-scope-behaviour.png?w=2500\u0026fit=max\u0026auto=format\u0026n=tVR0kaoXvgs3p2Wx\u0026q=85\u0026s=21abd35096b257fa66bdd173d75e0248 2500w`}),`\n`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`On the `,_jsx(_components.strong,{children:`Schedule Interval`}),` page, set when the agent runs:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Schedule`}),`: Choose a preset interval (Hourly, Daily, Weekly, Monthly) or enter a custom cron expression.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`On-Demand`}),`: No automatic schedule; trigger the agent manually when needed.`]}),`\n`]}),`\n`,_jsx(OptimizedImage,{src:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=25cc1d78f6f2a8bd115830d034d1d8d1`,alt:`Schedule Interval`,\"data-og-width\":`1588`,width:`1588`,\"data-og-height\":`1044`,height:`1044`,\"data-path\":`public/images/ai-2.0/connectors/metadata-ingestion/schedule.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=280\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=47a0efda46c158378df3a9e4f9b1c2ba 280w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=560\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=4ede80735b78422dfdca53f9f1432be9 560w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=840\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=c666190f7fbdab0cf3058d2afcb219ca 840w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=1100\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=736b9cc450ec376e50e3c7f966488373 1100w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=1650\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=6fda888d0a139760e7975d067cd307c8 1650w, https://mintcdn.com/collatedocs/bv5oe4uRjuorTJO1/public/images/ai-2.0/connectors/metadata-ingestion/schedule.png?w=2500\u0026fit=max\u0026auto=format\u0026n=bv5oe4uRjuorTJO1\u0026q=85\u0026s=322e33466a7fe82528fbc00ea82106a4 2500w`}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Add`}),` to deploy the agent.`]}),`\n`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Custom Drive Connector","description":"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.","slug":"/ai-2-0/connectors/drive/custom-drive","sidebarTitle":"Overview","href":"/ai-2-0/connectors/drive/custom-drive/index"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Custom Drive Connector","slug":"custom-drive-connector","depth":1,"children":[]},{"title":"Steps to Set Up a Custom Drive Connector","slug":"steps-to-set-up-a-custom-drive-connector","depth":2,"children":[{"title":"Step 1 - Prepare Your Drive Connector","slug":"step-1-prepare-your-drive-connector","depth":3,"children":[]},{"title":"Step 2 - Yield Drive Data as Entities","slug":"step-2-yield-drive-data-as-entities","depth":3,"children":[]},{"title":"Step 3 - Package Your Custom Drive Connector","slug":"step-3-package-your-custom-drive-connector","depth":3,"children":[]},{"title":"Step 4 - Update the Ingestion Image","slug":"step-4-update-the-ingestion-image","depth":3,"children":[]},{"title":"Step 5 - Run Collate with Custom Image","slug":"step-5-run-collate-with-custom-image","depth":3,"children":[]},{"title":"Step 6 - Configure Custom Drive in Collate UI","slug":"step-6-configure-custom-drive-in-collate-ui","depth":3,"children":[]}]},{"title":"Configure Metadata Agent and Schedule Ingestion","slug":"configure-metadata-agent-and-schedule-ingestion","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/collatedocs/193c43da98baa789/loader.js"],"subdomain":"collatedocs","siteName":"Collate Documentation","title":"Custom Drive Connector - Collate Documentation","navMaps":{"firstHrefInVersion":{"AI 2.0":{"href":"/ai-2-0/connectors/api/index","matchLevel":2},"Classic":{"href":"/connectors","matchLevel":2}},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T09:37:50.794Z","originalFileLocation":"ai-2-0/connectors/drive/custom-drive/index.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Collate Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index,follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Custom Drive Connector - Collate Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Collate Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://collatedocs.mintlify.site/_mintlify/api/og/v2?division=Custom+Drive\u0026amp;title=Custom+Drive+Connector\u0026amp;description=Learn+how+to+create+a+Custom+Drive+Connector+to+ingest+metadata+from+file+system-like+services+into+Collate+using+the+ingestion+framework.\u0026amp;theme=92c37872cb6ce8ffd4c333e7\u0026amp;signature=493edc54809227e6f56aa3d611fa0cde384f191539395fc1c952e18ec910830b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Custom Drive Connector - Collate Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://collatedocs.mintlify.site/_mintlify/api/og/v2?division=Custom+Drive\u0026amp;title=Custom+Drive+Connector\u0026amp;description=Learn+how+to+create+a+Custom+Drive+Connector+to+ingest+metadata+from+file+system-like+services+into+Collate+using+the+ingestion+framework.\u0026amp;theme=92c37872cb6ce8ffd4c333e7\u0026amp;signature=493edc54809227e6f56aa3d611fa0cde384f191539395fc1c952e18ec910830b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/collatedocs/Wy3ST-458y16Xhek/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Collate Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1570EF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/ai-2-0/connectors/drive/custom-drive.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.getcollate.io/#organization\",\"name\":\"Collate Documentation\",\"url\":\"https://docs.getcollate.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/collatedocs/yvgGxaeRR5RwtQo6/public/images/icons/collate-logo.svg?fit=max\u0026auto=format\u0026n=yvgGxaeRR5RwtQo6\u0026q=85\u0026s=59d7983952a91cd53138369f2e21a5ac\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.getcollate.io#website\",\"name\":\"Collate Documentation\",\"url\":\"https://docs.getcollate.io\",\"publisher\":{\"@id\":\"https://docs.getcollate.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive#webpage\",\"url\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive\",\"name\":\"Custom Drive Connector\",\"description\":\"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\",\"dateModified\":\"2026-11-05T09:37:50.794Z\",\"isPartOf\":{\"@id\":\"https://docs.getcollate.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Connectors\",\"item\":\"https://docs.getcollate.io/ai-2-0/connectors/api/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Drive\",\"item\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/index\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Custom Drive\",\"item\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive/index\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Custom Drive Connector\",\"item\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive#article\",\"headline\":\"Custom Drive Connector\",\"name\":\"Custom Drive Connector\",\"description\":\"Learn how to create a Custom Drive Connector to ingest metadata from file system-like services into Collate using the ingestion framework.\",\"url\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive\",\"mainEntityOfPage\":{\"@id\":\"https://docs.getcollate.io/ai-2-0/connectors/drive/custom-drive#webpage\"},\"dateModified\":\"2026-11-05T09:37:50.794Z\",\"publisher\":{\"@id\":\"https://docs.getcollate.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.getcollate.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Collate Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Collate Documentation","nav":{"global":null,"versions":[{"version":"AI 2.0","default":true,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":""}]},{"tab":"Release 2.0","pages":[{"title":"Release 2.0","href":"/ai-2-0/release-2.0"}]},{"tab":"Get Started","pages":[{"title":"Get Started","href":"/ai-2-0/getting-started"}]},{"tab":"Connectors","groups":[{"group":"Connectors","pages":[{"title":"Connectors | Integration Doc","sidebarTitle":"Connectors","href":"/ai-2-0/connectors"}]},{"group":"Connectors","pages":[{"group":"API","pages":[{"title":"API Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/api/index"},{"group":"REST","pages":[{"title":"REST API Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/api/rest/index"},{"title":"REST API Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/api/rest/hybrid-runner"},{"title":"REST API Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/api/rest/troubleshooting"}]}]},{"group":"Database","pages":[{"title":"Database Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/database/index"},{"group":"ADLS Datalake","pages":[{"title":"ADLS Datalake Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/adls-datalake/index"},{"title":"ADLS Datalake Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/adls-datalake/hybrid-runner"},{"title":"ADLS Datalake Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/adls-datalake/troubleshooting"}]},{"group":"Athena","pages":[{"title":"Athena Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/athena/index"},{"title":"Athena Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/athena/hybrid-runner"},{"title":"Athena Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/athena/troubleshooting"}]},{"group":"AzureSQL","pages":[{"title":"AzureSQL Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/azuresql/index"},{"title":"AzureSQL Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/azuresql/hybrid-runner"},{"title":"AzureSQL Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/azuresql/troubleshooting"}]},{"group":"BigQuery","pages":[{"title":"BigQuery Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/bigquery/index"},{"title":"BigQuery Create Credentials","sidebarTitle":"Create Credentials","href":"/ai-2-0/connectors/database/bigquery/create-credentials"},{"title":"BigQuery Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/bigquery/hybrid-runner"},{"title":"BigQuery Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/bigquery/troubleshooting"}]},{"group":"BigTable","pages":[{"title":"BigTable Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/bigtable/index"},{"title":"BigTable Roles","sidebarTitle":"Roles","href":"/ai-2-0/connectors/database/bigtable/roles"},{"title":"BigTable Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/bigtable/hybrid-runner"},{"title":"BigTable Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/bigtable/troubleshooting"}]},{"group":"BurstIQ","pages":[{"title":"BurstIQ Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/burstiq/index"},{"title":"BurstIQ Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/burstiq/hybrid-runner"},{"title":"BurstIQ Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/burstiq/troubleshooting"}]},{"group":"Cassandra","pages":[{"title":"Cassandra Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/cassandra/index"},{"title":"Cassandra Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/cassandra/hybrid-runner"},{"title":"Cassandra Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/cassandra/troubleshooting"}]},{"group":"ClickHouse","pages":[{"title":"ClickHouse Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/clickhouse/index"},{"title":"ClickHouse Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/clickhouse/hybrid-runner"},{"title":"ClickHouse Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/clickhouse/troubleshooting"}]},{"group":"ClickZetta","pages":[{"title":"ClickZetta Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/database/clickzetta/index"},{"title":"ClickZetta Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/clickzetta/hybrid-runner"},{"title":"ClickZetta Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/clickzetta/troubleshooting"}]},{"group":"CockroachDB","pages":[{"title":"CockroachDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/cockroach/index"},{"title":"CockroachDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/cockroach/hybrid-runner"},{"title":"CockroachDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/cockroach/troubleshooting"}]},{"group":"Couchbase","pages":[{"title":"Couchbase Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/couchbase/index"},{"title":"Couchbase Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/couchbase/hybrid-runner"},{"title":"Couchbase Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/couchbase/troubleshooting"}]},{"group":"Databricks","pages":[{"title":"Databricks Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/databricks/index"},{"title":"Databricks Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/databricks/hybrid-runner"},{"title":"Databricks Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/databricks/troubleshooting"}]},{"group":"DB2","pages":[{"title":"DB2 Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/db2/index"},{"title":"DB2 Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/db2/hybrid-runner"},{"title":"DB2 Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/db2/troubleshooting"}]},{"group":"dbt","pages":[{"title":"dbt Workflow | Data Build Tool Integration","sidebarTitle":"Overview","href":"/ai-2-0/connectors/database/dbt/index"},{"title":"dbt Cloud API Configuration","sidebarTitle":"dbt Cloud API","href":"/ai-2-0/connectors/database/dbt/dbt-cloud-api-guide"},{"group":"dbt Core","pages":[{"title":"dbt Artifact Configuration Guide","sidebarTitle":"Overview","href":"/ai-2-0/connectors/database/dbt/storage-configuration-overview"},{"title":"dbt Artifact Storage - AWS S3 Configuration","sidebarTitle":"S3 Configuration","href":"/ai-2-0/connectors/database/dbt/storage-s3-guide"},{"title":"dbt Artifact Storage - Google Cloud Storage Configuration","sidebarTitle":"GCS Configuration","href":"/ai-2-0/connectors/database/dbt/storage-gcs-guide"},{"title":"dbt Artifact Storage - Azure Blob Storage Configuration","sidebarTitle":"Azure Configuration","href":"/ai-2-0/connectors/database/dbt/storage-azure-guide"},{"title":"dbt Artifact Storage - HTTP Server Configuration","sidebarTitle":"HTTP Configuration","href":"/ai-2-0/connectors/database/dbt/storage-http-guide"},{"title":"dbt Artifact Storage - Local Filesystem Configuration","sidebarTitle":"Local Configuration","href":"/ai-2-0/connectors/database/dbt/storage-local-guide"}]},{"title":"Configure dbt workflow","sidebarTitle":"Configure dbt workflow","href":"/ai-2-0/connectors/database/dbt/configure-dbt-workflow"},{"title":"Run dbt Workflow Externally","sidebarTitle":"Run Externally","mode":"wide","href":"/ai-2-0/connectors/database/dbt/run-dbt-workflow-externally"},{"title":"Auto Ingest dbt-core","sidebarTitle":"Auto Ingest dbt Core Artifacts","href":"/ai-2-0/connectors/database/dbt/auto-ingest-dbt-core"},{"title":"Ingest Owner from dbt","sidebarTitle":"Ingest dbt Owner","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-owner"},{"title":"Ingest Descriptions from dbt","sidebarTitle":"Ingest dbt Descriptions","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-descriptions"},{"title":"Ingest Tags from dbt | Metadata Tagging Guide","sidebarTitle":"Ingest dbt Tags","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-tags"},{"title":"Ingest Tiers from dbt | Data Tiering Guide","sidebarTitle":"Ingest dbt Tiers","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-tier"},{"title":"Ingest Domain from dbt | Domain Assignment Guide","sidebarTitle":"Ingest dbt Domain","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-domain"},{"title":"Ingest Custom Properties from dbt | Custom Metadata Guide","sidebarTitle":"Ingest dbt Custom Properties","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-custom-properties"},{"title":"Ingest Glossary from dbt","sidebarTitle":"Ingest dbt Glossary","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-glossary"},{"title":"Ingest Lineage from dbt","sidebarTitle":"Ingest dbt Lineage","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-lineage"},{"title":"Ingest Exposures from dbt | Downstream Lineage Guide","sidebarTitle":"Ingest dbt Exposures","href":"/ai-2-0/connectors/database/dbt/ingest-dbt-exposures"},{"title":"Setup Multiple dbt Projects","sidebarTitle":"Setup Multiple dbt Projects","href":"/ai-2-0/connectors/database/dbt/setup-multiple-dbt-projects"},{"title":"dbt Troubleshooting | Integration Support","sidebarTitle":"dbt troubleshooting","href":"/ai-2-0/connectors/database/dbt/dbt-troubleshooting"}]},{"group":"Delta Lake","pages":[{"title":"DeltaLake Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/deltalake/index"},{"title":"DeltaLake Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/deltalake/hybrid-runner"},{"title":"DeltaLake Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/deltalake/troubleshooting"}]},{"group":"Domo Database","pages":[{"title":"Domo Database Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/domo-database/index"},{"title":"Domo Database Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/domo-database/hybrid-runner"},{"title":"Domo Database Troubleshooting","sidebarTitle":"Troubleshoot","href":"/ai-2-0/connectors/database/domo-database/troubleshoot"}]},{"group":"Doris","pages":[{"title":"Doris Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/doris/index"},{"title":"Doris Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/doris/hybrid-runner"},{"title":"Doris Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/doris/troubleshooting"}]},{"group":"Dremio","pages":[{"title":"Dremio Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/dremio/index"},{"title":"Dremio Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/dremio/hybrid-runner"},{"title":"Dremio Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/dremio/troubleshooting"}]},{"group":"Druid","pages":[{"title":"Druid Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/druid/index"},{"title":"Druid Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/druid/hybrid-runner"},{"title":"Druid Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/druid/troubleshooting"}]},{"group":"DynamoDB","pages":[{"title":"DynamoDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/dynamodb/index"},{"title":"DynamoDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/dynamodb/hybrid-runner"},{"title":"DynamoDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/dynamodb/troubleshooting"}]},{"group":"Epic","pages":[{"title":"Epic FHIR Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/epic/index"},{"title":"Epic FHIR Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/epic/hybrid-runner"},{"title":"Epic FHIR Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/epic/troubleshooting"}]},{"group":"Exasol","pages":[{"title":"Exasol Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/exasol/index"},{"title":"Exasol Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/exasol/hybrid-runner"},{"title":"Exasol Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/exasol/troubleshooting"}]},{"group":"GCS Datalake","pages":[{"title":"GCS Datalake Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/gcs-datalake/index"},{"title":"GCS Datalake Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/gcs-datalake/hybrid-runner"},{"title":"GCS Datalake Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/gcs-datalake/troubleshooting"}]},{"group":"Glue","pages":[{"title":"AWS Glue Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/glue/index"},{"title":"AWS Glue Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/glue/hybrid-runner"},{"title":"AWS Glue Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/glue/troubleshooting"}]},{"group":"Greenplum","pages":[{"title":"Greenplum Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/greenplum/index"},{"title":"Greenplum Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/greenplum/hybrid-runner"},{"title":"Greenplum Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/greenplum/troubleshooting"}]},{"group":"Hive","pages":[{"title":"Hive Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/hive/index"},{"title":"Hive Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/hive/hybrid-runner"},{"title":"Hive Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/hive/troubleshooting"}]},{"title":"Apache Iceberg","sidebarTitle":"Iceberg","href":"/ai-2-0/connectors/database/iceberg"},{"group":"Impala","pages":[{"title":"Impala Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/impala/index"},{"title":"Impala Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/impala/hybrid-runner"},{"title":"Impala Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/impala/troubleshooting"}]},{"group":"Informix","pages":[{"title":"IBM Informix Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/informix/index"},{"title":"IBM Informix Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/informix/hybrid-runner"},{"title":"IBM Informix Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/informix/troubleshooting"}]},{"group":"IOMETE","pages":[{"title":"IOMETE Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/iomete/index"},{"title":"IOMETE Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/iomete/hybrid-runner"},{"title":"IOMETE Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/iomete/troubleshooting"}]},{"group":"MariaDB","pages":[{"title":"MariaDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/mariadb/index"},{"title":"MariaDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/mariadb/hybrid-runner"},{"title":"MariaDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/mariadb/troubleshooting"}]},{"group":"Microsoft Access","pages":[{"title":"Microsoft Access Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/microsoftaccess/index"},{"title":"Microsoft Access Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/microsoftaccess/hybrid-runner"},{"title":"Microsoft Access Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/microsoftaccess/troubleshooting"}]},{"group":"Microsoft Fabric","pages":[{"title":"Microsoft Fabric Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/microsoftfabric/index"},{"title":"Microsoft Fabric Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/microsoftfabric/hybrid-runner"},{"title":"Microsoft Fabric Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/microsoftfabric/troubleshooting"}]},{"group":"MongoDB","pages":[{"title":"MongoDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/mongodb/index"},{"title":"MongoDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/mongodb/hybrid-runner"},{"title":"MongoDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/mongodb/troubleshooting"}]},{"group":"MSSQL","pages":[{"title":"MSSQL Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/mssql/index"},{"title":"MSSQL Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/mssql/hybrid-runner"},{"title":"MSSQL Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/mssql/troubleshoot"}]},{"group":"MySQL","pages":[{"title":"MySQL Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/mysql/index"},{"title":"MySQL Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/mysql/hybrid-runner"},{"title":"MySQL Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/mysql/troubleshooting"}]},{"group":"Oracle","pages":[{"title":"Oracle Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/oracle/index"},{"title":"Oracle Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/oracle/hybrid-runner"},{"title":"Oracle Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/oracle/troubleshooting"}]},{"group":"PinotDB","pages":[{"title":"PinotDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/pinotdb/index"},{"title":"PinotDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/pinotdb/hybrid-runner"},{"title":"PinotDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/pinotdb/troubleshooting"}]},{"group":"Postgres","pages":[{"title":"PostgreSQL Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/postgres/index"},{"title":"PostgreSQL Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/postgres/hybrid-runner"},{"title":"PostgreSQL Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/postgres/troubleshooting"}]},{"group":"Presto","pages":[{"title":"Presto Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/presto/index"},{"title":"Presto Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/presto/hybrid-runner"},{"title":"Presto Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/presto/troubleshooting"}]},{"group":"QuestDB","pages":[{"title":"QuestDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/questdb/index"},{"title":"QuestDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/questdb/hybrid-runner"},{"title":"QuestDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/questdb/troubleshooting"}]},{"group":"Redshift","pages":[{"title":"Redshift Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/redshift/index"},{"title":"Redshift Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/redshift/hybrid-runner"},{"title":"Redshift Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/redshift/troubleshooting"}]},{"group":"S3 Datalake","pages":[{"title":"S3 Datalake Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/s3-datalake/index"},{"title":"S3 Datalake Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/s3-datalake/hybrid-runner"},{"title":"S3 Datalake Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/s3-datalake/troubleshooting"}]},{"group":"Salesforce","pages":[{"title":"Salesforce Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/salesforce/index"},{"title":"Salesforce Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/salesforce/hybrid-runner"},{"title":"Salesforce Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/salesforce/troubleshooting"}]},{"group":"Salesforce Data 360","pages":[{"title":"Salesforce Data 360 Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/database/data360/index"},{"title":"Salesforce Data 360 Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/data360/hybrid-runner"},{"title":"Salesforce Data 360 Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/data360/troubleshooting"}]},{"group":"SAP ERP","pages":[{"title":"SAP ERP Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sap-erp/index"},{"title":"SAP ERP API Setup","sidebarTitle":"Setup SAP ERP APIs","href":"/ai-2-0/connectors/database/sap-erp/setup-sap-apis"},{"title":"SAP ERP Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sap-erp/hybrid-runner"},{"title":"SAP ERP Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sap-erp/troubleshooting"}]},{"group":"SAP HANA","pages":[{"title":"SAP HANA Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sap-hana/index"},{"title":"SAP HANA Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sap-hana/hybrid-runner"},{"title":"SAP HANA Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sap-hana/troubleshooting"}]},{"group":"SAP BW/4HANA","pages":[{"title":"SAP BW/4HANA Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sapbw4hana/index"},{"title":"SAP BW/4HANA Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sapbw4hana/hybrid-runner"},{"title":"SAP BW/4HANA Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sapbw4hana/troubleshoot"}]},{"group":"SAP SuccessFactors","pages":[{"title":"SAP SuccessFactors Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sap-successfactors/index"},{"title":"SAP SuccessFactors Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sap-successfactors/hybrid-runner"},{"title":"SAP SuccessFactors Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sap-successfactors/troubleshooting"}]},{"group":"SAS","pages":[{"title":"SAS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sas/index"},{"title":"SAS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sas/hybrid-runner"},{"title":"SAS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sas/troubleshooting"}]},{"group":"ServiceNow","pages":[{"title":"ServiceNow Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/servicenow/index"},{"title":"ServiceNow Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/servicenow/hybrid-runner"},{"title":"ServiceNow Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/servicenow/troubleshooting"}]},{"group":"SingleStore","pages":[{"title":"SingleStore Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/singlestore/index"},{"title":"SingleStore Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/singlestore/hybrid-runner"},{"title":"SingleStore Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/singlestore/troubleshooting"}]},{"group":"Snowflake","pages":[{"title":"Snowflake Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/snowflake/index"},{"title":"Snowflake Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/snowflake/hybrid-runner"},{"title":"Snowflake Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/snowflake/troubleshooting"}]},{"group":"SQLite","pages":[{"title":"SQLite Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/sqlite/index"},{"title":"SQLite Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/sqlite/hybrid-runner"},{"title":"SQLite Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/sqlite/troubleshooting"}]},{"group":"SSAS","pages":[{"title":"SSAS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/ssas/index"},{"title":"SSAS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/ssas/hybrid-runner"},{"title":"SSAS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/ssas/troubleshooting"}]},{"group":"StarRocks","pages":[{"title":"StarRocks Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/starrocks/index"},{"title":"StarRocks Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/starrocks/hybrid-runner"},{"title":"StarRocks Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/starrocks/troubleshooting"}]},{"group":"Synapse","pages":[{"title":"Synapse Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/synapse/index"},{"title":"Synapse Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/synapse/hybrid-runner"},{"title":"Synapse Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/synapse/troubleshooting"}]},{"group":"Teradata","pages":[{"title":"Teradata Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/teradata/index"},{"title":"Teradata Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/teradata/hybrid-runner"},{"title":"Teradata Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/teradata/troubleshooting"}]},{"group":"TimescaleDB","pages":[{"title":"TimescaleDB Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/timescale/index"},{"title":"TimescaleDB Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/timescale/hybrid-runner"},{"title":"TimescaleDB Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/timescale/troubleshooting"}]},{"group":"Trino","pages":[{"title":"Trino Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/trino/index"},{"title":"Trino Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/trino/hybrid-runner"},{"title":"Trino Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/trino/troubleshooting"}]},{"group":"Unity Catalog","pages":[{"title":"Unity Catalog Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/unity-catalog/index"},{"title":"Unity Catalog Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/unity-catalog/hybrid-runner"},{"title":"Unity Catalog Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/unity-catalog/troubleshooting"}]},{"group":"Vertica","pages":[{"title":"Vertica Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/database/vertica/index"},{"title":"Vertica Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/database/vertica/hybrid-runner"},{"title":"Vertica Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/database/vertica/troubleshooting"}]}]},{"group":"Dashboard","pages":[{"title":"Dashboard Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/dashboard/index"},{"group":"Domo Dashboard","pages":[{"title":"Domo Dashboard Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/domo-dashboard/index"},{"title":"Domo Dashboard Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/domo-dashboard/hybrid-runner"},{"title":"Domo Dashboard Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/domo-dashboard/troubleshooting"}]},{"group":"Grafana","pages":[{"title":"Grafana Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/grafana/index"},{"title":"Grafana Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/grafana/hybrid-runner"},{"title":"Grafana Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/grafana/troubleshooting"}]},{"group":"Hex","pages":[{"title":"Hex Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/hex/index"},{"title":"Hex Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/hex/hybrid-runner"},{"title":"Hex Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/hex/troubleshooting"}]},{"group":"Lightdash","pages":[{"title":"Lightdash Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/lightdash/index"},{"title":"Lightdash Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/lightdash/hybrid-runner"},{"title":"Lightdash Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/lightdash/troubleshooting"}]},{"group":"Looker","pages":[{"title":"Looker Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/looker/index"},{"title":"Looker Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/looker/hybrid-runner"},{"title":"Looker Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/looker/troubleshooting"}]},{"group":"Metabase","pages":[{"title":"Metabase Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/metabase/index"},{"title":"Metabase Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/metabase/hybrid-runner"},{"title":"Metabase Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/metabase/troubleshooting"}]},{"group":"MicroStrategy","pages":[{"title":"MicroStrategy Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/microstrategy/index"},{"title":"MicroStrategy Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/microstrategy/hybrid-runner"},{"title":"MicroStrategy Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/microstrategy/troubleshooting"}]},{"group":"Mode","pages":[{"title":"Mode Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/mode/index"},{"title":"Mode Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/mode/hybrid-runner"},{"title":"Mode Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/mode/troubleshooting"}]},{"group":"Omni","pages":[{"title":"Omni Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/omni/index"},{"title":"Omni Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/omni/hybrid-runner"},{"title":"Omni Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/omni/troubleshooting"}]},{"group":"Power BI","pages":[{"title":"PowerBI Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/powerbi/index"},{"title":"PowerBI Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/powerbi/hybrid-runner"},{"title":"PowerBI PBIT Lineage","sidebarTitle":"Lineage from pbit files","href":"/ai-2-0/connectors/dashboard/powerbi/powerbi-pbit-lineage"},{"title":"PowerBI Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/powerbi/troubleshooting"}]},{"group":"Power BI Report Server","pages":[{"title":"PowerBI Report Server Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/powerbireportserver/index"},{"title":"PowerBI Report Server Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/powerbireportserver/hybrid-runner"},{"title":"PowerBI Report Server Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/powerbireportserver/troubleshooting"}]},{"group":"Qlik Cloud","pages":[{"title":"Qlik Cloud Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/qlikcloud/index"},{"title":"Qlik Cloud Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/qlikcloud/hybrid-runner"},{"title":"Qlik Cloud API Keys","sidebarTitle":"API Keys","href":"/ai-2-0/connectors/dashboard/qlikcloud/api_keys"},{"title":"Qlik Cloud Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/qlikcloud/troubleshooting"}]},{"group":"Qlik Sense","pages":[{"title":"Qlik Sense Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/qliksense/index"},{"title":"Qlik Sense Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/qliksense/hybrid-runner"},{"title":"Qlik Sense Certificates","sidebarTitle":"Export Certificates","href":"/ai-2-0/connectors/dashboard/qliksense/certificates"},{"title":"Qlik Sense Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/qliksense/troubleshooting"}]},{"group":"QuickSight","pages":[{"title":"QuickSight Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/quicksight/index"},{"title":"QuickSight Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/quicksight/hybrid-runner"},{"title":"QuickSight Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/quicksight/troubleshooting"}]},{"group":"Redash","pages":[{"title":"Redash Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/redash/index"},{"title":"Redash Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/redash/hybrid-runner"},{"title":"Redash Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/redash/troubleshooting"}]},{"group":"Rill","pages":[{"title":"Rill Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/dashboard/rill/index"},{"title":"Rill Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/rill/hybrid-runner"},{"title":"Rill Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/rill/troubleshooting"}]},{"group":"SAP S/4HANA","pages":[{"title":"SAP S/4HANA Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/saps4hana/index"},{"title":"SAP S/4HANA Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/saps4hana/hybrid-runner"},{"title":"SAP S/4HANA Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/saps4hana/troubleshooting"}]},{"group":"Sigma","pages":[{"title":"Sigma Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/sigma/index"},{"title":"Sigma Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/sigma/hybrid-runner"},{"title":"Sigma Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/sigma/troubleshooting"}]},{"group":"SSRS","pages":[{"title":"SSRS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/ssrs/index"},{"title":"SSRS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/ssrs/hybrid-runner"},{"title":"SSRS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/ssrs/troubleshooting"}]},{"group":"Superset","pages":[{"title":"Superset Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/superset/index"},{"title":"Superset Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/superset/hybrid-runner"},{"title":"Superset SSO","sidebarTitle":"SSO","href":"/ai-2-0/connectors/dashboard/superset/sso"},{"title":"Superset Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/superset/troubleshooting"}]},{"group":"Tableau","pages":[{"title":"Tableau Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/tableau/index"},{"title":"Tableau Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/tableau/hybrid-runner"},{"title":"Tableau Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/tableau/troubleshooting"}]},{"group":"ThoughtSpot","pages":[{"title":"ThoughtSpot Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/dashboard/thoughtspot/index"},{"title":"ThoughtSpot Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/dashboard/thoughtspot/hybrid-runner"},{"title":"ThoughtSpot Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/dashboard/thoughtspot/troubleshooting"}]}]},{"group":"Drive","pages":[{"title":"Drive Connectors","sidebarTitle":"Overview","description":null,"href":"/ai-2-0/connectors/drive/index"},{"group":"Custom Drive","pages":[{"title":"Custom Drive Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/drive/custom-drive/index"}]},{"group":"Google Drive","pages":[{"title":"Google Drive Connector","description":"Connect Google Drive to Collate with our comprehensive drive connector guide. Step-by-step setup, configuration examples, and metadata extraction tips.","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/drive/googledrive/index"},{"title":"Google Drive Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/drive/googledrive/hybrid-runner"},{"title":"Google Drive Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/drive/googledrive/troubleshooting"}]},{"group":"SFTP","pages":[{"title":"SFTP Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/drive/sftp/index"},{"title":"SFTP Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/drive/sftp/hybrid-runner"},{"title":"SFTP Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/drive/sftp/troubleshooting"}]}]},{"group":"Messaging","pages":[{"title":"Messaging Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/messaging/index"},{"group":"Kafka","pages":[{"title":"Kafka Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/messaging/kafka/index"},{"title":"Kafka Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/messaging/kafka/hybrid-runner"},{"title":"Kafka Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/messaging/kafka/troubleshooting"}]},{"group":"Kinesis","pages":[{"title":"Kinesis Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/messaging/kinesis/index"},{"title":"Kinesis Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/messaging/kinesis/hybrid-runner"},{"title":"Kinesis Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/messaging/kinesis/troubleshooting"}]},{"group":"NATS JetStream","pages":[{"title":"NATS JetStream Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/messaging/nats/index"},{"title":"NATS JetStream Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/messaging/nats/hybrid-runner"},{"title":"NATS JetStream Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/messaging/nats/troubleshooting"}]},{"group":"Pub/Sub","pages":[{"title":"Google Pub/Sub Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/messaging/pubsub/index"},{"title":"Google Pub/Sub Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/messaging/pubsub/hybrid-runner"},{"title":"Google Pub/Sub Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/messaging/pubsub/troubleshooting"}]},{"group":"Redpanda","pages":[{"title":"Redpanda Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/messaging/redpanda/index"},{"title":"Redpanda Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/messaging/redpanda/hybrid-runner"},{"title":"Redpanda Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/messaging/redpanda/troubleshooting"}]}]},{"group":"Metadata","pages":[{"title":"Metadata Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/metadata/index"},{"group":"Alation","pages":[{"title":"Alation Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/metadata/alation/index"},{"title":"Alation Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/metadata/alation/hybrid-runner"},{"title":"Alation Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/metadata/alation/troubleshooting"}]},{"group":"Alation Sink","pages":[{"title":"Alation Sink Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/metadata/alationsink/index"},{"title":"Alation Sink Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/metadata/alationsink/hybrid-runner"},{"title":"Alation Sink Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/metadata/alationsink/troubleshooting"}]},{"group":"Amundsen","pages":[{"title":"Amundsen Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/metadata/amundsen/index"},{"title":"Amundsen Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/metadata/amundsen/hybrid-runner"},{"title":"Amundsen Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/metadata/amundsen/troubleshooting"}]},{"group":"Atlas","pages":[{"title":"Atlas Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/metadata/atlas/index"},{"title":"Atlas Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/metadata/atlas/hybrid-runner"},{"title":"Atlas Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/metadata/atlas/troubleshooting"}]},{"group":"Collibra","pages":[{"title":"Collibra Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/metadata/collibra/index"},{"title":"Collibra Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/metadata/collibra/hybrid-runner"},{"title":"Collibra Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/metadata/collibra/troubleshooting"}]}]},{"group":"Ml Model","pages":[{"title":"ML Model Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/ml-model/index"},{"group":"MLflow","pages":[{"title":"MLflow Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/ml-model/mlflow/index"},{"title":"MLflow Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/ml-model/mlflow/hybrid-runner"},{"title":"MLflow Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/ml-model/mlflow/troubleshooting"}]},{"group":"SageMaker","pages":[{"title":"SageMaker Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/ml-model/sagemaker/index"},{"title":"SageMaker Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/ml-model/sagemaker/hybrid-runner"},{"title":"SageMaker Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/ml-model/sagemaker/troubleshooting"}]},{"group":"VertexAI","pages":[{"title":"Vertexai Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/ml-model/vertexai/index"},{"title":"Vertexai Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/ml-model/vertexai/hybrid-runner"},{"title":"Vertexai Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/ml-model/vertexai/troubleshooting"}]}]},{"group":"Pipeline","pages":[{"title":"Pipeline Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/pipeline/index"},{"group":"Airbyte","pages":[{"title":"Airbyte Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/airbyte/index"},{"title":"Airbyte Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/airbyte/hybrid-runner"},{"title":"Airbyte Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/airbyte/troubleshooting"}]},{"group":"Airflow","pages":[{"title":"Airflow Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/airflow/index"},{"title":"Airflow REST API Connection","sidebarTitle":"REST API Connection","href":"/ai-2-0/connectors/pipeline/airflow/rest-api-connection"},{"title":"Airflow Configuring Lineage","sidebarTitle":"Configuring DAG Lineage","href":"/ai-2-0/connectors/pipeline/airflow/configuring-lineage"},{"title":"Airflow GCP Composer","sidebarTitle":"GCP Composer","href":"/ai-2-0/connectors/pipeline/airflow/gcp-composer"},{"title":"Airflow Lineage Backend","sidebarTitle":"Lineage Backend","href":"/ai-2-0/connectors/pipeline/airflow/lineage-backend"},{"title":"Airflow Lineage Operator","sidebarTitle":"Lineage Operator","href":"/ai-2-0/connectors/pipeline/airflow/lineage-operator"},{"title":"Airflow MWAA","sidebarTitle":"MWAA","href":"/ai-2-0/connectors/pipeline/airflow/mwaa"},{"title":"Airflow Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/airflow/hybrid-runner"},{"title":"Airflow Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/airflow/troubleshooting"}]},{"group":"Dagster","pages":[{"title":"Dagster Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/dagster/index"},{"title":"Dagster Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/dagster/hybrid-runner"},{"title":"Dagster Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/dagster/troubleshooting"}]},{"group":"Databricks Pipeline","pages":[{"title":"Databricks Pipeline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/databricks-pipeline/index"},{"title":"Databricks Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/databricks-pipeline/hybrid-runner"},{"title":"Databricks Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/databricks-pipeline/troubleshooting"}]},{"group":"Data Factory","pages":[{"title":"Datafactory Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/datafactory/index"},{"title":"Datafactory Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/datafactory/hybrid-runner"},{"title":"Datafactory Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/datafactory/troubleshooting"}]},{"group":"dbt Cloud","pages":[{"title":"dbt Cloud Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/dbtcloud/index"},{"title":"dbt Cloud Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/dbtcloud/hybrid-runner"},{"title":"dbt Cloud Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/dbtcloud/troubleshooting"}]},{"group":"Domo Pipeline","pages":[{"title":"Domo Pipeline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/domo-pipeline/index"},{"title":"Domo Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/domo-pipeline/hybrid-runner"},{"title":"Domo Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/domo-pipeline/troubleshooting"}]},{"group":"Fivetran","pages":[{"title":"Fivetran Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/fivetran/index"},{"title":"Fivetran Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/fivetran/hybrid-runner"},{"title":"Fivetran Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/fivetran/troubleshooting"}]},{"group":"Flink","pages":[{"title":"Apache Flink Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/flink/index"},{"title":"Apache Flink Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/flink/hybrid-runner"},{"title":"Apache Flink Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/flink/troubleshooting"}]},{"group":"Glue Pipeline","pages":[{"title":"Glue Pipeline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/glue-pipeline/index"},{"title":"Glue Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/glue-pipeline/hybrid-runner"},{"title":"Glue Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/glue-pipeline/troubleshooting"}]},{"group":"Kafka Connect","pages":[{"title":"KafkaConnect Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/kafkaconnect/index"},{"title":"KafkaConnect Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/kafkaconnect/hybrid-runner"},{"title":"KafkaConnect Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/kafkaconnect/troubleshooting"}]},{"group":"Kinesis Firehose","pages":[{"title":"AWS Kinesis Firehose Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/kinesis-firehose/index"},{"title":"AWS Kinesis Firehose Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/kinesis-firehose/hybrid-runner"},{"title":"AWS Kinesis Firehose Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/kinesis-firehose/troubleshooting"}]},{"group":"Matillion","pages":[{"title":"Matillion Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/matillion/index"},{"title":"Matillion Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/matillion/hybrid-runner"},{"title":"Matillion Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/matillion/troubleshooting"}]},{"group":"Microsoft Fabric Pipeline","pages":[{"title":"Microsoft Fabric Pipeline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/microsoftfabricpipeline/index"},{"title":"Microsoft Fabric Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/microsoftfabricpipeline/hybrid-runner"},{"title":"Microsoft Fabric Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/microsoftfabricpipeline/troubleshooting"}]},{"group":"Mulesoft","pages":[{"title":"MuleSoft Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/mulesoft/index"},{"title":"MuleSoft Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/mulesoft/hybrid-runner"},{"title":"MuleSoft Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/mulesoft/troubleshooting"}]},{"group":"NiFi","pages":[{"title":"NiFi Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/nifi/index"},{"title":"NiFi Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/nifi/hybrid-runner"},{"title":"NiFi Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/nifi/troubleshooting"}]},{"group":"OpenLineage","pages":[{"title":"OpenLineage Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/openlineage/index"},{"title":"OpenLineage Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/openlineage/hybrid-runner"},{"title":"OpenLineage Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/openlineage/troubleshooting"}]},{"group":"Prefect","pages":[{"title":"Prefect Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/prefect/index"},{"title":"Prefect Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/prefect/hybrid-runner"},{"title":"Prefect Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/prefect/troubleshooting"}]},{"group":"Salesforce Data 360 Pipeline","pages":[{"title":"Salesforce Data 360 Pipeline Connector","sidebarTitle":"Overview","href":"/ai-2-0/connectors/pipeline/data360/index"},{"title":"Salesforce Data 360 Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/data360/hybrid-runner"},{"title":"Salesforce Data 360 Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/data360/troubleshooting"}]},{"group":"SAP BW/4HANA Pipeline","pages":[{"title":"SAP BW/4HANA Pipeline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/sapbw4hana-pipeline/index"},{"title":"SAP BW/4HANA Pipeline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/sapbw4hana-pipeline/hybrid-runner"},{"title":"SAP BW/4HANA Pipeline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/sapbw4hana-pipeline/troubleshoot"}]},{"group":"Snowplow","pages":[{"title":"Snowplow Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/snowplow/index"},{"title":"Snowplow Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/snowplow/hybrid-runner"},{"title":"Snowplow Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/snowplow/troubleshooting"}]},{"group":"Spline","pages":[{"title":"Spline Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/spline/index"},{"title":"Spline Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/spline/hybrid-runner"},{"title":"Spline Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/spline/troubleshooting"}]},{"group":"SSIS","pages":[{"title":"SSIS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/ssis/index"},{"title":"SSIS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/ssis/hybrid-runner"},{"title":"SSIS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/ssis/troubleshooting"}]},{"group":"Stitch","pages":[{"title":"Stitch Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/stitch/index"},{"title":"Stitch Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/stitch/hybrid-runner"},{"title":"Stitch Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/stitch/troubleshooting"}]},{"group":"WhereScape","pages":[{"title":"WhereScape Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/pipeline/wherescape/index"},{"title":"WhereScape Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/pipeline/wherescape/hybrid-runner"},{"title":"WhereScape Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/pipeline/wherescape/troubleshooting"}]}]},{"group":"Search","pages":[{"title":"Search Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/search/index"},{"group":"Elasticsearch","pages":[{"title":"Elasticsearch Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/search/elasticsearch/index"},{"title":"Elasticsearch Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/search/elasticsearch/hybrid-runner"},{"title":"Elasticsearch Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/search/elasticsearch/troubleshooting"}]},{"group":"OpenSearch","pages":[{"title":"OpenSearch Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/search/opensearch/index"},{"title":"OpenSearch Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/search/opensearch/hybrid-runner"},{"title":"OpenSearch Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/search/opensearch/troubleshooting"}]}]},{"group":"Security","pages":[{"title":"Security Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/security/index"},{"group":"Ranger","pages":[{"title":"Apache Ranger Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/security/ranger/index"},{"title":"Apache Ranger Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/security/ranger/hybrid-runner"},{"title":"Apache Ranger Troubleshooting","href":"/ai-2-0/connectors/security/ranger/troubleshooting"}]}]},{"group":"Storage","pages":[{"title":"Storage Connectors","sidebarTitle":"Overview","href":"/ai-2-0/connectors/storage/index"},{"group":"ADLS","pages":[{"title":"ADLS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/storage/adls/index"},{"title":"ADLS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/storage/adls/hybrid-runner"},{"title":"ADLS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/storage/adls/troubleshooting"}]},{"group":"GCS","pages":[{"title":"GCS Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/storage/gcs/index"},{"title":"GCS Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/storage/gcs/hybrid-runner"},{"title":"GCS Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/storage/gcs/troubleshooting"}]},{"group":"S3","pages":[{"title":"S3 Connector","sidebarTitle":"SaaS/BYOC","href":"/ai-2-0/connectors/storage/s3/index"},{"title":"S3 Hybrid Runner","sidebarTitle":"Hybrid Runner","href":"/ai-2-0/connectors/storage/s3/hybrid-runner"},{"title":"S3 Troubleshooting","sidebarTitle":"Troubleshooting","href":"/ai-2-0/connectors/storage/s3/troubleshooting"}]}]}]}]},{"tab":"Products","pages":[{"title":"Products","href":"/ai-2-0/product-guides"}]},{"tab":"Collate AI","pages":[{"title":"Collate AI","href":"/ai-2-0/collate-ai"}]},{"tab":"How-to Guides","pages":[{"title":"How-to Guides","href":"/ai-2-0/how-to-guides"}]},{"tab":"Admin","pages":[{"title":"Admin","href":"/ai-2-0/admin-guide"}]},{"tab":"SDKs \u0026 APIs","pages":[{"title":"SDKs \u0026 APIs","href":"/ai-2-0/developer-guide/api-reference"}]},{"tab":"SQL Studio","pages":[{"title":"SQL Studio","href":"/ai-2-0/how-to-guides/sql-studio"}]},{"tab":"Data Insights","pages":[{"title":"Data Insights","href":"/ai-2-0/how-to-guides/data-insights"}]},{"tab":"Data Discovery","pages":[{"title":"Data Discovery","href":"/ai-2-0/how-to-guides/data-discovery"}]},{"tab":"Data Collaboration","pages":[{"title":"Data Collaboration","href":"/ai-2-0/how-to-guides/data-collaboration"}]},{"tab":"Data Quality \u0026 Observability","pages":[{"title":"Data Quality \u0026 Observability","href":"/ai-2-0/how-to-guides/data-quality-observability"}]},{"tab":"Data Lineage","pages":[{"title":"Data Lineage","href":"/ai-2-0/how-to-guides/data-lineage"}]},{"tab":"Data Governance","pages":[{"title":"Data Governance","href":"/ai-2-0/how-to-guides/data-governance"}]},{"tab":"Data Marketplace","pages":[{"title":"Data Marketplace","href":"/ai-2-0/how-to-guides/data-marketplace"}]},{"tab":"Data Contracts","pages":[{"title":"Data Contracts","href":"/ai-2-0/how-to-guides/data-contracts"}]},{"tab":"Guide for Data Users","pages":[{"title":"Guide for Data Users","href":"/ai-2-0/how-to-guides/guide-for-data-users"}]},{"tab":"Customer Support","pages":[{"title":"Customer Support","href":"/ai-2-0/how-to-guides/collate-customer-support"}]},{"tab":"SSO","pages":[{"title":"SSO","href":"/ai-2-0/how-to-guides/sso"}]},{"tab":"MCP Server","pages":[{"title":"MCP Server","href":"/ai-2-0/how-to-guides/mcp"}]},{"tab":"Deployment","pages":[{"title":"Deployment","href":"/ai-2-0/how-to-guides/deployment"}]}]},{"version":"Classic","pages":[{"title":"Classic","href":"/connectors"}]}]},"basePath":"","title":"Custom Drive Connector - Collate Documentation","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-CE4cYsJE.js","lightbox-handle-r17bVUz3.js"]}