diff --git a/docusaurus/api-docs/embedded-api/.gitignore b/docusaurus/api-docs/embedded-api/.gitignore new file mode 100644 index 00000000000..89a258695fb --- /dev/null +++ b/docusaurus/api-docs/embedded-api/.gitignore @@ -0,0 +1,8 @@ +# This directory contains generated API documentation files +# Generated during the build process from OpenAPI specifications +# Only keep .gitignore and README.txt in version control + +# Ignore all files except .gitignore and README.txt +* +!.gitignore +!README.txt diff --git a/docusaurus/api-docs/embedded-api/README.txt b/docusaurus/api-docs/embedded-api/README.txt new file mode 100644 index 00000000000..0d9f3275bac --- /dev/null +++ b/docusaurus/api-docs/embedded-api/README.txt @@ -0,0 +1,21 @@ +Embedded API Documentation +========================== + +This directory contains auto-generated API documentation files that are created during the build process. + +The files in this directory are generated from the OpenAPI specification defined in: +- docusaurus/src/data/embedded_api_spec.json +- docusaurus/src/scripts/embedded-api/prepare-embedded-api-spec.js + +Why is this folder gitignored? +------------------------------- + +The API documentation files (*.api.mdx, sidebar.ts, etc.) are generated during `pnpm build` and should NOT be committed to git. +This folder must exist for the build to succeed, but the generated files will be recreated each build. + +To regenerate the documentation files locally, run: + pnpm build + +For more information about the embedded API docs generation, see: +- docusaurus/src/scripts/embedded-api/openapi-validator.js +- docusaurus/src/scripts/embedded-api/prepare-embedded-api-spec.js diff --git a/docusaurus/docusaurus.config.js b/docusaurus/docusaurus.config.js index a0d4b935377..50c80f5d6cd 100644 --- a/docusaurus/docusaurus.config.js +++ b/docusaurus/docusaurus.config.js @@ -14,6 +14,9 @@ const connectorList = require("./src/remark/connectorList"); const specDecoration = require("./src/remark/specDecoration"); const docMetaTags = require("./src/remark/docMetaTags"); const addButtonToTitle = require("./src/remark/addButtonToTitle"); +const fs = require("fs"); + +const { SPEC_CACHE_PATH, API_SIDEBAR_PATH } = require("./src/scripts/embedded-api/constants"); /** @type {import('@docusaurus/types').Config} */ const config = { @@ -184,6 +187,100 @@ const config = { ], }, ], + [ + "@docusaurus/plugin-content-docs", + { + id: "embedded-api", + path: "api-docs/embedded-api", + routeBasePath: "/embedded-api/", + docItemComponent: "@theme/ApiItem", + async sidebarItemsGenerator() { + // We only want to include visible endpoints on the sidebar. We need to filter out endpoints with tags + // that are not included in the spec. Even if we didn't need to filter out elements the OpenAPI plugin generates a sidebar.ts + // file that exports a nested object, but Docusaurus expects just the array of sidebar items, so we need to extracts the actual sidebar + // items from the generated file structure. + + try { + const specPath = SPEC_CACHE_PATH; + + if (!fs.existsSync(specPath)) { + console.warn( + "Embedded API spec file not found, using empty sidebar", + ); + return []; + } + + const data = JSON.parse(fs.readFileSync(specPath, "utf8")); + console.log("Loaded embedded API spec from cache"); + + // Load the freshly generated sidebar (not the cached one from module load) + const sidebarPath = API_SIDEBAR_PATH; + let freshSidebar = []; + + if (fs.existsSync(sidebarPath)) { + try { + const sidebarModule = require("./api-docs/embedded-api/sidebar.ts"); + freshSidebar = sidebarModule.default || sidebarModule; + console.log("Loaded fresh sidebar from generated files"); + } catch (sidebarError) { + console.warn( + "Could not load fresh sidebar, using empty array:", + sidebarError.message, + ); + freshSidebar = []; + } + } else { + console.warn( + "Generated sidebar file not found, using empty array", + ); + freshSidebar = []; + } + + const allowedTags = data.tags?.map((tag) => tag["name"]) || []; + + // Use freshly loaded sidebar items from the generated file + const sidebarItems = Array.isArray(freshSidebar) + ? freshSidebar + : []; + + const filteredItems = sidebarItems.filter((item) => { + if (item.type !== "category") { + return true; + } + + return allowedTags.includes(item.label); + }); + + return filteredItems; + } catch (error) { + console.warn( + "Error loading embedded API spec from cache:", + error.message, + ); + return []; + } + }, + }, + ], + [ + "docusaurus-plugin-openapi-docs", + { + id: "embedded-api", + docsPluginId: "embedded-api", + config: { + embedded: { + specPath: "src/data/embedded_api_spec.json", + outputDir: "api-docs/embedded-api", + sidebarOptions: { + groupPathsBy: "tag", + categoryLinkSource: "tag", + sidebarCollapsed: false, + sidebarCollapsible: false, + }, + }, + }, + }, + ], require.resolve("./src/plugins/enterpriseConnectors"), [ "@signalwire/docusaurus-plugin-llms-txt", diff --git a/docusaurus/package.json b/docusaurus/package.json index ec6d2c48b9a..ed0a7f395e3 100644 --- a/docusaurus/package.json +++ b/docusaurus/package.json @@ -4,8 +4,10 @@ "private": true, "scripts": { "prepare-sidebar": "node src/scripts/prepare-sidebar-data.js", - "prebuild": "pnpm run prepare-sidebar", - "prestart": "pnpm run prepare-sidebar", + "gen-embedded-api-docs": "pnpm exec docusaurus clean-api-docs all && pnpm exec docusaurus gen-api-docs all", + "prepare-embedded-api": "pnpm run gen-embedded-api-docs && node src/scripts/embedded-api/prepare-embedded-api-spec.js && pnpm prettier --write src/data/embedded_api_spec.json", + "prebuild": "pnpm run prepare-sidebar && pnpm run prepare-embedded-api", + "prestart": "pnpm run prepare-sidebar && pnpm run prepare-embedded-api", "docusaurus": "docusaurus", "start": "node src/scripts/fetchSchema.js && docusaurus start --port 3005", "build": "node src/scripts/fetchSchema.js && docusaurus build", @@ -85,8 +87,9 @@ "@docusaurus/plugin-debug": "^3.7.0", "@docusaurus/plugin-sitemap": "^3.7.0", "@docusaurus/preset-classic": "^3.7.0", - "@docusaurus/remark-plugin-npm2yarn": "^3.9.1", + "@docusaurus/remark-plugin-npm2yarn": "^3.7.0", "@docusaurus/theme-classic": "^3.7.0", + "@docusaurus/theme-common": "^3.7.0", "@docusaurus/theme-mermaid": "^3.7.0", "@docusaurus/theme-search-algolia": "^3.7.0", "@docusaurus/types": "^3.7.0", @@ -100,7 +103,10 @@ "@markprompt/react": "^0.62.1", "@mdx-js/react": "^3.0.0", "@saucelabs/theme-github-codeblock": "^0.3.0", + "@seriousme/openapi-schema-validator": "^2.5.0", "@signalwire/docusaurus-plugin-llms-txt": "^1.0.1", + "ajv": "^8.17.1", + "ajv-formats": "^3.0.1", "async": "2.6.4", "autoprefixer": "10.4.16", "classnames": "^2.3.2", @@ -164,5 +170,6 @@ }, "devDependencies": { "prettier": "3.5.3" - } + }, + "packageManager": "pnpm@9.4.0+sha1.9217c800d4ab947a7aee520242a7b70d64fc7638" } diff --git a/docusaurus/pnpm-lock.yaml b/docusaurus/pnpm-lock.yaml index 8d4a3fa965c..95fa680083d 100644 --- a/docusaurus/pnpm-lock.yaml +++ b/docusaurus/pnpm-lock.yaml @@ -191,46 +191,49 @@ importers: version: 7.26.10 '@cmfcmf/docusaurus-search-local': specifier: ^1.1.0 - version: 1.1.0(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(search-insights@2.13.0) + version: 1.1.0(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(search-insights@2.13.0) '@docsearch/react': specifier: 3.1.0 version: 3.1.0(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/core': specifier: ^3.7.0 - version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/cssnano-preset': specifier: ^3.7.0 version: 3.7.0 '@docusaurus/faster': specifier: ^3.8.1 - version: 3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13) + version: 3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) '@docusaurus/module-type-aliases': specifier: ^3.7.0 - version: 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/plugin-debug': specifier: ^3.7.0 - version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/plugin-sitemap': specifier: ^3.7.0 - version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/preset-classic': specifier: ^3.7.0 - version: 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) + version: 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) '@docusaurus/remark-plugin-npm2yarn': - specifier: ^3.9.1 + specifier: ^3.7.0 version: 3.9.1 '@docusaurus/theme-classic': specifier: ^3.7.0 - version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-common': + specifier: ^3.7.0 + version: 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/theme-mermaid': specifier: ^3.7.0 - version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + version: 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/theme-search-algolia': specifier: ^3.7.0 - version: 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) + version: 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) '@docusaurus/types': specifier: ^3.7.0 - version: 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@fortawesome/fontawesome-svg-core': specifier: ^6.5.1 version: 6.5.1 @@ -261,9 +264,18 @@ importers: '@saucelabs/theme-github-codeblock': specifier: ^0.3.0 version: 0.3.0 + '@seriousme/openapi-schema-validator': + specifier: ^2.5.0 + version: 2.5.0 '@signalwire/docusaurus-plugin-llms-txt': specifier: ^1.0.1 - version: 1.0.1(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)) + version: 1.0.1(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)) + ajv: + specifier: ^8.17.1 + version: 8.17.1 + ajv-formats: + specifier: ^3.0.1 + version: 3.0.1(ajv@8.17.1) async: specifier: 2.6.4 version: 2.6.4 @@ -278,7 +290,7 @@ importers: version: 1.1.1 copy-webpack-plugin: specifier: 11.0.0 - version: 11.0.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + version: 11.0.0(webpack@5.95.0(@swc/core@1.12.7)) core-js: specifier: 3.35.0 version: 3.35.0 @@ -287,7 +299,7 @@ importers: version: 6.3.0(postcss@8.4.32) css-minimizer-webpack-plugin: specifier: 4.0.0 - version: 4.0.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + version: 4.0.0(webpack@5.95.0(@swc/core@1.12.7)) cssnano: specifier: 6.0.2 version: 6.0.2(postcss@8.4.32) @@ -302,16 +314,16 @@ importers: version: 6.1.1 docusaurus-plugin-openapi-docs: specifier: ^4.5.1 - version: 4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0) + version: 4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0) docusaurus-theme-openapi-docs: specifier: ^4.5.1 - version: 4.5.1(813c7027c4f4305e66d943854b732418) + version: 4.5.1(m7v2f7dixiapuymsglfznrdyji) dotenv: specifier: ^16.4.5 version: 16.4.5 html-loader: specifier: ^4.2.0 - version: 4.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + version: 4.2.0(webpack@5.95.0(@swc/core@1.12.7)) js-yaml: specifier: ^4.1.0 version: 4.1.0 @@ -335,7 +347,7 @@ importers: version: 6.0.1(postcss@8.4.32) postcss-loader: specifier: 7.3.4 - version: 7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + version: 7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) postcss-merge-longhand: specifier: 6.0.1 version: 6.0.1(postcss@8.4.32) @@ -392,7 +404,7 @@ importers: version: 5.0.0 webpack-dev-server: specifier: 4.9.2 - version: 4.9.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + version: 4.9.2(webpack@5.95.0(@swc/core@1.12.7)) yaml-loader: specifier: ^0.8.0 version: 0.8.0 @@ -2182,6 +2194,10 @@ packages: resolution: {integrity: sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==} engines: {node: '>=18.0'} + '@docusaurus/logger@3.8.1': + resolution: {integrity: sha512-2wjeGDhKcExEmjX8k1N/MRDiPKXGF2Pg+df/bDDPnnJWHXnVEZxXj80d6jcxp1Gpnksl0hF8t/ZQw9elqj2+ww==} + engines: {node: '>=18.0'} + '@docusaurus/mdx-loader@3.7.0': resolution: {integrity: sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==} engines: {node: '>=18.0'} @@ -2314,18 +2330,36 @@ packages: react: ^18.0.0 || ^19.0.0 react-dom: ^18.0.0 || ^19.0.0 + '@docusaurus/types@3.8.1': + resolution: {integrity: sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==} + peerDependencies: + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 + '@docusaurus/utils-common@3.7.0': resolution: {integrity: sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==} engines: {node: '>=18.0'} + '@docusaurus/utils-common@3.8.1': + resolution: {integrity: sha512-zTZiDlvpvoJIrQEEd71c154DkcriBecm4z94OzEE9kz7ikS3J+iSlABhFXM45mZ0eN5pVqqr7cs60+ZlYLewtg==} + engines: {node: '>=18.0'} + '@docusaurus/utils-validation@3.7.0': resolution: {integrity: sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==} engines: {node: '>=18.0'} + '@docusaurus/utils-validation@3.8.1': + resolution: {integrity: sha512-gs5bXIccxzEbyVecvxg6upTwaUbfa0KMmTj7HhHzc016AGyxH2o73k1/aOD0IFrdCsfJNt37MqNI47s2MgRZMA==} + engines: {node: '>=18.0'} + '@docusaurus/utils@3.7.0': resolution: {integrity: sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==} engines: {node: '>=18.0'} + '@docusaurus/utils@3.8.1': + resolution: {integrity: sha512-P1ml0nvOmEFdmu0smSXOqTS1sxU5tqvnc0dA4MTKV39kye+bhQnjkIKEE18fNOvxjyB86k8esoCIFM3x4RykOQ==} + engines: {node: '>=18.0'} + '@emnapi/core@1.4.3': resolution: {integrity: sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g==} @@ -3096,6 +3130,10 @@ packages: '@saucelabs/theme-github-codeblock@0.3.0': resolution: {integrity: sha512-+8xWxBfN+I8StJ0QXERMbGf+BHwRXHWV3mFl9uDayXERiZ/rR93d0nAS3s9s/rKjqh/YSm/4dThEkBNBLnGs4Q==} + '@seriousme/openapi-schema-validator@2.5.0': + resolution: {integrity: sha512-OEd7RYlSwmq4zpaHPOnf+yyzWN6aON4RrA+Dd3PGo5JPBY8G5peofQpJZDwxdJJKPOvqU0C7aZ8LeL2CE2XTdA==} + hasBin: true + '@sideway/address@4.1.4': resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==} @@ -3695,6 +3733,14 @@ packages: ajv: optional: true + ajv-formats@3.0.1: + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + ajv-keywords@3.5.2: resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} peerDependencies: @@ -3711,8 +3757,8 @@ packages: ajv@8.11.0: resolution: {integrity: sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==} - ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} algoliasearch-helper@3.24.2: resolution: {integrity: sha512-vBw/INZDfyh/THbVeDy8On8lZqd2qiUAHde5N4N1ygL4SoeLqLGJ4GHneHrDAYsjikRwTTtodEP0fiXl5MxHFQ==} @@ -4908,10 +4954,6 @@ packages: es6-promise@3.3.1: resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} - escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -5040,6 +5082,9 @@ packages: fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fastq@1.16.0: resolution: {integrity: sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==} @@ -6711,6 +6756,10 @@ packages: resolution: {integrity: sha512-4Ispi9I9qYGO4lueiLDhe4q4iK5ERK8reLsuzH6BPaXn53EGaua8H66PXIFGrW897hwjXp+pVLrm/DLxN0RF0A==} engines: {node: '>=12'} + p-finally@1.0.0: + resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} + engines: {node: '>=4'} + p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -6739,10 +6788,18 @@ packages: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} + p-queue@6.6.2: + resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==} + engines: {node: '>=8'} + p-retry@4.6.2: resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==} engines: {node: '>=8'} + p-timeout@3.2.0: + resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} + engines: {node: '>=8'} + p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -9357,7 +9414,7 @@ snapshots: dependencies: '@babel/helper-validator-identifier': 7.25.9 js-tokens: 4.0.0 - picocolors: 1.0.0 + picocolors: 1.1.1 '@babel/compat-data@7.23.5': {} @@ -10963,12 +11020,12 @@ snapshots: '@braintree/sanitize-url@6.0.4': {} - '@cmfcmf/docusaurus-search-local@1.1.0(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(search-insights@2.13.0)': + '@cmfcmf/docusaurus-search-local@1.1.0(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(search-insights@2.13.0)': dependencies: '@algolia/autocomplete-js': 1.13.0(@algolia/client-search@4.22.0)(algoliasearch@4.22.0)(search-insights@2.13.0) '@algolia/autocomplete-theme-classic': 1.13.0 '@algolia/client-search': 4.22.0 - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) algoliasearch: 4.22.0 cheerio: 1.0.0-rc.12 clsx: 1.1.1 @@ -11261,7 +11318,7 @@ snapshots: transitivePeerDependencies: - '@algolia/client-search' - '@docusaurus/babel@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/babel@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@babel/core': 7.26.10 '@babel/generator': 7.26.10 @@ -11274,7 +11331,7 @@ snapshots: '@babel/runtime-corejs3': 7.26.10 '@babel/traverse': 7.26.10 '@docusaurus/logger': 3.7.0 - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) babel-plugin-dynamic-import-node: 2.3.3 fs-extra: 11.2.0 tslib: 2.6.2 @@ -11287,35 +11344,35 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/bundler@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/bundler@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: '@babel/core': 7.26.10 - '@docusaurus/babel': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/babel': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/cssnano-preset': 3.7.0 '@docusaurus/logger': 3.7.0 - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.95.0(@swc/core@1.12.7)) clean-css: 5.3.3 - copy-webpack-plugin: 11.0.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) - css-loader: 6.8.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) - css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + copy-webpack-plugin: 11.0.0(webpack@5.95.0(@swc/core@1.12.7)) + css-loader: 6.8.1(webpack@5.95.0(@swc/core@1.12.7)) + css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) cssnano: 6.1.2(postcss@8.4.32) - file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7)) html-minifier-terser: 7.2.0 - mini-css-extract-plugin: 2.9.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) - null-loader: 4.0.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + mini-css-extract-plugin: 2.9.2(webpack@5.95.0(@swc/core@1.12.7)) + null-loader: 4.0.1(webpack@5.95.0(@swc/core@1.12.7)) postcss: 8.4.32 - postcss-loader: 7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + postcss-loader: 7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) postcss-preset-env: 10.1.5(postcss@8.4.32) - react-dev-utils: 12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) - terser-webpack-plugin: 5.3.10(@swc/core@1.12.7(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + react-dev-utils: 12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) + terser-webpack-plugin: 5.3.10(@swc/core@1.12.7)(webpack@5.95.0(@swc/core@1.12.7)) tslib: 2.6.2 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) - webpackbar: 6.0.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)))(webpack@5.95.0(@swc/core@1.12.7)) + webpack: 5.95.0(@swc/core@1.12.7) + webpackbar: 6.0.1(webpack@5.95.0(@swc/core@1.12.7)) optionalDependencies: - '@docusaurus/faster': 3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13) + '@docusaurus/faster': 3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) transitivePeerDependencies: - '@parcel/css' - '@swc/core' @@ -11332,15 +11389,15 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/babel': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/bundler': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/babel': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/bundler': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@mdx-js/react': 3.0.0(@types/react@18.2.46)(react@18.2.0) boxen: 6.2.1 chalk: 4.1.2 @@ -11356,17 +11413,17 @@ snapshots: eval: 0.1.8 fs-extra: 11.2.0 html-tags: 3.3.1 - html-webpack-plugin: 5.6.0(@rspack/core@1.4.1(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + html-webpack-plugin: 5.6.0(@rspack/core@1.4.1)(webpack@5.95.0(@swc/core@1.12.7)) leven: 3.1.0 lodash: 4.17.21 p-map: 4.0.0 prompts: 2.4.2 react: 18.2.0 - react-dev-utils: 12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + react-dev-utils: 12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) react-dom: 18.2.0(react@18.2.0) react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0)' react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.2.0)' - react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@18.2.0))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@18.2.0))(webpack@5.95.0(@swc/core@1.12.7)) react-router: 5.3.4(react@18.2.0) react-router-config: 5.1.1(react-router@5.3.4(react@18.2.0))(react@18.2.0) react-router-dom: 5.3.4(react@18.2.0) @@ -11375,9 +11432,9 @@ snapshots: shelljs: 0.8.5 tslib: 2.6.2 update-notifier: 6.0.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) webpack-bundle-analyzer: 4.10.2 - webpack-dev-server: 4.15.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + webpack-dev-server: 4.15.2(webpack@5.95.0(@swc/core@1.12.7)) webpack-merge: 6.0.1 transitivePeerDependencies: - '@docusaurus/faster' @@ -11405,17 +11462,17 @@ snapshots: postcss-sort-media-queries: 5.2.0(postcss@8.5.3) tslib: 2.6.2 - '@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13)': + '@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@rspack/core': 1.4.1(@swc/helpers@0.5.13) - '@swc/core': 1.12.7(@swc/helpers@0.5.13) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@rspack/core': 1.4.1 + '@swc/core': 1.12.7 '@swc/html': 1.12.7 browserslist: 4.24.4 lightningcss: 1.30.1 - swc-loader: 0.2.6(@swc/core@1.12.7(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + swc-loader: 0.2.6(@swc/core@1.12.7)(webpack@5.95.0(@swc/core@1.12.7)) tslib: 2.6.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@swc/helpers' - esbuild @@ -11427,16 +11484,21 @@ snapshots: chalk: 4.1.2 tslib: 2.6.2 - '@docusaurus/mdx-loader@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/logger@3.8.1': + dependencies: + chalk: 4.1.2 + tslib: 2.6.2 + + '@docusaurus/mdx-loader@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@docusaurus/logger': 3.7.0 - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@mdx-js/mdx': 3.0.0 '@slorber/remark-comment': 1.0.0 escape-html: 1.0.3 estree-util-value-to-estree: 3.0.1 - file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7)) fs-extra: 11.2.0 image-size: 1.1.1 mdast-util-mdx: 3.0.0 @@ -11452,9 +11514,9 @@ snapshots: tslib: 2.6.2 unified: 11.0.4 unist-util-visit: 5.0.0 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)))(webpack@5.95.0(@swc/core@1.12.7)) vfile: 6.0.1 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@swc/core' - esbuild @@ -11462,9 +11524,9 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/module-type-aliases@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/module-type-aliases@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@types/history': 4.7.11 '@types/react': 18.2.46 '@types/react-router-config': 5.0.11 @@ -11480,17 +11542,17 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/plugin-content-blog@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-content-blog@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) cheerio: 1.0.0-rc.12 feed: 4.2.2 fs-extra: 11.2.0 @@ -11502,7 +11564,7 @@ snapshots: tslib: 2.6.2 unist-util-visit: 5.0.0 utility-types: 3.10.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@docusaurus/faster' - '@mdx-js/react' @@ -11523,17 +11585,17 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@types/react-router-config': 5.0.11 combine-promises: 1.2.0 fs-extra: 11.2.0 @@ -11543,7 +11605,7 @@ snapshots: react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 utility-types: 3.10.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@docusaurus/faster' - '@mdx-js/react' @@ -11564,18 +11626,18 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-content-pages@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-content-pages@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) fs-extra: 11.2.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@docusaurus/faster' - '@mdx-js/react' @@ -11596,11 +11658,11 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-debug@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-debug@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) fs-extra: 11.2.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -11626,11 +11688,11 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-analytics@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-google-analytics@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 @@ -11654,11 +11716,11 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-gtag@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-google-gtag@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@types/gtag.js': 0.0.12 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -11683,11 +11745,11 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-tag-manager@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-google-tag-manager@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 @@ -11711,14 +11773,14 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-sitemap@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-sitemap@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) fs-extra: 11.2.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -11744,18 +11806,18 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-svgr@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/plugin-svgr@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@svgr/core': 8.1.0(typescript@5.3.3) '@svgr/webpack': 8.1.0(typescript@5.3.3) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@docusaurus/faster' - '@mdx-js/react' @@ -11776,22 +11838,22 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/preset-classic@3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3)': + '@docusaurus/preset-classic@3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-pages': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-debug': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-analytics': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-gtag': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-google-tag-manager': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-sitemap': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-svgr': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-classic': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/theme-search-algolia': 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-pages': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-debug': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-google-analytics': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-google-gtag': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-google-tag-manager': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-sitemap': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-svgr': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-classic': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/theme-search-algolia': 3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: @@ -11832,29 +11894,29 @@ snapshots: transitivePeerDependencies: - supports-color - '@docusaurus/theme-classic@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/theme-classic@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/plugin-content-pages': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/plugin-content-pages': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/theme-translations': 3.7.0 - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@mdx-js/react': 3.0.0(@types/react@18.2.46)(react@18.2.0) - clsx: 2.1.0 + clsx: 2.1.1 copy-text-to-clipboard: 3.2.0 infima: 0.2.0-alpha.45 lodash: 4.17.21 nprogress: 0.2.0 - postcss: 8.4.32 - prism-react-renderer: 2.3.1(react@18.2.0) + postcss: 8.5.3 + prism-react-renderer: 2.4.1(react@18.2.0) prismjs: 1.29.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -11882,19 +11944,19 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/theme-common@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/theme-common@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@types/history': 4.7.11 '@types/react': 18.2.46 '@types/react-router-config': 5.0.11 - clsx: 2.1.0 + clsx: 2.1.1 parse-numeric-range: 1.3.0 - prism-react-renderer: 2.3.1(react@18.2.0) + prism-react-renderer: 2.4.1(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) tslib: 2.6.2 @@ -11906,13 +11968,13 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/theme-mermaid@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': + '@docusaurus/theme-mermaid@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3)': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) mermaid: 10.9.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -11938,16 +12000,16 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/theme-search-algolia@3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3)': + '@docusaurus/theme-search-algolia@3.7.0(@algolia/client-search@4.22.0)(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0)(typescript@5.3.3)': dependencies: '@docsearch/react': 3.9.0(@algolia/client-search@4.22.0)(@types/react@18.2.46)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(search-insights@2.13.0) - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) '@docusaurus/logger': 3.7.0 - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@docusaurus/theme-translations': 3.7.0 - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) algoliasearch: 5.21.0 algoliasearch-helper: 3.24.2(algoliasearch@5.21.0) clsx: 2.1.0 @@ -11986,7 +12048,7 @@ snapshots: fs-extra: 11.2.0 tslib: 2.6.2 - '@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@mdx-js/mdx': 3.0.0 '@types/history': 4.7.11 @@ -11997,7 +12059,7 @@ snapshots: react-dom: 18.2.0(react@18.2.0) react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0)' utility-types: 3.10.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) webpack-merge: 5.10.0 transitivePeerDependencies: - '@swc/core' @@ -12006,9 +12068,29 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/utils-common@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/types@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@mdx-js/mdx': 3.0.0 + '@types/history': 4.7.11 + '@types/react': 18.2.46 + commander: 5.1.0 + joi: 17.11.0 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0)' + utility-types: 3.10.0 + webpack: 5.95.0(@swc/core@1.12.7) + webpack-merge: 5.10.0 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - supports-color + - uglify-js + - webpack-cli + + '@docusaurus/utils-common@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) tslib: 2.6.2 transitivePeerDependencies: - '@swc/core' @@ -12019,11 +12101,24 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/utils-validation@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/utils-common@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@docusaurus/types': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + tslib: 2.6.2 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - react + - react-dom + - supports-color + - uglify-js + - webpack-cli + + '@docusaurus/utils-validation@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@docusaurus/logger': 3.7.0 - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) fs-extra: 11.2.0 joi: 17.11.0 js-yaml: 4.1.0 @@ -12038,13 +12133,32 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/utils@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@docusaurus/utils-validation@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@docusaurus/logger': 3.8.1 + '@docusaurus/utils': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + fs-extra: 11.2.0 + joi: 17.11.0 + js-yaml: 4.1.0 + lodash: 4.17.21 + tslib: 2.6.2 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - react + - react-dom + - supports-color + - uglify-js + - webpack-cli + + '@docusaurus/utils@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@docusaurus/logger': 3.7.0 - '@docusaurus/types': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/types': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) escape-string-regexp: 4.0.0 - file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7)) fs-extra: 11.2.0 github-slugger: 1.5.0 globby: 11.1.0 @@ -12057,9 +12171,41 @@ snapshots: resolve-pathname: 3.0.0 shelljs: 0.8.5 tslib: 2.6.2 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)))(webpack@5.95.0(@swc/core@1.12.7)) utility-types: 3.10.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - react + - react-dom + - supports-color + - uglify-js + - webpack-cli + + '@docusaurus/utils@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@docusaurus/logger': 3.8.1 + '@docusaurus/types': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-common': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + escape-string-regexp: 4.0.0 + execa: 5.1.1 + file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7)) + fs-extra: 11.2.0 + github-slugger: 1.5.0 + globby: 11.1.0 + gray-matter: 4.0.3 + jiti: 1.21.0 + js-yaml: 4.1.0 + lodash: 4.17.21 + micromatch: 4.0.8 + p-queue: 6.6.2 + prompts: 2.4.2 + resolve-pathname: 3.0.0 + tslib: 2.6.2 + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)))(webpack@5.95.0(@swc/core@1.12.7)) + utility-types: 3.10.0 + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - '@swc/core' - esbuild @@ -12785,7 +12931,7 @@ snapshots: '@react-stately/utils': 3.10.4(react@18.2.0) '@react-types/shared': 3.25.0(react@18.2.0) '@swc/helpers': 0.5.13 - clsx: 2.1.0 + clsx: 2.1.1 react: 18.2.0 '@react-stately/utils@3.10.4(react@18.2.0)': @@ -12875,18 +13021,23 @@ snapshots: '@rspack/binding-win32-ia32-msvc': 1.4.1 '@rspack/binding-win32-x64-msvc': 1.4.1 - '@rspack/core@1.4.1(@swc/helpers@0.5.13)': + '@rspack/core@1.4.1': dependencies: '@module-federation/runtime-tools': 0.15.0 '@rspack/binding': 1.4.1 '@rspack/lite-tapable': 1.0.1 - optionalDependencies: - '@swc/helpers': 0.5.13 '@rspack/lite-tapable@1.0.1': {} '@saucelabs/theme-github-codeblock@0.3.0': {} + '@seriousme/openapi-schema-validator@2.5.0': + dependencies: + ajv: 8.17.1 + ajv-draft-04: 1.0.0(ajv@8.17.1) + ajv-formats: 3.0.1(ajv@8.17.1) + js-yaml: 4.1.0 + '@sideway/address@4.1.4': dependencies: '@hapi/hoek': 9.3.0 @@ -12895,9 +13046,9 @@ snapshots: '@sideway/pinpoint@2.0.0': {} - '@signalwire/docusaurus-plugin-llms-txt@1.0.1(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))': + '@signalwire/docusaurus-plugin-llms-txt@1.0.1(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))': dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) fs-extra: 11.2.0 hast-util-select: 6.0.4 hast-util-to-html: 9.0.5 @@ -13099,7 +13250,7 @@ snapshots: '@swc/core-win32-x64-msvc@1.12.7': optional: true - '@swc/core@1.12.7(@swc/helpers@0.5.13)': + '@swc/core@1.12.7': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.23 @@ -13114,7 +13265,6 @@ snapshots: '@swc/core-win32-arm64-msvc': 1.12.7 '@swc/core-win32-ia32-msvc': 1.12.7 '@swc/core-win32-x64-msvc': 1.12.7 - '@swc/helpers': 0.5.13 '@swc/counter@0.1.3': {} @@ -13529,21 +13679,29 @@ snapshots: optionalDependencies: ajv: 8.11.0 + ajv-draft-04@1.0.0(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 + ajv-formats@2.1.1(ajv@8.11.0): optionalDependencies: ajv: 8.11.0 - ajv-formats@2.1.1(ajv@8.12.0): + ajv-formats@2.1.1(ajv@8.17.1): optionalDependencies: - ajv: 8.12.0 + ajv: 8.17.1 + + ajv-formats@3.0.1(ajv@8.17.1): + optionalDependencies: + ajv: 8.17.1 ajv-keywords@3.5.2(ajv@6.12.6): dependencies: ajv: 6.12.6 - ajv-keywords@5.1.0(ajv@8.12.0): + ajv-keywords@5.1.0(ajv@8.17.1): dependencies: - ajv: 8.12.0 + ajv: 8.17.1 fast-deep-equal: 3.1.3 ajv@6.12.6: @@ -13560,12 +13718,12 @@ snapshots: require-from-string: 2.0.2 uri-js: 4.4.1 - ajv@8.12.0: + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - uri-js: 4.4.1 algoliasearch-helper@3.24.2(algoliasearch@5.21.0): dependencies: @@ -13700,12 +13858,12 @@ snapshots: postcss: 8.5.3 postcss-value-parser: 4.2.0 - babel-loader@9.2.1(@babel/core@7.26.10)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + babel-loader@9.2.1(@babel/core@7.26.10)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@babel/core': 7.26.10 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) babel-plugin-dynamic-import-node@2.3.3: dependencies: @@ -14116,7 +14274,7 @@ snapshots: copy-text-to-clipboard@3.2.0: {} - copy-webpack-plugin@11.0.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + copy-webpack-plugin@11.0.0(webpack@5.95.0(@swc/core@1.12.7)): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -14124,7 +14282,7 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.2.0 serialize-javascript: 6.0.1 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) core-js-compat@3.35.0: dependencies: @@ -14211,7 +14369,7 @@ snapshots: postcss-selector-parser: 7.1.0 postcss-value-parser: 4.2.0 - css-loader@6.8.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + css-loader@6.8.1(webpack@5.95.0(@swc/core@1.12.7)): dependencies: icss-utils: 5.1.0(postcss@8.4.32) postcss: 8.4.32 @@ -14221,9 +14379,9 @@ snapshots: postcss-modules-values: 4.0.0(postcss@8.4.32) postcss-value-parser: 4.2.0 semver: 7.5.4 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) - css-minimizer-webpack-plugin@4.0.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + css-minimizer-webpack-plugin@4.0.0(webpack@5.95.0(@swc/core@1.12.7)): dependencies: cssnano: 5.1.15(postcss@8.4.32) jest-worker: 27.5.1 @@ -14231,9 +14389,9 @@ snapshots: schema-utils: 4.2.0 serialize-javascript: 6.0.1 source-map: 0.6.1 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) - css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@jridgewell/trace-mapping': 0.3.20 cssnano: 6.0.2(postcss@8.4.32) @@ -14241,7 +14399,7 @@ snapshots: postcss: 8.4.32 schema-utils: 4.2.0 serialize-javascript: 6.0.1 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) optionalDependencies: clean-css: 5.3.3 @@ -14786,12 +14944,12 @@ snapshots: dependencies: '@leichtgewicht/ip-codec': 2.0.4 - docusaurus-plugin-openapi-docs@4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0): + docusaurus-plugin-openapi-docs@4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0): dependencies: '@apidevtools/json-schema-ref-parser': 11.9.3 - '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) - '@docusaurus/utils': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@docusaurus/utils-validation': 3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/plugin-content-docs': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/utils': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/utils-validation': 3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@redocly/openapi-core': 1.34.3 allof-merge: 0.6.6 chalk: 4.1.2 @@ -14811,20 +14969,20 @@ snapshots: - encoding - supports-color - docusaurus-plugin-sass@0.2.6(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + docusaurus-plugin-sass@0.2.6(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@rspack/core@1.4.1)(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: - '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) + '@docusaurus/core': 3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3) sass: 1.89.2 - sass-loader: 16.0.5(@rspack/core@1.4.1(@swc/helpers@0.5.13))(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + sass-loader: 16.0.5(@rspack/core@1.4.1)(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7)) transitivePeerDependencies: - '@rspack/core' - node-sass - sass-embedded - webpack - docusaurus-theme-openapi-docs@4.5.1(813c7027c4f4305e66d943854b732418): + docusaurus-theme-openapi-docs@4.5.1(m7v2f7dixiapuymsglfznrdyji): dependencies: - '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@hookform/error-message': 2.0.1(react-dom@18.2.0(react@18.2.0))(react-hook-form@7.60.0(react@18.2.0))(react@18.2.0) '@reduxjs/toolkit': 1.9.7(react-redux@7.2.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0) allof-merge: 0.6.6 @@ -14832,8 +14990,8 @@ snapshots: clsx: 1.1.1 copy-text-to-clipboard: 3.2.0 crypto-js: 4.2.0 - docusaurus-plugin-openapi-docs: 4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0) - docusaurus-plugin-sass: 0.2.6(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@swc/helpers@0.5.13))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(@swc/core@1.12.7(@swc/helpers@0.5.13))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@rspack/core@1.4.1(@swc/helpers@0.5.13))(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + docusaurus-plugin-openapi-docs: 4.5.1(@docusaurus/plugin-content-docs@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@docusaurus/utils-validation@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@docusaurus/utils@3.8.1(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react@18.2.0) + docusaurus-plugin-sass: 0.2.6(@docusaurus/core@3.7.0(@docusaurus/faster@3.8.1(@docusaurus/types@3.7.0(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)))(@mdx-js/react@3.0.0(@types/react@18.2.46)(react@18.2.0))(@rspack/core@1.4.1)(@swc/core@1.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.3.3))(@rspack/core@1.4.1)(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7)) file-saver: 2.0.5 lodash: 4.17.21 pako: 2.1.0 @@ -14852,7 +15010,7 @@ snapshots: rehype-raw: 6.1.1 remark-gfm: 3.0.1 sass: 1.89.2 - sass-loader: 16.0.5(@rspack/core@1.4.1(@swc/helpers@0.5.13))(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + sass-loader: 16.0.5(@rspack/core@1.4.1)(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7)) unist-util-visit: 5.0.0 url: 0.11.4 xml-formatter: 2.6.1 @@ -14995,8 +15153,6 @@ snapshots: es6-promise@3.3.1: {} - escalade@3.1.1: {} - escalade@3.2.0: {} escape-goat@4.0.0: {} @@ -15146,6 +15302,8 @@ snapshots: fast-safe-stringify@2.1.1: {} + fast-uri@3.1.0: {} + fastq@1.16.0: dependencies: reusify: 1.0.4 @@ -15171,11 +15329,11 @@ snapshots: dependencies: escape-string-regexp: 1.0.5 - file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) file-saver@2.0.5: {} @@ -15229,7 +15387,7 @@ snapshots: cross-spawn: 7.0.6 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@6.5.3(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + fork-ts-checker-webpack-plugin@6.5.3(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@babel/code-frame': 7.23.5 '@types/json-schema': 7.0.15 @@ -15245,7 +15403,7 @@ snapshots: semver: 7.5.4 tapable: 1.1.3 typescript: 5.3.3 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) form-data-encoder@1.7.2: {} @@ -15740,11 +15898,11 @@ snapshots: html-escaper@2.0.2: {} - html-loader@4.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + html-loader@4.2.0(webpack@5.95.0(@swc/core@1.12.7)): dependencies: html-minifier-terser: 7.2.0 parse5: 7.1.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) html-minifier-terser@6.1.0: dependencies: @@ -15774,7 +15932,7 @@ snapshots: html-void-elements@3.0.0: {} - html-webpack-plugin@5.6.0(@rspack/core@1.4.1(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + html-webpack-plugin@5.6.0(@rspack/core@1.4.1)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -15782,8 +15940,8 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - '@rspack/core': 1.4.1(@swc/helpers@0.5.13) - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + '@rspack/core': 1.4.1 + webpack: 5.95.0(@swc/core@1.12.7) htmlparser2@6.1.0: dependencies: @@ -17133,11 +17291,11 @@ snapshots: react: 18.2.0 tiny-warning: 1.0.3 - mini-css-extract-plugin@2.9.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + mini-css-extract-plugin@2.9.2(webpack@5.95.0(@swc/core@1.12.7)): dependencies: schema-utils: 4.2.0 tapable: 2.2.1 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) minimalistic-assert@1.0.1: {} @@ -17253,11 +17411,11 @@ snapshots: dependencies: boolbase: 1.0.0 - null-loader@4.0.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + null-loader@4.0.1(webpack@5.95.0(@swc/core@1.12.7)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) oas-kit-common@1.0.8: dependencies: @@ -17380,6 +17538,8 @@ snapshots: p-debounce@4.0.0: {} + p-finally@1.0.0: {} + p-limit@2.3.0: dependencies: p-try: 2.2.0 @@ -17408,11 +17568,20 @@ snapshots: dependencies: aggregate-error: 3.1.0 + p-queue@6.6.2: + dependencies: + eventemitter3: 4.0.7 + p-timeout: 3.2.0 + p-retry@4.6.2: dependencies: '@types/retry': 0.12.0 retry: 0.13.1 + p-timeout@3.2.0: + dependencies: + p-finally: 1.0.0 + p-try@2.2.0: {} package-json-from-dist@1.0.1: {} @@ -17790,13 +17959,13 @@ snapshots: '@csstools/utilities': 2.0.0(postcss@8.4.32) postcss: 8.4.32 - postcss-loader@7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + postcss-loader@7.3.4(postcss@8.4.32)(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: cosmiconfig: 8.3.6(typescript@5.3.3) jiti: 1.21.0 postcss: 8.4.32 semver: 7.5.4 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - typescript @@ -18580,7 +18749,7 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-dev-utils@12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + react-dev-utils@12.0.1(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@babel/code-frame': 7.23.5 address: 1.2.2 @@ -18591,7 +18760,7 @@ snapshots: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + fork-ts-checker-webpack-plugin: 6.5.3(typescript@5.3.3)(webpack@5.95.0(@swc/core@1.12.7)) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -18606,7 +18775,7 @@ snapshots: shell-quote: 1.8.1 strip-ansi: 6.0.1 text-table: 0.2.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) optionalDependencies: typescript: 5.3.3 transitivePeerDependencies: @@ -18653,11 +18822,11 @@ snapshots: sucrase: 3.35.0 use-editable: 2.3.3(react@18.2.0) - react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@18.2.0))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@18.2.0))(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@babel/runtime': 7.26.10 react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.2.0)' - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) react-magic-dropzone@1.0.1: {} @@ -19074,9 +19243,9 @@ snapshots: rtlcss@4.1.1: dependencies: - escalade: 3.1.1 - picocolors: 1.0.0 - postcss: 8.4.32 + escalade: 3.2.0 + picocolors: 1.1.1 + postcss: 8.5.3 strip-json-comments: 3.1.1 run-parallel@1.2.0: @@ -19104,13 +19273,13 @@ snapshots: parse-srcset: 1.0.2 postcss: 8.4.32 - sass-loader@16.0.5(@rspack/core@1.4.1(@swc/helpers@0.5.13))(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + sass-loader@16.0.5(@rspack/core@1.4.1)(sass@1.89.2)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: neo-async: 2.6.2 optionalDependencies: - '@rspack/core': 1.4.1(@swc/helpers@0.5.13) + '@rspack/core': 1.4.1 sass: 1.89.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) sass@1.89.2: dependencies: @@ -19141,9 +19310,9 @@ snapshots: schema-utils@4.2.0: dependencies: '@types/json-schema': 7.0.15 - ajv: 8.12.0 - ajv-formats: 2.1.1(ajv@8.12.0) - ajv-keywords: 5.1.0(ajv@8.12.0) + ajv: 8.17.1 + ajv-formats: 2.1.1(ajv@8.17.1) + ajv-keywords: 5.1.0(ajv@8.17.1) search-insights@2.13.0: {} @@ -19494,7 +19663,7 @@ snapshots: css-select: 4.3.0 css-tree: 1.1.3 csso: 4.2.0 - picocolors: 1.0.0 + picocolors: 1.1.1 stable: 0.1.8 svgo@3.2.0: @@ -19505,7 +19674,7 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.0.0 + picocolors: 1.1.1 swagger2openapi@7.0.8: dependencies: @@ -19523,11 +19692,11 @@ snapshots: transitivePeerDependencies: - encoding - swc-loader@0.2.6(@swc/core@1.12.7(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + swc-loader@0.2.6(@swc/core@1.12.7)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: - '@swc/core': 1.12.7(@swc/helpers@0.5.13) + '@swc/core': 1.12.7 '@swc/counter': 0.1.3 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) tabbable@6.2.0: {} @@ -19537,16 +19706,16 @@ snapshots: tapable@2.2.1: {} - terser-webpack-plugin@5.3.10(@swc/core@1.12.7(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + terser-webpack-plugin@5.3.10(@swc/core@1.12.7)(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@jridgewell/trace-mapping': 0.3.20 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 terser: 5.26.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) optionalDependencies: - '@swc/core': 1.12.7(@swc/helpers@0.5.13) + '@swc/core': 1.12.7 terser@5.26.0: dependencies: @@ -19736,8 +19905,8 @@ snapshots: update-browserslist-db@1.0.13(browserslist@4.22.2): dependencies: browserslist: 4.22.2 - escalade: 3.1.1 - picocolors: 1.0.0 + escalade: 3.2.0 + picocolors: 1.1.1 update-browserslist-db@1.1.3(browserslist@4.24.4): dependencies: @@ -19768,14 +19937,14 @@ snapshots: dependencies: punycode: 2.3.1 - url-loader@4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.95.0(@swc/core@1.12.7)))(webpack@5.95.0(@swc/core@1.12.7)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) optionalDependencies: - file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + file-loader: 6.2.0(webpack@5.95.0(@swc/core@1.12.7)) url@0.11.4: dependencies: @@ -19940,16 +20109,16 @@ snapshots: - bufferutil - utf-8-validate - webpack-dev-middleware@5.3.4(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + webpack-dev-middleware@5.3.4(webpack@5.95.0(@swc/core@1.12.7)): dependencies: colorette: 2.0.20 memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) - webpack-dev-server@4.15.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + webpack-dev-server@4.15.2(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -19979,17 +20148,17 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.4(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + webpack-dev-middleware: 5.3.4(webpack@5.95.0(@swc/core@1.12.7)) ws: 8.16.0 optionalDependencies: - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) transitivePeerDependencies: - bufferutil - debug - supports-color - utf-8-validate - webpack-dev-server@4.9.2(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + webpack-dev-server@4.9.2(webpack@5.95.0(@swc/core@1.12.7)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -20018,8 +20187,8 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) - webpack-dev-middleware: 5.3.4(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + webpack: 5.95.0(@swc/core@1.12.7) + webpack-dev-middleware: 5.3.4(webpack@5.95.0(@swc/core@1.12.7)) ws: 8.16.0 transitivePeerDependencies: - bufferutil @@ -20041,7 +20210,7 @@ snapshots: webpack-sources@3.2.3: {} - webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)): + webpack@5.95.0(@swc/core@1.12.7): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -20063,7 +20232,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.12.7(@swc/helpers@0.5.13))(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))) + terser-webpack-plugin: 5.3.10(@swc/core@1.12.7)(webpack@5.95.0(@swc/core@1.12.7)) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -20071,7 +20240,7 @@ snapshots: - esbuild - uglify-js - webpackbar@6.0.1(webpack@5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13))): + webpackbar@6.0.1(webpack@5.95.0(@swc/core@1.12.7)): dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -20080,7 +20249,7 @@ snapshots: markdown-table: 2.0.0 pretty-time: 1.1.0 std-env: 3.7.0 - webpack: 5.95.0(@swc/core@1.12.7(@swc/helpers@0.5.13)) + webpack: 5.95.0(@swc/core@1.12.7) wrap-ansi: 7.0.0 websocket-driver@0.7.4: diff --git a/docusaurus/sidebar-ai-agents.js b/docusaurus/sidebar-ai-agents.js index 1c4a0247db3..e23c3ee8096 100644 --- a/docusaurus/sidebar-ai-agents.js +++ b/docusaurus/sidebar-ai-agents.js @@ -13,36 +13,40 @@ export default { type: "category", label: "Embedded", items: [ - { - type: "category", - label: "Widget", - items: [ - "embedded/widget/quickstart", { type: "category", - label: "Tutorials", + label: "Widget", items: [ - "embedded/widget/tutorials/prerequisites-setup", - "embedded/widget/tutorials/develop-your-app", - "embedded/widget/tutorials/use-embedded", - ] + "embedded/widget/quickstart", + { + type: "category", + label: "Tutorials", + items: [ + "embedded/widget/tutorials/prerequisites-setup", + "embedded/widget/tutorials/develop-your-app", + "embedded/widget/tutorials/use-embedded", + ], + }, + "embedded/widget/managing-embedded", + "embedded/widget/template-tags", + ], }, - "embedded/widget/managing-embedded", - "embedded/widget/template-tags", - ] - }, - { - type: "category", - label: "API", - items: [ - "embedded/api/README", - "embedded/api/connection-templates", - "embedded/api/source-templates", - "embedded/api/configuring-sources", - ] - }, - - ] + { + type: "category", + label: "API", + items: [ + "embedded/api/README", + { + type: "link", + label: "Sonar API reference", + href: "/embedded-api/sonar", + }, + "embedded/api/connection-templates", + "embedded/api/source-templates", + "embedded/api/configuring-sources", + ], + }, + ], }, { type: "category", diff --git a/docusaurus/src/css/custom.css b/docusaurus/src/css/custom.css index e9865ceb958..c5043692471 100644 --- a/docusaurus/src/css/custom.css +++ b/docusaurus/src/css/custom.css @@ -31,6 +31,12 @@ --ifm-table-head-color: var(--color-white); --ifm-table-border-color: var(--ifm-color-primary-lightest); --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.2); + + /* OpenAPI method badge colors */ + --openapi-code-green: #49cc90; + --openapi-code-red: #f93e3e; + --openapi-code-blue: #61affe; + --openapi-code-orange: #fca130; --color-white: hsl(0, 0%, 100%); --color-grey-40: hsl(240, 25%, 98%); @@ -406,3 +412,60 @@ nav a.navbar__link--active { header h1 { margin-bottom: 0; } + +article span.badge { + margin-bottom: 0; +} + +/* OpenAPI HTTP Method Badges */ +li.theme-doc-sidebar-item-link.menu__list-item .menu__link { + display: flex; + align-items: center; + justify-content: start; +} + +/* Target the parent li element that has the method class */ +li.api-method.post .menu__link::before, +li.api-method.get .menu__link::before, +li.api-method.put .menu__link::before, +li.api-method.patch .menu__link::before, +li.api-method.delete .menu__link::before { + content: ""; + width: 42px; + height: 14px; + font-size: 10px; + text-transform: uppercase; + font-weight: 600; + border-radius: 0.25rem; + border: 1px solid; + margin-right: var(--ifm-spacing-horizontal); + text-align: center; + flex-shrink: 0; + border-color: transparent; + color: white; +} + +li.api-method.get .menu__link::before { + content: "get"; + background-color: var(--ifm-color-primary); +} + +li.api-method.post .menu__link::before { + content: "post"; + background-color: var(--openapi-code-green); +} + +li.api-method.delete .menu__link::before { + content: "del"; + background-color: var(--openapi-code-red); +} + +li.api-method.put .menu__link::before { + content: "put"; + background-color: var(--openapi-code-blue); +} + +li.api-method.patch .menu__link::before { + content: "patch"; + background-color: var(--openapi-code-orange); +} \ No newline at end of file diff --git a/docusaurus/src/data/embedded_api_spec.json b/docusaurus/src/data/embedded_api_spec.json new file mode 100644 index 00000000000..63923e1dc97 --- /dev/null +++ b/docusaurus/src/data/embedded_api_spec.json @@ -0,0 +1,15042 @@ +{ + "openapi": "3.1.0", + "info": { + "title": "Sonar", + "summary": "Airbyte's API retrieves data on behalf of your customers and feeds it to your agentic workflows.", + "description": "\nThe API contains 3 types of endpoints:\n- `/api/v1/embedded`: end-user-facing API to collect credentials.\n- `/api/v1/sonar`: operator endpoints to fetch data from end-user data sources (apis & drives) with their configured credentials.\n- `/api/v1/integrations`: all the operator endpoints to manage configurations.\n\nIt is recommended to specify the following header in all your http requests:\n```yaml\nX-Organization-Id: organization's uuid\n```\nIt will ensure that the right organization is used for all the requests in case your user is a member of multiple organizations.\nIf you only have one organization, it will default to that one, otherwise the call will fail.\n", + "version": "0.9.0", + "x-logo": { + "url": "https://cdn.prod.website-files.com/605e01bc25f7e19a82e74788/6335a39da8c96ba75520b156_Logo.svg" + } + }, + "servers": [ + { + "url": "http://localhost", + "description": "Airbyte Sonar API" + } + ], + "paths": { + "/api/v1/account/applications/token": { + "post": { + "tags": ["Applications"], + "summary": "Generate Application Token", + "description": "Generate an application access token using client credentials. This endpoint is intentionally unauthenticated - authentication is performed via client_id and client_secret in the request body.", + "operationId": "create_account_applications_token", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TokenRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TokenResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/agents/chat": { + "post": { + "tags": ["Agents - Chat"], + "summary": "Post chat message", + "description": "Post a new message to a thread", + "operationId": "create_agents_chat", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatPostRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "text/event-stream": { + "schema": { + "$ref": "#/components/schemas/ChatMessageEvent" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/agents/chat/history/{thread_id}": { + "get": { + "tags": ["Agents - Chat History"], + "summary": "Chat history by thread ID", + "description": "Get the full chat history for an existing thread", + "operationId": "get_agents_chat_history_thread_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "thread_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Thread Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatHistoryResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/agents/chat/schema/{source_id}": { + "post": { + "tags": ["Chat - Schema"], + "summary": "Post Schema Chat", + "operationId": "create_agents_chat_schema_source_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatPostRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChatMessageEvent" + } + }, + "text/event-stream": { + "schema": { + "$ref": "#/components/schemas/ChatMessageEvent" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/agents/discovery": { + "post": { + "tags": ["Agents - Discovery"], + "summary": "Create Discovery Agents", + "description": "Create discovery agent jobs for all source definitions tagged with 'discovery-agent'\nthat don't have existing catalogs.", + "operationId": "create_agents_discovery", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DiscoveryAgentCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/agents/discovery/{source_definition_id}": { + "post": { + "tags": ["Agents - Discovery"], + "summary": "Create Discovery Agent", + "description": "Trigger discovery job for a specific source definition.\n\nThis endpoint will:\n1. Verify a source template with \"discovery-agent\" tag exists for this source definition\n2. Delete any existing catalog to force re-discovery\n3. Schedule a new discovery job\n\nThis enables re-running discovery for sources that need catalog updates.\n\nArgs:\n source_definition_id: The source definition ID to run discovery for\n\nReturns:\n DiscoveryAgentCreateResponse with a single job created\n\nRaises:\n HTTPException 404: Source template not found or not tagged with \"discovery-agent\"", + "operationId": "create_agents_discovery_source_definition_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DiscoveryAgentCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/organizations/current-scoped": { + "get": { + "tags": ["Embedded"], + "summary": "Get Scoped Token Info", + "description": "Get the organization and workspace id for a scoped token.", + "operationId": "deprecated_get_embedded_organizations_current_scoped", + "deprecated": true, + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScopedTokenInfoGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/scoped-token": { + "post": { + "tags": ["Embedded"], + "summary": "Create Scoped Token", + "description": "**Requires an Access Token as the bearer token.**\n\nGenerate a new scoped token.\n\nYou can safely share it with your end users and it will allow them to manage their configured sources.", + "operationId": "create_embedded_scoped_token", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScopedTokenCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScopedTokenCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/scoped-token-info": { + "get": { + "tags": ["Embedded"], + "summary": "Get Scoped Token Info", + "description": "**Requires a Scoped Token as the bearer token.**\n\nReturn metadata about a scoped token (workspace, organization...).", + "operationId": "deprecated_get_embedded_scoped_token_info", + "deprecated": true, + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScopedTokenInfoGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/scoped-token/info": { + "get": { + "tags": ["Embedded"], + "summary": "Get Scoped Token Info", + "description": "Get the organization and workspace id for a scoped token.", + "operationId": "get_embedded_scoped_token_info", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScopedTokenInfoGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/source-templates": { + "post": { + "tags": ["Embedded"], + "summary": "List Source Templates", + "description": "**Requires a Scoped Token as the bearer token.**\n\nList all the available sources that the end users can connect to.", + "operationId": "deprecated_list_embedded_source_templates", + "deprecated": true, + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "tags", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter templates by tags.", + "default": [], + "title": "Tags" + }, + "description": "Filter templates by tags." + }, + { + "name": "tags_mode", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)", + "default": "all" + }, + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Embedded"], + "summary": "List Source Templates", + "description": "**Requires a Scoped Token as the bearer token.**\n\nList all the available sources that the end users can connect to.", + "operationId": "list_embedded_source_templates", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "tags", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter templates by tags.", + "default": [], + "title": "Tags" + }, + "description": "Filter templates by tags." + }, + { + "name": "tags_mode", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)", + "default": "all" + }, + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/source-templates/{id}": { + "get": { + "tags": ["Embedded"], + "summary": "Get Source Template", + "description": "**Requires a Scoped Token as the bearer token.**\n\nRetrieves all the details to display to the end users to configure their source.", + "operationId": "get_embedded_source_templates_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/sources": { + "post": { + "tags": ["Embedded"], + "summary": "Create Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nCreates a new source with the provided end user credentials and configurations.\nConfig should be validated before this endpoint is called.", + "operationId": "create_embedded_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Embedded"], + "summary": "List Sources", + "description": "**Requires a Scoped Token as the bearer token.**\n\nList all the sources the end user configured.", + "operationId": "list_embedded_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The workspace ID to list sources for.", + "title": "Workspace Id" + }, + "description": "The workspace ID to list sources for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/sources/check": { + "post": { + "tags": ["Embedded"], + "summary": "Run Check Config Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nTriggers a check for the setup of a new source with the provided end user credentials and configurations.", + "operationId": "create_embedded_sources_check", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/sources/check/{id}/status": { + "get": { + "tags": ["Embedded"], + "summary": "Status Check Config Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nReview the status of a check.", + "operationId": "get_embedded_sources_check_id_status", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigStatusResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/sources/{id}": { + "get": { + "tags": ["Embedded"], + "summary": "Get Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nGet the details for the source the end user configured.", + "operationId": "get_embedded_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "put": { + "tags": ["Embedded"], + "summary": "Update Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nUpdate an existing source with the provided end user credentials and configurations.\nConfig should be validated before this endpoint is called.", + "operationId": "update_embedded_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Embedded"], + "summary": "Delete Source", + "description": "**Requires a Scoped Token as the bearer token.**\n\nDelete an existing end user source.", + "operationId": "delete_embedded_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/embedded/widget-token": { + "post": { + "tags": ["Embedded"], + "summary": "Create Widget Token", + "description": "**Requires an Access Token as the bearer token.**\n\nGenerate a new widget token.\n\nYou can safely pass it to your front-end application to instantiate a widget instance.", + "operationId": "create_embedded_widget_token", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WidgetTokenCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WidgetTokenCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/destinations": { + "get": { + "tags": ["Destinations Definitions"], + "summary": "List Destination Definitions", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a destination connector specification.", + "operationId": "list_integrations_definitions_destinations", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "actorDefinitionIds", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "format": "uuid" + }, + "description": "Filter by actor definition IDs (use repeated parameters: ?actorDefinitionIds=id1&actorDefinitionIds=id2)", + "default": [], + "title": "Actordefinitionids" + }, + "description": "Filter by actor definition IDs (use repeated parameters: ?actorDefinitionIds=id1&actorDefinitionIds=id2)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationDefinitionsListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/destinations/{id}": { + "get": { + "tags": ["Destinations Definitions"], + "summary": "Get Destination Definition", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a destination connector specification.", + "operationId": "get_integrations_definitions_destinations_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationDefinitionResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/sources": { + "get": { + "tags": ["Sources Definitions"], + "summary": "Source Definitions Get", + "description": "**Requires an Access Token as the bearer token.**\n\nList source connector specifications.", + "operationId": "list_integrations_definitions_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Filter source definitions by name (case-insensitive partial match)", + "title": "Name" + }, + "description": "Filter source definitions by name (case-insensitive partial match)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/sources/{id}": { + "get": { + "tags": ["Sources Definitions"], + "summary": "Source Definition Get", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a source connector specification.", + "operationId": "get_integrations_definitions_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/sources/{source_definition_id}/catalog": { + "post": { + "tags": ["Sources Definitions"], + "summary": "Source Definition Catalog Create", + "description": "**Requires an Instance Admin Token as the bearer token.**\n\nCreate a catalog for a source connector specification.", + "operationId": "create_integrations_definitions_sources_source_definition_id_catalog", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionCatalogCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionCatalogCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Sources Definitions"], + "summary": "Delete Source Definition Catalog", + "description": "**Requires an Instance Admin Token as the bearer token.**\n\nDelete a catalog for a source connector specification.", + "operationId": "delete_integrations_definitions_sources_source_definition_id_catalog", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionCatalogDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Sources Definitions"], + "summary": "Get Source Definition Catalog", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a source connector specification catalog.", + "operationId": "get_integrations_definitions_sources_source_definition_id_catalog", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "query", + "in": "query", + "required": false, + "schema": { + "type": "string", + "description": "JMESPath query to filter the catalog. Example: `streams[].name` (names only) or `streams[?name=='users']` (users stream only).", + "title": "Query" + }, + "description": "JMESPath query to filter the catalog. Example: `streams[].name` (names only) or `streams[?name=='users']` (users stream only)." + }, + { + "name": "selected", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "description": "If true, only return streams listed in the catalog's selected_streams field.", + "default": false, + "title": "Selected" + }, + "description": "If true, only return streams listed in the catalog's selected_streams field." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionCatalogGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/sources/{source_definition_id}/streams": { + "post": { + "tags": ["Sources Definitions"], + "summary": "Create Source Definition Catalog Stream", + "description": "Add a new stream to the source definition's catalog.", + "operationId": "create_integrations_definitions_sources_source_definition_id_streams", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionStreamCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionStreamCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/definitions/sources/{source_definition_id}/streams/{stream_name}": { + "patch": { + "tags": ["Sources Definitions"], + "summary": "Patch Source Definition Catalog Stream", + "description": "Patch a specific stream in the source definition's catalog. This allows updating stream configurations such as sync modes and cursor fields.", + "operationId": "update_integrations_definitions_sources_source_definition_id_streams_stream_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "stream_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Stream Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionStreamPatchRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionStreamPatchResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Sources Definitions"], + "summary": "Delete Source Definition Catalog Stream", + "description": "**Requires an Instance Admin Token as the bearer token.**\n\nDelete a catalog for a source connector specification.", + "operationId": "delete_integrations_definitions_sources_source_definition_id_streams_stream_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_definition_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + { + "name": "stream_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Stream Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDefinitionStreamDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/destinations": { + "get": { + "tags": ["Destinations"], + "summary": "List Destinations", + "description": "**Requires an Access Token as the bearer token.**\n\nList destinations.", + "operationId": "list_integrations_destinations", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "description": "The maximum number of destinations to return.", + "default": 20, + "title": "Limit" + }, + "description": "The maximum number of destinations to return." + }, + { + "name": "cursor", + "in": "query", + "required": false, + "schema": { + "type": "string", + "description": "An opaque string with encoded pagination metadata.", + "title": "Cursor" + }, + "description": "An opaque string with encoded pagination metadata." + }, + { + "name": "workspace_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The workspace ID to list destinations for.", + "title": "Workspace Id" + }, + "description": "The workspace ID to list destinations for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/destinations/{id}": { + "get": { + "tags": ["Destinations"], + "summary": "Get Destination", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a destination.", + "operationId": "get_integrations_destinations_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources": { + "post": { + "tags": ["Sources"], + "summary": "Create Source", + "description": "**Requires an Access Token as the bearer token.**\n\nCreate an end user's configured source, config should be validated before.", + "operationId": "create_integrations_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Sources"], + "summary": "List Sources", + "description": "**Requires an Access Token as the bearer token.**\n\nList end user's configured sources.", + "operationId": "list_integrations_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The workspace ID to list sources for.", + "title": "Workspace Id" + }, + "description": "The workspace ID to list sources for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/check": { + "post": { + "tags": ["Sources"], + "summary": "Run Check Config Source", + "description": "**Requires an Access Token as the bearer token.**\n\nCreate a source configuration check.", + "operationId": "create_integrations_sources_check", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/check/{id}/status": { + "get": { + "tags": ["Sources"], + "summary": "Status Check Config Source", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a source configuration check status.", + "operationId": "get_integrations_sources_check_id_status", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCheckConfigStatusResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}": { + "get": { + "tags": ["Sources"], + "summary": "Get Source", + "description": "**Requires an Access Token as the bearer token.**\n\nGet an end user's configured source.", + "operationId": "get_integrations_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "put": { + "tags": ["Sources"], + "summary": "Update Source", + "description": "**Requires an Access Token as the bearer token.**\n\nUpdate an end user's configured source, config should be validated before.", + "operationId": "update_integrations_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Sources"], + "summary": "Delete Source", + "description": "**Requires an Access Token as the bearer token.**\n\nDelete an end user's configured source.", + "operationId": "delete_integrations_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}/catalog": { + "patch": { + "tags": ["Sources"], + "summary": "Patch Source Catalog", + "description": "Patch the source's cached catalog. This allows updating global configurations such as selected streams.", + "operationId": "update_integrations_sources_id_catalog", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamPatchRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDiscoverResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}/catalog/query": { + "post": { + "tags": ["Sources"], + "summary": "Query Source Catalog", + "description": "Query the cached source catalog using JMESPath. Returns 404 if catalog not in cache.", + "operationId": "create_integrations_sources_id_catalog_query", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCatalogQueryRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceCatalogQueryResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}/discover": { + "get": { + "tags": ["Sources"], + "summary": "Get Source Catalog", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a source connector streams with fields.", + "operationId": "get_integrations_sources_id_discover", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "use_cache", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "description": "Whether to use the cached catalog if available. Defaults to true. If false, results will not be cached.", + "default": true, + "title": "Use Cache" + }, + "description": "Whether to use the cached catalog if available. Defaults to true. If false, results will not be cached." + }, + { + "name": "selected", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "description": "Whether to only return streams marked as selected in the catalog.", + "default": false, + "title": "Selected" + }, + "description": "Whether to only return streams marked as selected in the catalog." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceDiscoverResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}/streams": { + "post": { + "tags": ["Sources"], + "summary": "Add Source Stream", + "description": "Add a new stream to the source's cached catalog.", + "operationId": "create_integrations_sources_id_streams", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/sources/{id}/streams/{stream_name}": { + "patch": { + "tags": ["Sources"], + "summary": "Patch Source Stream", + "description": "Patch a specific stream in the source's cached catalog. This allows updating stream configurations such as sync modes and cursor fields.", + "operationId": "update_integrations_sources_id_streams_stream_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "stream_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Stream Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamPatchRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamPatchResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Sources"], + "summary": "Delete Source Stream", + "description": "Delete a specific stream from the source's cached catalog.", + "operationId": "delete_integrations_sources_id_streams_stream_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "stream_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Stream Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceStreamDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/connections": { + "get": { + "tags": ["Template Connections"], + "summary": "List Connection Templates", + "description": "**Requires an Access Token as the bearer token.**\n\nList connection templates.", + "operationId": "list_integrations_templates_connections", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "tags", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter templates by tags.", + "default": [], + "title": "Tags" + }, + "description": "Filter templates by tags." + }, + { + "name": "tags_mode", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)", + "default": "all" + }, + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "post": { + "tags": ["Template Connections"], + "summary": "Create Connection Template", + "description": "**Requires an Access Token as the bearer token.**\n\nCreate a connection template.", + "operationId": "create_integrations_templates_connections", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/connections/cron/describe": { + "post": { + "tags": ["Template Connections"], + "summary": "Describe Cron Expression", + "description": "**Requires an Access Token as the bearer token.**\n\nValidate and describe a Quartz cron expression. Returns a human-readable description of when the schedule will run.", + "operationId": "create_integrations_templates_connections_cron_describe", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CronExpressionDescribeRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CronExpressionDescribeResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/connections/{id}": { + "get": { + "tags": ["Template Connections"], + "summary": "Get Connection Template", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a connection template.", + "operationId": "get_integrations_templates_connections_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Template Connections"], + "summary": "Delete Connection Template", + "description": "**Requires an Access Token as the bearer token.**\n\nDelete a connection template.", + "operationId": "delete_integrations_templates_connections_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "patch": { + "tags": ["Template Connections"], + "summary": "Patch Connection Template", + "description": "**Requires an Access Token as the bearer token.**\n\nUpdate a connection template.", + "operationId": "update_integrations_templates_connections_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplatePatchRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/connections/{id}/tags": { + "post": { + "tags": ["Template Connections"], + "summary": "Tag Connection Template", + "description": "**Requires an Access Token as the bearer token.**\n\nTag a connection template.", + "operationId": "create_integrations_templates_connections_id_tags", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateTagRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateTagResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/connections/{id}/tags/{tag_name}": { + "delete": { + "tags": ["Template Connections"], + "summary": "Untag Connection Template", + "description": "Remove a tag from a connection template", + "operationId": "delete_integrations_templates_connections_id_tags_tag_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "tag_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Tag Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionTemplateUntagResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/sources": { + "post": { + "tags": ["Template Sources"], + "summary": "Create Source Template", + "description": "**Requires an Access Token as the bearer token.**\n\nCreate a source_template.\n\nEnd users can complete this template to create a source connector.", + "operationId": "create_integrations_templates_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCreateRequest" + }, + { + "$ref": "#/components/schemas/SourceTemplateCloneRequest" + } + ], + "title": "Request" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Template Sources"], + "summary": "List Source Templates", + "description": "**Requires an Access Token as the bearer token.**\n\nList source templates.", + "operationId": "list_integrations_templates_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "tags", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter templates by tags.", + "default": [], + "title": "Tags" + }, + "description": "Filter templates by tags." + }, + { + "name": "tags_mode", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)", + "default": "all" + }, + "description": "Tag selection mode: 'all' (must have all tags) or 'any' (must have at least one tag)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/sources/global": { + "get": { + "tags": ["Template Sources"], + "summary": "List Global Source Templates", + "description": "**Requires an Access Token as the bearer token.**\n\nList global a source template.\n\nGlobal templates are visible to all organizations and are maintained by Airbyte. You can clone them to create a local template.", + "operationId": "list_integrations_templates_sources_global", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/sources/{id}": { + "patch": { + "tags": ["Template Sources"], + "summary": "Update Source Template", + "description": "**Requires an Access Token as the bearer token.**\n\nUpdate a source template.", + "operationId": "update_integrations_templates_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Template Sources"], + "summary": "Get Source Template", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a source template.", + "operationId": "get_integrations_templates_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Template Sources"], + "summary": "Delete Source Templates", + "description": "**Requires an Access Token as the bearer token.**\n\nDelete a source template.", + "operationId": "delete_integrations_templates_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/sources/{id}/tags": { + "post": { + "tags": ["Template Sources"], + "summary": "Tag Source Template", + "description": "**Requires an Access Token as the bearer token.**\n\nTag a source template.", + "operationId": "create_integrations_templates_sources_id_tags", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateTagRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateTagResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/sources/{id}/tags/{tag_name}": { + "delete": { + "tags": ["Template Sources"], + "summary": "Untag Source Template", + "description": "Remove a tag from a source template", + "operationId": "delete_integrations_templates_sources_id_tags_tag_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "tag_name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Tag Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SourceTemplateUntagResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/tags": { + "post": { + "tags": ["Template Tags"], + "summary": "Create Template Tag", + "description": "**Requires an Access Token as the bearer token.**\n\nCreate a tag.", + "operationId": "create_integrations_templates_tags", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": ["Template Tags"], + "summary": "List Template Tags", + "description": "**Requires an Access Token as the bearer token.**\n\nList tags.", + "operationId": "list_integrations_templates_tags", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/integrations/templates/tags/{name}": { + "put": { + "tags": ["Template Tags"], + "summary": "Update Template Tag", + "description": "**Requires an Access Token as the bearer token.**\n\nUpdate a tag.", + "operationId": "update_integrations_templates_tags_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Template Tags"], + "summary": "Delete Template Tag", + "description": "**Requires an Access Token as the bearer token.**\n\nDelete a tag.", + "operationId": "delete_integrations_templates_tags_name", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Name" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateTagDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/applications": { + "post": { + "tags": ["Applications"], + "summary": "Get Or Create Application", + "operationId": "create_internal_account_applications", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations": { + "get": { + "tags": ["Organizations"], + "summary": "List Organizations", + "operationId": "list_internal_account_organizations", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationsListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{id}/onboarding-progress": { + "post": { + "tags": ["Organizations"], + "summary": "Update Organization Onboarding Progress", + "description": "Update the onboarding progress for an organization.", + "operationId": "create_internal_account_organizations_id_onboarding_progress", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OnboardingProgressUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OnboardingProgressUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}": { + "get": { + "tags": ["Organizations"], + "summary": "Get Organization", + "operationId": "get_internal_account_organizations_organization_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to retrieve.", + "title": "Organization Id" + }, + "description": "Organization ID to retrieve." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationDetailResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/customer-portal": { + "post": { + "tags": ["Organizations"], + "summary": "Get Customer Portal Link", + "description": "Get a link to the customer portal for an organization.\n\nThe customer portal allows users to manage their billing information,\nview invoices, and update payment methods.", + "operationId": "create_internal_account_organizations_organization_id_customer_portal", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to get customer portal link for.", + "title": "Organization Id" + }, + "description": "Organization ID to get customer portal link for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomerPortalRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomerPortalResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/info": { + "get": { + "tags": ["Organizations"], + "summary": "Get Organization Info", + "operationId": "get_internal_account_organizations_organization_id_info", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to retrieve info for.", + "title": "Organization Id" + }, + "description": "Organization ID to retrieve info for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationInfoResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/invoices": { + "get": { + "tags": ["Organizations"], + "summary": "List Invoices", + "operationId": "get_internal_account_organizations_organization_id_invoices", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to retrieve invoices for.", + "title": "Organization Id" + }, + "description": "Organization ID to retrieve invoices for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InvoicesResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/payment-information": { + "get": { + "tags": ["Organizations"], + "summary": "Get Payment Information", + "operationId": "get_internal_account_organizations_organization_id_payment_information", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to retrieve payment information for.", + "title": "Organization Id" + }, + "description": "Organization ID to retrieve payment information for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PaymentInformationResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/signup": { + "post": { + "tags": ["Organizations"], + "summary": "Organization Signup", + "description": "Sign up an organization with synchronous provisioning.\nSets up Orb billing, Stigg subscription, and payment status in a single request.\nReturns immediately with subscription details.", + "operationId": "create_internal_account_organizations_organization_id_signup", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationSignupResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/account/organizations/{organization_id}/subscription": { + "get": { + "tags": ["Organizations"], + "summary": "Get Organization Subscription", + "operationId": "get_internal_account_organizations_organization_id_subscription", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "organization_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "Organization ID to retrieve subscription info for.", + "title": "Organization Id" + }, + "description": "Organization ID to retrieve subscription info for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationSubscriptionResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/health/check": { + "get": { + "tags": ["Health"], + "summary": "Health Check", + "operationId": "get_internal_health_check", + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HealthCheckGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/integrations/definitions/destinations/wrapped": { + "get": { + "tags": ["Internal Destinations Definitions"], + "summary": "List Wrapped Destination Definitions", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a destination connector specification.", + "operationId": "list_internal_integrations_definitions_destinations_wrapped", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "actorDefinitionIds", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string", + "format": "uuid" + }, + "description": "Filter by actor definition IDs (use repeated parameters: ?actorDefinitionIds=id1&actorDefinitionIds=id2)", + "default": [], + "title": "Actordefinitionids" + }, + "description": "Filter by actor definition IDs (use repeated parameters: ?actorDefinitionIds=id1&actorDefinitionIds=id2)" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationDefinitionsWrappedListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/integrations/definitions/destinations/wrapped/{id}": { + "get": { + "tags": ["Internal Destinations Definitions"], + "summary": "Get Wrapped Destination Definition", + "description": "**Requires an Access Token as the bearer token.**\n\nGet a destination connector specification.", + "operationId": "get_internal_integrations_definitions_destinations_wrapped_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestinationDefinitionResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/mcp/code": { + "post": { + "tags": ["OAuth"], + "summary": "Oauth Code", + "operationId": "create_internal_oauth_mcp_code", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthCodeRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthCodeResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/mcp/registration": { + "post": { + "tags": ["OAuth"], + "summary": "Oauth Registration", + "operationId": "create_internal_oauth_mcp_registration", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthRegistrationRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthRegistrationResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/mcp/token": { + "post": { + "tags": ["OAuth"], + "summary": "Oauth Token", + "operationId": "create_internal_oauth_mcp_token", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthTokenRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OauthTokenResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/sources/complete": { + "post": { + "tags": ["OAuth - Sources"], + "summary": "Complete Oauth", + "operationId": "create_internal_oauth_sources_complete", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CompleteSourceOauthRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CompleteSourceOauthResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/sources/get_embedded_consent_url": { + "post": { + "tags": ["OAuth - Sources"], + "summary": "Get Embedded Consent Url", + "operationId": "create_internal_oauth_sources_get_embedded_consent_url", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetEmbeddedSourceConsentUrlRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetEmbeddedSourceConsentUrlResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/oauth/sources/revoke": { + "post": { + "tags": ["OAuth - Sources"], + "summary": "Revoke Source Oauth", + "operationId": "create_internal_oauth_sources_revoke", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RevokeSourceOauthRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RevokeSourceOauthResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/internal/workspaces/sync": { + "post": { + "tags": ["Internal Workspaces"], + "summary": "Sync Workspaces", + "description": "Sync workspaces from remote to local database.\n\nFetches all workspaces for the authenticated organization and creates\nany missing workspaces in the local database.\n\nReturns statistics about the sync operation including the total number of workspaces\nfound and the number created locally.", + "operationId": "create_internal_workspaces_sync", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceSyncResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/apis": { + "get": { + "tags": ["Sonar - APIs"], + "summary": "List Sources", + "description": "**Requires an Access Token as the bearer token.**\n\nDeprecated. Use `/api/v1/integrations/sources` instead.", + "operationId": "deprecated_get_sonar_apis", + "deprecated": true, + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "maximum": 100, + "description": "The maximum number of sources to return.", + "default": 10, + "title": "Limit" + }, + "description": "The maximum number of sources to return." + }, + { + "name": "cursor", + "in": "query", + "required": false, + "schema": { + "type": "string", + "description": "An opaque string with encoded pagination metadata.", + "title": "Cursor" + }, + "description": "An opaque string with encoded pagination metadata." + }, + { + "name": "workspace_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The workspace ID to list sources for.", + "title": "Workspace Id" + }, + "description": "The workspace ID to list sources for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApisAvailableSourcesResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/apis/{source_id}/request": { + "post": { + "tags": ["Sonar - APIs"], + "summary": "Request", + "description": "**Requires an Access Token as the bearer token.**\n\nMake a request to an API using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "create_sonar_apis_source_id_request", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The source ID to forward the request to.", + "title": "Source Id" + }, + "description": "The source ID to forward the request to." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthenticationProxyRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthenticationProxyResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/sources": { + "get": { + "tags": ["Sonar - Files"], + "summary": "List Sources", + "description": "**Requires an Access Token as the bearer token.**\n\nDeprecated. Use `/api/v1/integrations/sources` instead.", + "operationId": "get_sonar_files_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "The workspace ID to list files for.", + "title": "Workspace Id" + }, + "description": "The workspace ID to list files for." + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilesAvailableSourcesResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/{source_id}/drives": { + "get": { + "tags": ["Sonar - Files"], + "summary": "List Drives", + "description": "**Requires an Access Token as the bearer token.**\n\nRetrieve the list of drives available using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "get_sonar_files_source_id_drives", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "source_id for which to get the drives", + "title": "Source Id" + }, + "description": "source_id for which to get the drives" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetDrivesResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/{source_id}/drives/{drive_id}/get/{path}": { + "get": { + "tags": ["Sonar - Files"], + "summary": "Drive Stream File", + "description": "**Requires an Access Token as the bearer token.**\n\nRetrieve the file content at the specified path in a drive using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "get_sonar_files_source_id_drives_drive_id_get_path_path", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "source_id for which to get file", + "title": "Source Id" + }, + "description": "source_id for which to get file" + }, + { + "name": "drive_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "drive_id for which to get file", + "title": "Drive Id" + }, + "description": "drive_id for which to get file" + }, + { + "name": "path", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "Path to the file to get", + "title": "Path" + }, + "description": "Path to the file to get" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/{source_id}/drives/{drive_id}/list/{path}": { + "get": { + "tags": ["Sonar - Files"], + "summary": "List Drive Files With Prefix", + "description": "**Requires an Access Token as the bearer token.**\n\nList Drive files at the specified path in a File Management System (like Sharepoint underneath drives) using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "list_sonar_files_source_id_drives_drive_id_list_path_path", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "source_id for which to get file", + "title": "Source Id" + }, + "description": "source_id for which to get file" + }, + { + "name": "drive_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "drive_id for which to get file", + "title": "Drive Id" + }, + "description": "drive_id for which to get file" + }, + { + "name": "path", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "Optional path to folder within the drive", + "title": "Path" + }, + "description": "Optional path to folder within the drive" + }, + { + "name": "continuation_token", + "in": "query", + "required": false, + "schema": { + "type": "string", + "description": "Token for pagination", + "title": "Continuation Token" + }, + "description": "Token for pagination" + }, + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "description": "Limit for pagination", + "default": 100, + "title": "Limit" + }, + "description": "Limit for pagination" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilesSourcesListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/{source_id}/get/{path}": { + "get": { + "tags": ["Sonar - Files"], + "summary": "Stream File", + "description": "**Requires an Access Token as the bearer token.**\n\nRetrieve the file content at the specified path using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "get_sonar_files_source_id_get_path_path", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "source_id for which to get file", + "title": "Source Id" + }, + "description": "source_id for which to get file" + }, + { + "name": "path", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "Path to the file to get", + "title": "Path" + }, + "description": "Path to the file to get" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/sonar/files/{source_id}/list/{path}": { + "get": { + "tags": ["Sonar - Files"], + "summary": "List Files With Prefix", + "description": "**Requires an Access Token as the bearer token.**\n\nList files at the specified path in a File Management System (Google Drive, S3...) using the credentials and config associated with the provided source.\n\nThis API allows any system to make requests to a downstream system without ever sharing end users' credentials with the caller.", + "operationId": "list_sonar_files_source_id_list_path_path", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "source_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "description": "source_id for which to list files", + "title": "Source Id" + }, + "description": "source_id for which to list files" + }, + { + "name": "path", + "in": "path", + "required": true, + "schema": { + "type": "string", + "description": "Optional prefix to filter files", + "title": "Path" + }, + "description": "Optional prefix to filter files" + }, + { + "name": "continuation_token", + "in": "query", + "required": false, + "schema": { + "type": "string", + "description": "Token for pagination", + "title": "Continuation Token" + }, + "description": "Token for pagination" + }, + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "description": "Limit for pagination", + "default": 100, + "title": "Limit" + }, + "description": "Limit for pagination" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilesSourcesListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/tools/destinations": { + "post": { + "tags": ["Tool Wrappers - Destinations"], + "summary": "Tools Create Destination", + "operationId": "create_tools_destinations", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralDestinationCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralDestinationCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/tools/destinations/{id}": { + "patch": { + "tags": ["Tool Wrappers - Destinations"], + "summary": "Tools Update Destination", + "operationId": "update_tools_destinations_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralDestinationUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralDestinationUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/tools/sources": { + "post": { + "tags": ["Tool Wrappers - Sources"], + "summary": "Tools Create Source", + "operationId": "create_tools_sources", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralSourceCreateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralSourceCreateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/tools/sources/{id}": { + "patch": { + "tags": ["Tool Wrappers - Sources"], + "summary": "Tools Update Source", + "operationId": "update_tools_sources_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralSourceUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoralSourceUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/workspaces": { + "get": { + "tags": ["Workspaces"], + "summary": "List Workspaces", + "description": "List workspaces for the authenticated organization with cursor-based pagination.\n\n- **name_contains**: Optional filter by workspace name (case-insensitive partial match)\n- **status**: Optional filter by workspace status (active or inactive). If not specified, returns all workspaces.\n- **limit**: Maximum number of workspaces to return (default: 20, max: 100)\n- **cursor**: Pagination cursor from previous response's `next` URL\n- **next**: URL for next page (null if no more results)", + "operationId": "list_workspaces", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "name_contains", + "in": "query", + "required": false, + "schema": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Filter workspaces by name (case-insensitive partial match)", + "title": "Name Contains" + }, + "description": "Filter workspaces by name (case-insensitive partial match)" + }, + { + "name": "status", + "in": "query", + "required": false, + "schema": { + "anyOf": [ + { + "$ref": "#/components/schemas/WorkspaceStatus" + }, + { + "type": "null" + } + ], + "description": "Filter workspaces by status (active or inactive). Returns all if not specified.", + "title": "Status" + }, + "description": "Filter workspaces by status (active or inactive). Returns all if not specified." + }, + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "maximum": 100, + "minimum": 1, + "description": "Maximum number of workspaces to return", + "default": 20, + "title": "Limit" + }, + "description": "Maximum number of workspaces to return" + }, + { + "name": "cursor", + "in": "query", + "required": false, + "schema": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Opaque pagination cursor", + "title": "Cursor" + }, + "description": "Opaque pagination cursor" + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/workspaces/stats": { + "get": { + "tags": ["Workspaces"], + "summary": "Get Workspace Stats", + "description": "Get workspace statistics for the authenticated organization.\n\nReturns the count of active and inactive workspaces.", + "operationId": "get_workspaces_stats", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceStatsResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + }, + "/api/v1/workspaces/{workspace_id}": { + "get": { + "tags": ["Workspaces"], + "summary": "Get Workspace", + "description": "Get a single workspace by ID.", + "operationId": "get_workspaces_workspace_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceGetResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "put": { + "tags": ["Workspaces"], + "summary": "Update Workspace", + "description": "Update a workspace's name and/or status.\n- Set `name` to update the workspace name\n- Set `status` to 'active' or 'inactive' to change the workspace status\n- When setting status to 'inactive', all active connections in the workspace will be automatically disabled", + "operationId": "update_workspaces_workspace_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceUpdateResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": ["Workspaces"], + "summary": "Delete Workspace", + "description": "Delete a workspace in both Coral and Sonar (soft delete in Sonar).\nThis will delete the workspace from Coral and mark it as deleted in Sonar.", + "operationId": "delete_workspaces_workspace_id", + "security": [ + { + "HTTPBearer": [] + } + ], + "parameters": [ + { + "name": "workspace_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + } + }, + { + "name": "x-organization-id", + "in": "header", + "required": false, + "schema": { + "type": "string", + "format": "uuid", + "description": "Select the working organization. Necessary since users can belong to multiple organizations.", + "title": "X-Organization-Id" + }, + "description": "Select the working organization. Necessary since users can belong to multiple organizations." + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceDeleteResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "422": { + "description": "Unprocessable entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiErrorResponse" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "Address": { + "properties": { + "line1": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Line1" + }, + "line2": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Line2" + }, + "city": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "City" + }, + "state": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "State" + }, + "postalCode": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Postalcode" + }, + "country": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Country" + } + }, + "type": "object", + "title": "Address" + }, + "AdvancedAuth": { + "properties": { + "auth_flow_type": { + "type": "string", + "title": "Auth Flow Type" + }, + "predicate_key": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Predicate Key" + }, + "predicate_value": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Predicate Value" + }, + "oauth_config_specification": { + "$ref": "#/components/schemas/OAuthConfigSpecification" + } + }, + "type": "object", + "required": ["auth_flow_type", "oauth_config_specification"], + "title": "AdvancedAuth" + }, + "AgentToolName": { + "type": "string", + "enum": [ + "get_current_datetime", + "get_source_definitions", + "get_source_definition", + "list_source_templates", + "get_source_template", + "run_source_template_creator", + "create_source_template", + "query_source_catalog", + "patch_source_catalog", + "patch_source_catalog_stream" + ], + "title": "AgentToolName", + "description": "Enum of tool names available to agents.\nThis enum is automatically synced to the frontend via OpenAPI generation,\nensuring type safety when handling tool calls and responses.\nWhen adding a new tool to an agent (e.g., in app/agents/chat_agent.py),\nadd the corresponding tool name here to expose it to the frontend." + }, + "ApiError": { + "properties": { + "field": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Field" + }, + "message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Message" + }, + "error_code": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Error Code" + } + }, + "type": "object", + "title": "ApiError" + }, + "ApiErrorResponse": { + "properties": { + "message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Message" + }, + "errors": { + "items": { + "$ref": "#/components/schemas/ApiError" + }, + "type": "array", + "title": "Errors", + "default": [] + } + }, + "type": "object", + "title": "ApiErrorResponse" + }, + "ApisAvailableSource": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "source_type": { + "type": "string", + "title": "Source Type" + } + }, + "type": "object", + "required": ["id", "workspace_id", "source_type"], + "title": "ApisAvailableSource" + }, + "ApisAvailableSourcesResponse": { + "properties": { + "next": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Next", + "description": "Next page url, empty if no more pages" + }, + "sources": { + "items": { + "$ref": "#/components/schemas/ApisAvailableSource" + }, + "type": "array", + "title": "Sources" + } + }, + "type": "object", + "required": ["sources"], + "title": "ApisAvailableSourcesResponse" + }, + "Application": { + "properties": { + "id": { + "type": "string", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "client_id": { + "type": "string", + "title": "Client Id" + }, + "client_secret": { + "type": "string", + "title": "Client Secret" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": ["id", "name", "client_id", "client_secret", "created_at"], + "title": "Application" + }, + "AuthenticationProxyRequest": { + "properties": { + "url": { + "type": "string", + "title": "Url" + }, + "method": { + "$ref": "#/components/schemas/HttpMethod" + }, + "headers": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "title": "Headers" + }, + "body": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Body" + } + }, + "type": "object", + "required": ["url", "method"], + "title": "AuthenticationProxyRequest" + }, + "AuthenticationProxyResponse": { + "properties": { + "response_status_code": { + "type": "integer", + "title": "Response Status Code" + }, + "response_body": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Response Body" + } + }, + "type": "object", + "required": ["response_status_code", "response_body"], + "title": "AuthenticationProxyResponse" + }, + "ChatHistoryResponse": { + "properties": { + "thread_id": { + "type": "string", + "title": "Thread Id" + }, + "messages": { + "items": { + "$ref": "#/components/schemas/ChatMessageEvent" + }, + "type": "array", + "title": "Messages" + } + }, + "type": "object", + "required": ["thread_id", "messages"], + "title": "ChatHistoryResponse" + }, + "ChatMessageEvent": { + "properties": { + "event": { + "type": "string", + "enum": [ + "thread_id", + "user", + "assistant", + "tool_call", + "tool_response" + ], + "title": "Event" + }, + "data": { + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/components/schemas/MessageContent" + }, + { + "$ref": "#/components/schemas/ToolCallEvent" + }, + { + "$ref": "#/components/schemas/ToolResponseEvent" + } + ], + "title": "Data" + } + }, + "type": "object", + "required": ["event", "data"], + "title": "ChatMessageEvent", + "description": "Format of chat message events sent to the browser." + }, + "ChatPostRequest": { + "properties": { + "prompt": { + "type": "string", + "title": "Prompt" + }, + "thread_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Thread Id" + } + }, + "type": "object", + "required": ["prompt"], + "title": "ChatPostRequest" + }, + "CheckStatus": { + "type": "string", + "enum": ["pending", "running", "cancelled", "failed", "succeeded"], + "title": "CheckStatus" + }, + "CompleteSourceOauthRequest": { + "properties": { + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "redirect_url": { + "type": "string", + "title": "Redirect Url", + "description": " When completing OAuth flow to gain an access token, some API sometimes requires to verify that the app re-send the redirectUrl that was used when consent was given" + }, + "query_params": { + "anyOf": [ + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Query Params" + }, + "o_auth_input_configuration": { + "additionalProperties": true, + "type": "object", + "title": "O Auth Input Configuration", + "description": "Required by the underlying API, but ignored in an embedded context." + }, + "return_secret_coordinate": { + "type": "boolean", + "title": "Return Secret Coordinate", + "description": "If set to true, returns a secret coordinate which references the stored tokens. By default, returns raw tokens.", + "default": false + }, + "source_id": { + "anyOf": [ + { + "type": "string", + "format": "uuid" + }, + { + "type": "null" + } + ], + "title": "Source Id" + } + }, + "type": "object", + "required": [ + "workspace_id", + "source_definition_id", + "redirect_url", + "o_auth_input_configuration" + ], + "title": "CompleteSourceOauthRequest" + }, + "CompleteSourceOauthResponse": { + "properties": { + "request_succeeded": { + "type": "boolean", + "title": "Request Succeeded" + }, + "auth_payload": { + "additionalProperties": true, + "type": "object", + "title": "Auth Payload" + }, + "request_error": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Request Error" + } + }, + "type": "object", + "required": ["request_succeeded", "auth_payload"], + "title": "CompleteSourceOauthResponse" + }, + "ConnectionSpecification": { + "properties": { + "required": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Required" + }, + "properties": { + "additionalProperties": true, + "type": "object", + "title": "Properties" + }, + "description": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Description" + }, + "title": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Title" + }, + "type": { + "type": "string", + "title": "Type" + }, + "$schema": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "$Schema" + } + }, + "type": "object", + "required": ["type"], + "title": "ConnectionSpecification" + }, + "ConnectionTemplate": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "destination_name": { + "type": "string", + "title": "Destination Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression" + }, + "non_breaking_changes_preference": { + "$ref": "#/components/schemas/NonBreakingChangesPreference", + "default": "ignore" + }, + "sync_on_create": { + "type": "boolean", + "title": "Sync On Create", + "default": true + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "organization_id", + "destination_name", + "destination_definition_id", + "destination_config" + ], + "title": "ConnectionTemplate" + }, + "ConnectionTemplateCreateRequest": { + "properties": { + "destination_name": { + "type": "string", + "title": "Destination Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id", + "description": "The id of the destination definition (type of destination connector) to use for the connection." + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config", + "description": "The configuration for the destination connector. Must match the destination definition." + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression", + "description": "A valid Quartz cron expression describing the schedule for the connection." + }, + "non_breaking_changes_preference": { + "$ref": "#/components/schemas/NonBreakingChangesPreference", + "description": "The action Airbyte should take when breaking changes are made to a source schema.", + "default": "ignore" + }, + "sync_on_create": { + "type": "boolean", + "title": "Sync On Create", + "description": "Whether to start a sync job when the connection is created.", + "default": true + } + }, + "type": "object", + "required": [ + "destination_name", + "destination_definition_id", + "destination_config" + ], + "title": "ConnectionTemplateCreateRequest" + }, + "ConnectionTemplateCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "destination_name": { + "type": "string", + "title": "Destination Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression" + }, + "non_breaking_changes_preference": { + "$ref": "#/components/schemas/NonBreakingChangesPreference", + "default": "ignore" + }, + "sync_on_create": { + "type": "boolean", + "title": "Sync On Create", + "default": true + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "organization_id", + "destination_name", + "destination_definition_id", + "destination_config" + ], + "title": "ConnectionTemplateCreateResponse" + }, + "ConnectionTemplateDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "ConnectionTemplateDeleteResponse" + }, + "ConnectionTemplateGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "destination_name": { + "type": "string", + "title": "Destination Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression" + }, + "non_breaking_changes_preference": { + "$ref": "#/components/schemas/NonBreakingChangesPreference", + "default": "ignore" + }, + "sync_on_create": { + "type": "boolean", + "title": "Sync On Create", + "default": true + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "organization_id", + "destination_name", + "destination_definition_id", + "destination_config" + ], + "title": "ConnectionTemplateGetResponse" + }, + "ConnectionTemplateListResponse": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/ConnectionTemplate" + }, + "type": "array", + "title": "Data" + } + }, + "type": "object", + "required": ["data"], + "title": "ConnectionTemplateListResponse" + }, + "ConnectionTemplatePatchRequest": { + "properties": { + "destination_name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Destination Name" + }, + "destination_config": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Destination Config" + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression" + }, + "non_breaking_changes_preference": { + "anyOf": [ + { + "$ref": "#/components/schemas/NonBreakingChangesPreference" + }, + { + "type": "null" + } + ] + }, + "sync_on_create": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "title": "Sync On Create" + } + }, + "type": "object", + "title": "ConnectionTemplatePatchRequest" + }, + "ConnectionTemplateTagRequest": { + "properties": { + "tag": { + "type": "string", + "title": "Tag" + } + }, + "type": "object", + "required": ["tag"], + "title": "ConnectionTemplateTagRequest" + }, + "ConnectionTemplateTagResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "destination_name": { + "type": "string", + "title": "Destination Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "cron_expression": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cron Expression" + }, + "non_breaking_changes_preference": { + "$ref": "#/components/schemas/NonBreakingChangesPreference", + "default": "ignore" + }, + "sync_on_create": { + "type": "boolean", + "title": "Sync On Create", + "default": true + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "organization_id", + "destination_name", + "destination_definition_id", + "destination_config" + ], + "title": "ConnectionTemplateTagResponse" + }, + "ConnectionTemplateUntagResponse": { + "properties": { + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["deleted_at"], + "title": "ConnectionTemplateUntagResponse" + }, + "ConnectorDefinition": { + "properties": { + "sourceDefinitionId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Sourcedefinitionid" + }, + "destinationDefinitionId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Destinationdefinitionid" + }, + "name": { + "type": "string", + "title": "Name" + }, + "iconUrl": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Iconurl" + }, + "custom": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "title": "Custom" + }, + "supportLevel": { + "anyOf": [ + { + "$ref": "#/components/schemas/SupportLevel" + }, + { + "type": "null" + } + ] + }, + "spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + } + }, + "type": "object", + "required": ["name", "spec"], + "title": "ConnectorDefinition" + }, + "ConnectorDefinitionSummarized": { + "properties": { + "sourceDefinitionId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Sourcedefinitionid" + }, + "destinationDefinitionId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Destinationdefinitionid" + }, + "name": { + "type": "string", + "title": "Name" + }, + "iconUrl": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Iconurl" + }, + "custom": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "title": "Custom" + }, + "supportLevel": { + "anyOf": [ + { + "$ref": "#/components/schemas/SupportLevel" + }, + { + "type": "null" + } + ] + } + }, + "type": "object", + "required": ["name"], + "title": "ConnectorDefinitionSummarized" + }, + "ConnectorSpecification": { + "properties": { + "documentationUrl": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Documentationurl" + }, + "connectionSpecification": { + "$ref": "#/components/schemas/ConnectionSpecification" + }, + "advanced_auth": { + "anyOf": [ + { + "$ref": "#/components/schemas/AdvancedAuth" + }, + { + "type": "null" + } + ] + }, + "supported_destination_sync_modes": { + "anyOf": [ + { + "items": { + "$ref": "#/components/schemas/DestinationSyncMode" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Supported Destination Sync Modes" + } + }, + "type": "object", + "required": ["connectionSpecification"], + "title": "ConnectorSpecification" + }, + "CoralDestinationCreateRequest": { + "properties": { + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + } + }, + "type": "object", + "required": [ + "workspace_id", + "name", + "destination_definition_id", + "destination_config" + ], + "title": "CoralDestinationCreateRequest" + }, + "CoralDestinationCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_type": { + "type": "string", + "title": "Destination Type" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "destination_definition_id", + "destination_type", + "destination_config", + "created_at" + ], + "title": "CoralDestinationCreateResponse" + }, + "CoralDestinationUpdateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name" + }, + "configuration": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Configuration" + } + }, + "type": "object", + "title": "CoralDestinationUpdateRequest" + }, + "CoralDestinationUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_type": { + "type": "string", + "title": "Destination Type" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "destination_definition_id", + "destination_type", + "destination_config", + "created_at" + ], + "title": "CoralDestinationUpdateResponse" + }, + "CoralSourceCreateRequest": { + "properties": { + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + } + }, + "type": "object", + "required": [ + "workspace_id", + "name", + "source_definition_id", + "source_config" + ], + "title": "CoralSourceCreateRequest" + }, + "CoralSourceCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + }, + "source_type": { + "type": "string", + "title": "Source Type" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "source_config", + "source_type", + "created_at" + ], + "title": "CoralSourceCreateResponse" + }, + "CoralSourceUpdateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name" + }, + "source_config": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Source Config" + } + }, + "type": "object", + "title": "CoralSourceUpdateRequest" + }, + "CoralSourceUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + }, + "source_type": { + "type": "string", + "title": "Source Type" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "source_config", + "source_type", + "created_at" + ], + "title": "CoralSourceUpdateResponse" + }, + "CronExpressionDescribeRequest": { + "properties": { + "cron_expression": { + "type": "string", + "title": "Cron Expression", + "description": "A Quartz cron expression to be described" + } + }, + "type": "object", + "required": ["cron_expression"], + "title": "CronExpressionDescribeRequest" + }, + "CronExpressionDescribeResponse": { + "properties": { + "description": { + "type": "string", + "title": "Description", + "description": "Human-readable description of the cron expression" + }, + "is_valid": { + "type": "boolean", + "title": "Is Valid", + "description": "Whether the cron expression is valid" + } + }, + "type": "object", + "required": ["description", "is_valid"], + "title": "CronExpressionDescribeResponse" + }, + "CustomerPortalRequest": { + "properties": { + "return_url": { + "type": "string", + "maxLength": 2083, + "minLength": 1, + "format": "uri", + "title": "Return Url", + "description": "The URL to redirect to after the customer portal session" + } + }, + "type": "object", + "required": ["return_url"], + "title": "CustomerPortalRequest", + "description": "Request schema for customer portal link generation." + }, + "CustomerPortalResponse": { + "properties": { + "url": { + "type": "string", + "title": "Url", + "description": "The URL to the customer portal" + } + }, + "type": "object", + "required": ["url"], + "title": "CustomerPortalResponse", + "description": "Response schema for customer portal link." + }, + "DestinationDefinitionListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "type": "string", + "title": "Icon" + } + }, + "type": "object", + "required": ["id", "name", "icon"], + "title": "DestinationDefinitionListItem" + }, + "DestinationDefinitionResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "definition": { + "$ref": "#/components/schemas/ConnectorDefinition" + } + }, + "type": "object", + "required": ["id", "definition"], + "title": "DestinationDefinitionResponse" + }, + "DestinationDefinitionsListResponse": { + "properties": { + "destinations": { + "items": { + "$ref": "#/components/schemas/DestinationDefinitionListItem" + }, + "type": "array", + "title": "Destinations" + } + }, + "type": "object", + "required": ["destinations"], + "title": "DestinationDefinitionsListResponse" + }, + "DestinationDefinitionsWrappedListResponse": { + "properties": { + "definitions": { + "items": { + "$ref": "#/components/schemas/ConnectorDefinition" + }, + "type": "array", + "title": "Definitions" + } + }, + "type": "object", + "required": ["definitions"], + "title": "DestinationDefinitionsWrappedListResponse", + "description": "Full definitions list response (includes full specs)." + }, + "DestinationGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_type": { + "type": "string", + "title": "Destination Type" + }, + "destination_config": { + "additionalProperties": true, + "type": "object", + "title": "Destination Config" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "destination_definition_id", + "destination_type", + "destination_config", + "created_at" + ], + "title": "DestinationGetResponse" + }, + "DestinationListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "destination_definition_id": { + "type": "string", + "format": "uuid", + "title": "Destination Definition Id" + }, + "destination_type": { + "type": "string", + "title": "Destination Type" + } + }, + "type": "object", + "required": [ + "id", + "name", + "destination_definition_id", + "destination_type" + ], + "title": "DestinationListItem" + }, + "DestinationListResponse": { + "properties": { + "next": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Next", + "description": "Next page url, empty if no more pages" + }, + "data": { + "items": { + "$ref": "#/components/schemas/DestinationListItem" + }, + "type": "array", + "title": "Data" + } + }, + "type": "object", + "required": ["data"], + "title": "DestinationListResponse" + }, + "DestinationSyncMode": { + "type": "string", + "enum": [ + "append", + "append_dedup", + "overwrite", + "overwrite_dedup", + "soft_delete", + "update" + ], + "title": "DestinationSyncMode" + }, + "DetailedSourceTemplate": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "user_config_spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config" + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "user_config_spec", + "partial_default_config" + ], + "title": "DetailedSourceTemplate" + }, + "DiscoveryAgentCreateResponse": { + "properties": { + "jobs_created": { + "items": { + "$ref": "#/components/schemas/DiscoveryAgentJobCreated" + }, + "type": "array", + "title": "Jobs Created" + } + }, + "type": "object", + "required": ["jobs_created"], + "title": "DiscoveryAgentCreateResponse" + }, + "DiscoveryAgentJobCreated": { + "properties": { + "job_id": { + "type": "string", + "format": "uuid", + "title": "Job Id" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + } + }, + "type": "object", + "required": ["job_id", "source_definition_id"], + "title": "DiscoveryAgentJobCreated" + }, + "FieldTag": { + "properties": { + "field_name": { + "type": "string", + "title": "Field Name" + }, + "tag": { + "type": "string", + "title": "Tag" + } + }, + "type": "object", + "required": ["field_name", "tag"], + "title": "FieldTag" + }, + "FileEntity": { + "type": "string", + "enum": ["file", "folder"], + "title": "FileEntity" + }, + "FilesAvailableSource": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "source_type": { + "type": "string", + "title": "Source Type" + } + }, + "type": "object", + "required": ["id", "workspace_id", "source_type"], + "title": "FilesAvailableSource" + }, + "FilesAvailableSourcesResponse": { + "properties": { + "sources": { + "items": { + "$ref": "#/components/schemas/FilesAvailableSource" + }, + "type": "array", + "title": "Sources" + } + }, + "type": "object", + "required": ["sources"], + "title": "FilesAvailableSourcesResponse" + }, + "FilesSourceListItem": { + "properties": { + "bytes": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "title": "Bytes" + }, + "relative_path": { + "type": "string", + "title": "Relative Path" + }, + "modified": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Modified" + }, + "source_url": { + "type": "string", + "title": "Source Url" + }, + "type": { + "$ref": "#/components/schemas/FileEntity" + } + }, + "type": "object", + "required": [ + "bytes", + "relative_path", + "modified", + "source_url", + "type" + ], + "title": "FilesSourceListItem" + }, + "FilesSourcesListResponse": { + "properties": { + "next": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Next", + "description": "Next page url, empty if no more pages" + }, + "items": { + "items": { + "$ref": "#/components/schemas/FilesSourceListItem" + }, + "type": "array", + "title": "Items" + } + }, + "type": "object", + "required": ["items"], + "title": "FilesSourcesListResponse" + }, + "ForeignKey": { + "properties": { + "field_name": { + "type": "string", + "title": "Field Name" + }, + "referenced_stream_name": { + "type": "string", + "title": "Referenced Stream Name" + }, + "referenced_field_name": { + "type": "string", + "title": "Referenced Field Name" + } + }, + "type": "object", + "required": [ + "field_name", + "referenced_stream_name", + "referenced_field_name" + ], + "title": "ForeignKey" + }, + "GetDriveItem": { + "properties": { + "id": { + "type": "string", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "url": { + "type": "string", + "title": "Url" + } + }, + "type": "object", + "required": ["id", "name", "url"], + "title": "GetDriveItem" + }, + "GetDrivesResponse": { + "properties": { + "drives": { + "items": { + "$ref": "#/components/schemas/GetDriveItem" + }, + "type": "array", + "title": "Drives" + } + }, + "type": "object", + "required": ["drives"], + "title": "GetDrivesResponse" + }, + "GetEmbeddedSourceConsentUrlRequest": { + "properties": { + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "redirect_url": { + "type": "string", + "title": "Redirect Url", + "description": "The url to redirect to after getting the user consent" + }, + "source_id": { + "anyOf": [ + { + "type": "string", + "format": "uuid" + }, + { + "type": "null" + } + ], + "title": "Source Id" + }, + "oauth_input_configuration": { + "additionalProperties": true, + "type": "object", + "title": "Oauth Input Configuration" + } + }, + "type": "object", + "required": ["workspace_id", "source_definition_id", "redirect_url"], + "title": "GetEmbeddedSourceConsentUrlRequest" + }, + "GetEmbeddedSourceConsentUrlResponse": { + "properties": { + "consent_url": { + "type": "string", + "title": "Consent Url" + } + }, + "type": "object", + "required": ["consent_url"], + "title": "GetEmbeddedSourceConsentUrlResponse" + }, + "HealthCheckGetResponse": { + "properties": { + "success": { + "type": "boolean", + "title": "Success" + }, + "queue_information": { + "$ref": "#/components/schemas/QueueInformation" + } + }, + "type": "object", + "required": ["success", "queue_information"], + "title": "HealthCheckGetResponse" + }, + "HttpMethod": { + "type": "string", + "enum": ["GET", "POST", "PUT", "DELETE"], + "title": "HttpMethod" + }, + "Invoice": { + "properties": { + "id": { + "type": "string", + "title": "Id" + }, + "total": { + "type": "integer", + "title": "Total" + }, + "currency": { + "type": "string", + "title": "Currency" + }, + "invoiceDate": { + "type": "integer", + "title": "Invoicedate" + }, + "status": { + "type": "string", + "enum": ["draft", "open", "paid", "uncollectible", "void"], + "title": "Status" + }, + "pdfUrl": { + "type": "string", + "title": "Pdfurl" + }, + "invoiceUrl": { + "type": "string", + "title": "Invoiceurl" + }, + "number": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Number" + } + }, + "type": "object", + "required": [ + "id", + "total", + "currency", + "invoiceDate", + "status", + "pdfUrl", + "invoiceUrl" + ], + "title": "Invoice" + }, + "InvoicesResponse": { + "properties": { + "invoices": { + "items": { + "$ref": "#/components/schemas/Invoice" + }, + "type": "array", + "title": "Invoices" + }, + "hasMore": { + "type": "boolean", + "title": "Hasmore" + } + }, + "type": "object", + "required": ["invoices", "hasMore"], + "title": "InvoicesResponse" + }, + "MessageContent": { + "properties": { + "content": { + "type": "string", + "title": "Content" + } + }, + "type": "object", + "required": ["content"], + "title": "MessageContent", + "description": "Content of a chat message." + }, + "NonBreakingChangesPreference": { + "type": "string", + "enum": ["ignore", "disable", "propagate_columns", "propagate_fully"], + "title": "NonBreakingChangesPreference" + }, + "OAuthConfigSpecification": { + "properties": { + "oauth_user_input_from_connector_config_specification": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Oauth User Input From Connector Config Specification" + }, + "oauth_connector_input_specification": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Oauth Connector Input Specification" + }, + "complete_oauth_output_specification": { + "additionalProperties": true, + "type": "object", + "title": "Complete Oauth Output Specification", + "default": {} + }, + "complete_oauth_server_input_specification": { + "additionalProperties": true, + "type": "object", + "title": "Complete Oauth Server Input Specification", + "default": {} + }, + "complete_oauth_server_output_specification": { + "additionalProperties": true, + "type": "object", + "title": "Complete Oauth Server Output Specification", + "default": {} + } + }, + "type": "object", + "title": "OAuthConfigSpecification" + }, + "OauthCodeRequest": { + "properties": { + "client_id": { + "type": "string", + "title": "Client Id" + }, + "airbyte_client_id": { + "type": "string", + "title": "Airbyte Client Id" + }, + "airbyte_client_secret": { + "type": "string", + "title": "Airbyte Client Secret" + }, + "redirect_uri": { + "type": "string", + "title": "Redirect Uri" + }, + "scope": { + "type": "string", + "title": "Scope" + }, + "state": { + "type": "string", + "title": "State" + } + }, + "type": "object", + "required": [ + "client_id", + "airbyte_client_id", + "airbyte_client_secret", + "redirect_uri", + "scope", + "state" + ], + "title": "OauthCodeRequest" + }, + "OauthCodeResponse": { + "properties": { + "redirect_uri": { + "type": "string", + "title": "Redirect Uri" + } + }, + "type": "object", + "required": ["redirect_uri"], + "title": "OauthCodeResponse" + }, + "OauthRegistrationRequest": { + "properties": { + "redirect_uris": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Redirect Uris" + }, + "client_name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Client Name" + }, + "grant_types": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Grant Types" + }, + "response_types": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Response Types" + }, + "token_endpoint_auth_method": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Token Endpoint Auth Method" + }, + "scope": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Scope" + } + }, + "type": "object", + "required": ["redirect_uris", "grant_types", "response_types"], + "title": "OauthRegistrationRequest" + }, + "OauthRegistrationResponse": { + "properties": { + "client_id": { + "type": "string", + "title": "Client Id" + }, + "client_secret": { + "type": "string", + "title": "Client Secret" + }, + "redirect_uris": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Redirect Uris" + }, + "grant_types": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Grant Types" + }, + "response_types": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Response Types" + }, + "scope": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Scope" + } + }, + "type": "object", + "required": [ + "client_id", + "client_secret", + "redirect_uris", + "grant_types", + "response_types" + ], + "title": "OauthRegistrationResponse" + }, + "OauthTokenRequest": { + "properties": { + "grant_type": { + "type": "string", + "title": "Grant Type" + }, + "code": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Code" + }, + "refresh_token": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Refresh Token" + }, + "client_id": { + "type": "string", + "title": "Client Id" + }, + "client_secret": { + "type": "string", + "title": "Client Secret" + }, + "redirect_uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Redirect Uri" + } + }, + "type": "object", + "required": ["grant_type", "client_id", "client_secret"], + "title": "OauthTokenRequest" + }, + "OauthTokenResponse": { + "properties": { + "access_token": { + "type": "string", + "title": "Access Token" + }, + "token_type": { + "type": "string", + "title": "Token Type" + }, + "expires_in": { + "type": "integer", + "title": "Expires In" + }, + "refresh_token": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Refresh Token" + } + }, + "type": "object", + "required": ["access_token", "token_type", "expires_in"], + "title": "OauthTokenResponse" + }, + "OnboardingProgressUpdateRequest": { + "properties": { + "onboarding_status": { + "$ref": "#/components/schemas/OnboardingStatusEnum" + } + }, + "type": "object", + "required": ["onboarding_status"], + "title": "OnboardingProgressUpdateRequest" + }, + "OnboardingProgressUpdateResponse": { + "properties": { + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "onboarding_progress": { + "$ref": "#/components/schemas/OnboardingStatusEnum" + } + }, + "type": "object", + "required": ["organization_id", "onboarding_progress"], + "title": "OnboardingProgressUpdateResponse" + }, + "OnboardingStatusEnum": { + "type": "string", + "enum": [ + "NOT_STARTED", + "DESTINATION_SETUP_COMPLETE", + "EMBED_CODE_COPIED", + "COMPLETED" + ], + "title": "OnboardingStatusEnum" + }, + "Organization": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "organization_name": { + "type": "string", + "title": "Organization Name" + }, + "first_workspace_id": { + "type": "string", + "format": "uuid", + "title": "First Workspace Id" + }, + "onboarding_status": { + "$ref": "#/components/schemas/OnboardingStatusEnum" + } + }, + "type": "object", + "required": [ + "id", + "organization_name", + "first_workspace_id", + "onboarding_status" + ], + "title": "Organization" + }, + "OrganizationBillingInfo": { + "properties": { + "paymentStatus": { + "type": "string", + "enum": [ + "disabled", + "grace_period", + "locked", + "manual", + "okay", + "uninitialized" + ], + "title": "Paymentstatus" + }, + "subscriptionStatus": { + "anyOf": [ + { + "type": "string", + "enum": ["pre_subscription", "subscribed", "unsubscribed"] + }, + { + "type": "null" + } + ], + "title": "Subscriptionstatus" + }, + "accountType": { + "anyOf": [ + { + "type": "string", + "enum": ["free", "internal"] + }, + { + "type": "null" + } + ], + "title": "Accounttype" + }, + "gracePeriodEndsAt": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "title": "Graceperiodendsat" + } + }, + "type": "object", + "required": ["paymentStatus"], + "title": "OrganizationBillingInfo" + }, + "OrganizationDetailResponse": { + "properties": { + "organizationId": { + "type": "string", + "format": "uuid", + "title": "Organizationid" + }, + "organizationName": { + "type": "string", + "title": "Organizationname" + }, + "email": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Email" + } + }, + "type": "object", + "required": ["organizationId", "organizationName"], + "title": "OrganizationDetailResponse" + }, + "OrganizationInfoResponse": { + "properties": { + "organizationId": { + "type": "string", + "format": "uuid", + "title": "Organizationid" + }, + "organizationName": { + "type": "string", + "title": "Organizationname" + }, + "sso": { + "type": "boolean", + "title": "Sso" + }, + "billing": { + "anyOf": [ + { + "$ref": "#/components/schemas/OrganizationBillingInfo" + }, + { + "type": "null" + } + ] + } + }, + "type": "object", + "required": ["organizationId", "organizationName", "sso"], + "title": "OrganizationInfoResponse" + }, + "OrganizationSignupResponse": { + "properties": { + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "provisioning_state": { + "type": "string", + "title": "Provisioning State" + }, + "orb_subscription_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Orb Subscription Id" + }, + "stigg_subscription_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Stigg Subscription Id" + }, + "error_message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Error Message" + } + }, + "type": "object", + "required": ["organization_id", "provisioning_state"], + "title": "OrganizationSignupResponse", + "description": "Response schema for organization signup endpoint." + }, + "OrganizationSubscriptionCreditBlock": { + "properties": { + "amount": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "title": "Amount" + }, + "expiryDate": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Expirydate" + } + }, + "type": "object", + "title": "OrganizationSubscriptionCreditBlock" + }, + "OrganizationSubscriptionCredits": { + "properties": { + "balance": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ], + "title": "Balance" + }, + "blocks": { + "anyOf": [ + { + "items": { + "$ref": "#/components/schemas/OrganizationSubscriptionCreditBlock" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Blocks" + } + }, + "type": "object", + "title": "OrganizationSubscriptionCredits" + }, + "OrganizationSubscriptionResponse": { + "properties": { + "name": { + "type": "string", + "title": "Name" + }, + "selfServeSubscription": { + "type": "boolean", + "title": "Selfservesubscription" + }, + "balanceHidden": { + "type": "boolean", + "title": "Balancehidden" + }, + "cancellationDate": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Cancellationdate" + }, + "upcomingInvoice": { + "anyOf": [ + { + "$ref": "#/components/schemas/OrganizationSubscriptionUpcomingInvoice" + }, + { + "type": "null" + } + ] + }, + "credits": { + "anyOf": [ + { + "$ref": "#/components/schemas/OrganizationSubscriptionCredits" + }, + { + "type": "null" + } + ] + } + }, + "type": "object", + "required": ["name", "selfServeSubscription", "balanceHidden"], + "title": "OrganizationSubscriptionResponse" + }, + "OrganizationSubscriptionUpcomingInvoice": { + "properties": { + "currency": { + "type": "string", + "title": "Currency" + }, + "amount": { + "type": "string", + "title": "Amount" + }, + "dueDate": { + "type": "string", + "format": "date", + "title": "Duedate" + } + }, + "type": "object", + "required": ["currency", "amount", "dueDate"], + "title": "OrganizationSubscriptionUpcomingInvoice" + }, + "OrganizationsListResponse": { + "properties": { + "organizations": { + "items": { + "$ref": "#/components/schemas/Organization" + }, + "type": "array", + "title": "Organizations" + } + }, + "type": "object", + "required": ["organizations"], + "title": "OrganizationsListResponse" + }, + "PatchOp": { + "properties": { + "op": { + "type": "string", + "title": "Op" + }, + "path": { + "type": "string", + "title": "Path" + }, + "value": { + "anyOf": [ + {}, + { + "type": "null" + } + ], + "title": "Value" + } + }, + "type": "object", + "required": ["op", "path"], + "title": "PatchOp" + }, + "PaymentInformationCustomer": { + "properties": { + "email": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Email" + }, + "customerAddress": { + "anyOf": [ + { + "$ref": "#/components/schemas/Address" + }, + { + "type": "null" + } + ] + }, + "shippingAddress": { + "anyOf": [ + { + "$ref": "#/components/schemas/Address" + }, + { + "type": "null" + } + ] + }, + "defaultPaymentMethod": { + "anyOf": [ + { + "$ref": "#/components/schemas/PaymentMethod" + }, + { + "type": "null" + } + ] + } + }, + "type": "object", + "title": "PaymentInformationCustomer" + }, + "PaymentInformationResponse": { + "properties": { + "customer": { + "anyOf": [ + { + "$ref": "#/components/schemas/PaymentInformationCustomer" + }, + { + "type": "null" + } + ] + } + }, + "type": "object", + "title": "PaymentInformationResponse" + }, + "PaymentMethod": { + "properties": { + "type": { + "type": "string", + "title": "Type" + }, + "cardBrand": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cardbrand" + }, + "cardLastDigits": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Cardlastdigits" + }, + "cardExpireMonth": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "title": "Cardexpiremonth" + }, + "cardExpireYear": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "title": "Cardexpireyear" + } + }, + "type": "object", + "required": ["type"], + "title": "PaymentMethod" + }, + "QueueInformation": { + "properties": { + "total": { + "type": "integer", + "title": "Total" + }, + "scheduled_count": { + "type": "integer", + "title": "Scheduled Count" + }, + "pending_count": { + "type": "integer", + "title": "Pending Count" + } + }, + "type": "object", + "required": ["total", "scheduled_count", "pending_count"], + "title": "QueueInformation" + }, + "RevokeSourceOauthRequest": { + "properties": { + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "source_id": { + "type": "string", + "format": "uuid", + "title": "Source Id" + } + }, + "type": "object", + "required": ["workspace_id", "source_definition_id", "source_id"], + "title": "RevokeSourceOauthRequest" + }, + "RevokeSourceOauthResponse": { + "properties": {}, + "type": "object", + "title": "RevokeSourceOauthResponse" + }, + "ScopedTokenCreateRequest": { + "properties": { + "workspace_name": { + "type": "string", + "title": "Workspace Name", + "description": "The name of the workspace to create or use." + }, + "region_id": { + "anyOf": [ + { + "type": "string", + "format": "uuid" + }, + { + "type": "null" + } + ], + "title": "Region Id", + "description": "The region in which to create the workspace. If not provided, the default US region will be used. US region: 645a183f-b12b-4c6e-8ad3-99e165603450, EU region: b9e48d61-f082-4a14-a8d0-799a907938cb.", + "examples": [ + "645a183f-b12b-4c6e-8ad3-99e165603450", + "b9e48d61-f082-4a14-a8d0-799a907938cb" + ] + } + }, + "type": "object", + "required": ["workspace_name"], + "title": "ScopedTokenCreateRequest" + }, + "ScopedTokenCreateResponse": { + "properties": { + "token": { + "type": "string", + "title": "Token" + } + }, + "type": "object", + "required": ["token"], + "title": "ScopedTokenCreateResponse" + }, + "ScopedTokenInfoGetResponse": { + "properties": { + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id" + } + }, + "type": "object", + "required": ["organization_id", "workspace_id"], + "title": "ScopedTokenInfoGetResponse" + }, + "SonarCatalogInput": { + "properties": { + "streams": { + "items": { + "$ref": "#/components/schemas/SonarStream" + }, + "type": "array", + "title": "Streams" + }, + "selected_streams": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Selected Streams" + } + }, + "type": "object", + "title": "SonarCatalogInput" + }, + "SonarCatalogOutput": { + "properties": { + "streams": { + "items": { + "$ref": "#/components/schemas/SonarStream" + }, + "type": "array", + "title": "Streams" + }, + "selected_streams": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Selected Streams" + } + }, + "type": "object", + "title": "SonarCatalogOutput" + }, + "SonarCatalogSchemaType": { + "type": "string", + "enum": ["structured", "unstructured", "dynamic", "customizable"], + "title": "SonarCatalogSchemaType" + }, + "SonarStream": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name" + }, + "description": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Description" + }, + "suggested": { + "type": "boolean", + "title": "Suggested", + "default": false + }, + "cursor_fields": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Cursor Fields" + }, + "primary_key_fields": { + "anyOf": [ + { + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Primary Key Fields" + }, + "pii_fields": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Pii Fields" + }, + "immutable_fields": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Immutable Fields" + }, + "field_tags": { + "anyOf": [ + { + "items": { + "$ref": "#/components/schemas/FieldTag" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Field Tags" + }, + "parent_streams": { + "anyOf": [ + { + "items": { + "$ref": "#/components/schemas/ForeignKey" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Parent Streams" + }, + "child_streams": { + "anyOf": [ + { + "items": { + "$ref": "#/components/schemas/ForeignKey" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Child Streams" + }, + "json_schema": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Json Schema" + } + }, + "type": "object", + "title": "SonarStream" + }, + "SourceCatalogQueryRequest": { + "properties": { + "jmes_query": { + "type": "string", + "title": "Jmes Query", + "description": "JMESPath query to execute on the cached source catalog" + } + }, + "type": "object", + "required": ["jmes_query"], + "title": "SourceCatalogQueryRequest" + }, + "SourceCatalogQueryResponse": { + "properties": { + "result": { + "title": "Result", + "description": "The result of the JMESPath query on the cached source catalog" + } + }, + "type": "object", + "required": ["result"], + "title": "SourceCatalogQueryResponse" + }, + "SourceCheckConfigRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name", + "description": "The name of the source." + }, + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id", + "description": "The workspace in which to create the source." + }, + "source_template_id": { + "type": "string", + "format": "uuid", + "title": "Source Template Id", + "description": "The id of the source template to create the source from." + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config", + "description": "The configuration for the source not already provided by the defaults in the source template (eg, credentials, bucket names). Must match the source template's User Config Spec." + }, + "selected_connection_template_tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Selected Connection Template Tags", + "description": "Optional list of tags to filter which connection templates will be used for this source. " + }, + "selected_connection_template_tags_mode": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode for connection templates: 'all' (must have all tags) or 'any' (must have at least one tag). Defaults to 'any'.", + "default": "any" + } + }, + "type": "object", + "required": ["workspace_id", "source_template_id", "source_config"], + "title": "SourceCheckConfigRequest" + }, + "SourceCheckConfigResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + "type": "object", + "required": ["id"], + "title": "SourceCheckConfigResponse" + }, + "SourceCheckConfigStatusResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "status": { + "$ref": "#/components/schemas/CheckStatus" + }, + "error_message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Error Message" + } + }, + "type": "object", + "required": ["id", "status"], + "title": "SourceCheckConfigStatusResponse" + }, + "SourceCreateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name", + "description": "The name of the source." + }, + "workspace_id": { + "type": "string", + "format": "uuid", + "title": "Workspace Id", + "description": "The workspace in which to create the source." + }, + "source_template_id": { + "type": "string", + "format": "uuid", + "title": "Source Template Id", + "description": "The id of the source template to create the source from." + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config", + "description": "The configuration for the source not already provided by the defaults in the source template (eg, credentials, bucket names). Must match the source template's User Config Spec." + }, + "selected_connection_template_tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Selected Connection Template Tags", + "description": "Optional list of tags to filter which connection templates will be used for this source. " + }, + "selected_connection_template_tags_mode": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode for connection templates: 'all' (must have all tags) or 'any' (must have at least one tag). Defaults to 'any'.", + "default": "any" + } + }, + "type": "object", + "required": ["workspace_id", "source_template_id", "source_config"], + "title": "SourceCreateRequest" + }, + "SourceCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_template": { + "$ref": "#/components/schemas/DetailedSourceTemplate" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "source_template", "source_config"], + "title": "SourceCreateResponse" + }, + "SourceDefinitionCatalogCreateRequest": { + "properties": { + "sonar_catalog": { + "anyOf": [ + { + "$ref": "#/components/schemas/SonarCatalogInput" + }, + { + "type": "null" + } + ] + }, + "catalog_type": { + "$ref": "#/components/schemas/SonarCatalogSchemaType" + } + }, + "type": "object", + "required": ["catalog_type"], + "title": "SourceDefinitionCatalogCreateRequest" + }, + "SourceDefinitionCatalogCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + } + }, + "type": "object", + "required": ["id"], + "title": "SourceDefinitionCatalogCreateResponse" + }, + "SourceDefinitionCatalogDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "SourceDefinitionCatalogDeleteResponse" + }, + "SourceDefinitionCatalogGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "sonar_catalog": { + "anyOf": [ + { + "$ref": "#/components/schemas/SonarCatalogOutput" + }, + { + "type": "null" + } + ] + }, + "catalog_type": { + "$ref": "#/components/schemas/SonarCatalogSchemaType" + }, + "query_result": { + "anyOf": [ + {}, + { + "type": "null" + } + ], + "title": "Query Result" + } + }, + "type": "object", + "required": ["id", "name", "source_definition_id", "catalog_type"], + "title": "SourceDefinitionCatalogGetResponse" + }, + "SourceDefinitionListResponse": { + "properties": { + "definitions": { + "items": { + "$ref": "#/components/schemas/ConnectorDefinitionSummarized" + }, + "type": "array", + "title": "Definitions" + } + }, + "type": "object", + "required": ["definitions"], + "title": "SourceDefinitionListResponse" + }, + "SourceDefinitionResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "definition": { + "$ref": "#/components/schemas/ConnectorDefinition" + } + }, + "type": "object", + "required": ["id", "definition"], + "title": "SourceDefinitionResponse" + }, + "SourceDefinitionStreamCreateRequest": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream", + "description": "The stream to add to the catalog." + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceDefinitionStreamCreateRequest" + }, + "SourceDefinitionStreamCreateResponse": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream" + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceDefinitionStreamCreateResponse" + }, + "SourceDefinitionStreamDeleteResponse": { + "properties": { + "stream_name": { + "type": "string", + "title": "Stream Name" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["stream_name", "deleted_at"], + "title": "SourceDefinitionStreamDeleteResponse" + }, + "SourceDefinitionStreamPatchRequest": { + "properties": { + "patch_ops": { + "items": { + "$ref": "#/components/schemas/PatchOp" + }, + "type": "array", + "title": "Patch Ops", + "description": "List of JSON Patch (RFC 6902) operations to apply to the stream." + } + }, + "type": "object", + "required": ["patch_ops"], + "title": "SourceDefinitionStreamPatchRequest" + }, + "SourceDefinitionStreamPatchResponse": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream" + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceDefinitionStreamPatchResponse" + }, + "SourceDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "SourceDeleteResponse" + }, + "SourceDiscoverResponse": { + "properties": { + "source_id": { + "type": "string", + "format": "uuid", + "title": "Source Id" + }, + "sonar_catalog": { + "$ref": "#/components/schemas/SonarCatalogOutput" + } + }, + "type": "object", + "required": ["source_id", "sonar_catalog"], + "title": "SourceDiscoverResponse" + }, + "SourceGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_template": { + "$ref": "#/components/schemas/DetailedSourceTemplate" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "source_template", "source_config"], + "title": "SourceGetResponse" + }, + "SourceListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "summarized_source_template": { + "$ref": "#/components/schemas/SummarizedSourceTemplate" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "summarized_source_template"], + "title": "SourceListItem" + }, + "SourceListResponse": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/SourceListItem" + }, + "type": "array", + "title": "Data" + } + }, + "type": "object", + "required": ["data"], + "title": "SourceListResponse" + }, + "SourceStreamCreateRequest": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream", + "description": "The stream to add to the catalog." + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceStreamCreateRequest" + }, + "SourceStreamCreateResponse": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream" + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceStreamCreateResponse" + }, + "SourceStreamDeleteResponse": { + "properties": { + "stream_name": { + "type": "string", + "title": "Stream Name" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["stream_name", "deleted_at"], + "title": "SourceStreamDeleteResponse" + }, + "SourceStreamPatchRequest": { + "properties": { + "patch_ops": { + "items": { + "$ref": "#/components/schemas/PatchOp" + }, + "type": "array", + "title": "Patch Ops", + "description": "List of JSON Patch (RFC 6902) operations to apply to the stream." + } + }, + "type": "object", + "required": ["patch_ops"], + "title": "SourceStreamPatchRequest" + }, + "SourceStreamPatchResponse": { + "properties": { + "stream": { + "$ref": "#/components/schemas/SonarStream" + } + }, + "type": "object", + "required": ["stream"], + "title": "SourceStreamPatchResponse" + }, + "SourceTemplateCloneRequest": { + "properties": { + "original_source_template_id": { + "type": "string", + "format": "uuid", + "title": "Original Source Template Id", + "description": "ID of the source template to clone" + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name", + "description": "Optional name for the cloned template. If not provided, uses the original template's name" + } + }, + "type": "object", + "required": ["original_source_template_id"], + "title": "SourceTemplateCloneRequest", + "description": "Request to clone an existing source template" + }, + "SourceTemplateCreateRequest": { + "properties": { + "actor_definition_id": { + "type": "string", + "format": "uuid", + "title": "Actor Definition Id" + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name", + "description": "Name for the template." + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config", + "description": "A template configuration containing default values for all those fields that the end user will *not* provide. Personalized fields like resource names or secrets should not be provided here." + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + } + }, + "type": "object", + "required": ["actor_definition_id", "partial_default_config"], + "title": "SourceTemplateCreateRequest" + }, + "SourceTemplateCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "user_config_spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config" + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "user_config_spec", + "partial_default_config" + ], + "title": "SourceTemplateCreateResponse" + }, + "SourceTemplateCustomization": { + "properties": { + "stream_selection_mode": { + "$ref": "#/components/schemas/StreamSelectionMode", + "description": "Strategy for selecting streams when creating connections", + "default": "suggested" + }, + "stream_whitelist": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Stream Whitelist" + }, + "stream_customizations": { + "anyOf": [ + { + "additionalProperties": { + "$ref": "#/components/schemas/StreamCustomization" + }, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Stream Customizations" + } + }, + "type": "object", + "title": "SourceTemplateCustomization" + }, + "SourceTemplateDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "SourceTemplateDeleteResponse" + }, + "SourceTemplateGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "user_config_spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config" + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "user_config_spec", + "partial_default_config" + ], + "title": "SourceTemplateGetResponse" + }, + "SourceTemplateListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "icon"], + "title": "SourceTemplateListItem" + }, + "SourceTemplateListResponse": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/SourceTemplateListItem" + }, + "type": "array", + "title": "Data" + } + }, + "type": "object", + "required": ["data"], + "title": "SourceTemplateListResponse" + }, + "SourceTemplateTagRequest": { + "properties": { + "tag": { + "type": "string", + "title": "Tag" + } + }, + "type": "object", + "required": ["tag"], + "title": "SourceTemplateTagRequest" + }, + "SourceTemplateTagResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "user_config_spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config" + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "user_config_spec", + "partial_default_config" + ], + "title": "SourceTemplateTagResponse" + }, + "SourceTemplateUntagResponse": { + "properties": { + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["deleted_at"], + "title": "SourceTemplateUntagResponse" + }, + "SourceTemplateUpdateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name" + }, + "propagate": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "title": "Propagate", + "default": false + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config", + "description": "A template configuration containing default values for all those fields that the end user will *not* provide. Personalized fields like resource names or secrets should not be provided here." + } + }, + "type": "object", + "required": ["partial_default_config"], + "title": "SourceTemplateUpdateRequest" + }, + "SourceTemplateUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "source_definition_id": { + "type": "string", + "format": "uuid", + "title": "Source Definition Id" + }, + "user_config_spec": { + "$ref": "#/components/schemas/ConnectorSpecification" + }, + "partial_default_config": { + "additionalProperties": true, + "type": "object", + "title": "Partial Default Config" + }, + "customization": { + "anyOf": [ + { + "$ref": "#/components/schemas/SourceTemplateCustomization" + }, + { + "type": "null" + } + ], + "description": "\nCustomizations for the source template. If stream_whitelist is provided, only the specified streams will be synced.\nIf stream_customizations are provided, and stream fields specified will override the default settings for only that\nfield. Where any streams fields are not specified, the default settings will be used.\n" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": [ + "id", + "name", + "source_definition_id", + "user_config_spec", + "partial_default_config" + ], + "title": "SourceTemplateUpdateResponse" + }, + "SourceUpdateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name" + }, + "source_config": { + "anyOf": [ + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Source Config" + } + }, + "type": "object", + "title": "SourceUpdateRequest" + }, + "SourceUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "source_template": { + "$ref": "#/components/schemas/DetailedSourceTemplate" + }, + "source_config": { + "additionalProperties": true, + "type": "object", + "title": "Source Config" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "source_template", "source_config"], + "title": "SourceUpdateResponse" + }, + "StreamCustomization": { + "properties": { + "primary_key_fields": { + "anyOf": [ + { + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Primary Key Fields" + }, + "cursor_field": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "title": "Cursor Field" + } + }, + "type": "object", + "title": "StreamCustomization" + }, + "StreamSelectionMode": { + "type": "string", + "enum": ["all", "suggested", "whitelist"], + "title": "StreamSelectionMode" + }, + "SummarizedSourceTemplate": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "icon": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Icon" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Tags" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "icon"], + "title": "SummarizedSourceTemplate" + }, + "SupportLevel": { + "type": "string", + "enum": ["archived", "certified", "community", "none"], + "title": "SupportLevel" + }, + "TagSelectionMode": { + "type": "string", + "enum": ["all", "any"], + "title": "TagSelectionMode" + }, + "TemplateTagCreateRequest": { + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "title": "Name" + } + }, + "type": "object", + "required": ["name"], + "title": "TemplateTagCreateRequest" + }, + "TemplateTagCreateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "organization_id"], + "title": "TemplateTagCreateResponse" + }, + "TemplateTagDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "TemplateTagDeleteResponse" + }, + "TemplateTagListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "organization_id"], + "title": "TemplateTagListItem" + }, + "TemplateTagListResponse": { + "properties": { + "data": { + "items": { + "$ref": "#/components/schemas/TemplateTagListItem" + }, + "type": "array", + "title": "Data" + } + }, + "type": "object", + "required": ["data"], + "title": "TemplateTagListResponse" + }, + "TemplateTagUpdateRequest": { + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "title": "Name" + } + }, + "type": "object", + "required": ["name"], + "title": "TemplateTagUpdateRequest" + }, + "TemplateTagUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id" + }, + "name": { + "type": "string", + "title": "Name" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id" + }, + "created_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Created At" + }, + "updated_at": { + "anyOf": [ + { + "type": "string", + "format": "date-time" + }, + { + "type": "null" + } + ], + "title": "Updated At" + } + }, + "type": "object", + "required": ["id", "name", "organization_id"], + "title": "TemplateTagUpdateResponse" + }, + "TokenRequest": { + "properties": { + "client_id": { + "type": "string", + "title": "Client Id" + }, + "client_secret": { + "type": "string", + "title": "Client Secret" + } + }, + "type": "object", + "required": ["client_id", "client_secret"], + "title": "TokenRequest" + }, + "TokenResponse": { + "properties": { + "access_token": { + "type": "string", + "title": "Access Token" + }, + "token_type": { + "type": "string", + "title": "Token Type" + }, + "expires_in": { + "type": "integer", + "title": "Expires In" + } + }, + "type": "object", + "required": ["access_token", "token_type", "expires_in"], + "title": "TokenResponse" + }, + "ToolCallEvent": { + "properties": { + "tool_name": { + "$ref": "#/components/schemas/AgentToolName" + }, + "args": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": true, + "type": "object" + }, + { + "type": "null" + } + ], + "title": "Args" + } + }, + "type": "object", + "required": ["tool_name", "args"], + "title": "ToolCallEvent", + "description": "Format of tool call events sent to the browser." + }, + "ToolResponseEvent": { + "properties": { + "tool_name": { + "$ref": "#/components/schemas/AgentToolName" + }, + "response": { + "title": "Response" + } + }, + "type": "object", + "required": ["tool_name", "response"], + "title": "ToolResponseEvent", + "description": "Format of tool response events sent to the browser." + }, + "WidgetTokenCreateRequest": { + "properties": { + "workspace_name": { + "type": "string", + "title": "Workspace Name", + "description": "The name of the workspace to create or use." + }, + "region_id": { + "anyOf": [ + { + "type": "string", + "format": "uuid" + }, + { + "type": "null" + } + ], + "title": "Region Id", + "description": "The region in which to create the workspace. If not provided, the default US region will be used. US region: 645a183f-b12b-4c6e-8ad3-99e165603450, EU region: b9e48d61-f082-4a14-a8d0-799a907938cb.", + "examples": [ + "645a183f-b12b-4c6e-8ad3-99e165603450", + "b9e48d61-f082-4a14-a8d0-799a907938cb" + ] + }, + "allowed_origin": { + "type": "string", + "title": "Allowed Origin", + "description": "The allowed origin for the widget." + }, + "selected_source_template_tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Selected Source Template Tags", + "description": "Optional list of tags to filter which source templates will be available in the widget." + }, + "selected_source_template_tags_mode": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode for source templates: 'all' (must have all tags) or 'any' (must have at least one tag). Defaults to 'any'.", + "default": "any" + }, + "selected_connection_template_tags": { + "items": { + "type": "string" + }, + "type": "array", + "title": "Selected Connection Template Tags", + "description": "Optional list of tags to filter which connection templates will be available in the widget." + }, + "selected_connection_template_tags_mode": { + "$ref": "#/components/schemas/TagSelectionMode", + "description": "Tag selection mode for connection templates: 'all' (must have all tags) or 'any' (must have at least one tag). Defaults to 'any'.", + "default": "any" + } + }, + "type": "object", + "required": ["workspace_name", "allowed_origin"], + "title": "WidgetTokenCreateRequest" + }, + "WidgetTokenCreateResponse": { + "properties": { + "token": { + "type": "string", + "title": "Token" + } + }, + "type": "object", + "required": ["token"], + "title": "WidgetTokenCreateResponse" + }, + "WorkspaceDeleteResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id", + "description": "Unique identifier of the deleted workspace" + }, + "deleted_at": { + "type": "string", + "format": "date-time", + "title": "Deleted At", + "description": "Timestamp when the workspace was deleted" + } + }, + "type": "object", + "required": ["id", "deleted_at"], + "title": "WorkspaceDeleteResponse" + }, + "WorkspaceGetResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id", + "description": "Unique identifier for the workspace" + }, + "name": { + "type": "string", + "title": "Name", + "description": "Name of the workspace" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id", + "description": "Organization that owns this workspace" + }, + "status": { + "$ref": "#/components/schemas/WorkspaceStatus", + "description": "The status of the workspace (active or inactive)" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At", + "description": "Timestamp when the workspace was created" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "title": "Updated At", + "description": "Timestamp when the workspace was last updated" + } + }, + "type": "object", + "required": [ + "id", + "name", + "organization_id", + "status", + "created_at", + "updated_at" + ], + "title": "WorkspaceGetResponse" + }, + "WorkspaceListItem": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id", + "description": "Unique identifier for the workspace" + }, + "name": { + "type": "string", + "title": "Name", + "description": "Name of the workspace" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id", + "description": "Organization that owns this workspace" + }, + "status": { + "$ref": "#/components/schemas/WorkspaceStatus", + "description": "The status of the workspace (active or inactive)" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At", + "description": "Timestamp when the workspace was created" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "title": "Updated At", + "description": "Timestamp when the workspace was last updated" + } + }, + "type": "object", + "required": [ + "id", + "name", + "organization_id", + "status", + "created_at", + "updated_at" + ], + "title": "WorkspaceListItem" + }, + "WorkspaceListResponse": { + "properties": { + "next": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Next", + "description": "Next page url, empty if no more pages" + }, + "data": { + "items": { + "$ref": "#/components/schemas/WorkspaceListItem" + }, + "type": "array", + "title": "Data", + "description": "List of workspaces matching the query" + } + }, + "type": "object", + "required": ["data"], + "title": "WorkspaceListResponse" + }, + "WorkspaceStatsResponse": { + "properties": { + "active_count": { + "type": "integer", + "title": "Active Count", + "description": "Number of active workspaces" + }, + "inactive_count": { + "type": "integer", + "title": "Inactive Count", + "description": "Number of inactive workspaces" + }, + "total_count": { + "type": "integer", + "title": "Total Count", + "description": "Total number of workspaces" + } + }, + "type": "object", + "required": ["active_count", "inactive_count", "total_count"], + "title": "WorkspaceStatsResponse" + }, + "WorkspaceStatus": { + "type": "string", + "enum": ["active", "inactive"], + "title": "WorkspaceStatus" + }, + "WorkspaceSyncResponse": { + "properties": { + "total_count": { + "type": "integer", + "title": "Total Count", + "description": "Total number of workspaces found" + }, + "created_count": { + "type": "integer", + "title": "Created Count", + "description": "Number of workspaces created locally" + }, + "created_workspace_ids": { + "items": { + "type": "string", + "format": "uuid" + }, + "type": "array", + "title": "Created Workspace Ids", + "description": "IDs of workspaces created" + } + }, + "type": "object", + "required": ["total_count", "created_count", "created_workspace_ids"], + "title": "WorkspaceSyncResponse" + }, + "WorkspaceUpdateRequest": { + "properties": { + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "title": "Name", + "description": "New name for the workspace" + }, + "status": { + "anyOf": [ + { + "$ref": "#/components/schemas/WorkspaceStatus" + }, + { + "type": "null" + } + ], + "description": "Set status to active or inactive" + } + }, + "type": "object", + "title": "WorkspaceUpdateRequest" + }, + "WorkspaceUpdateResponse": { + "properties": { + "id": { + "type": "string", + "format": "uuid", + "title": "Id", + "description": "Unique identifier for the workspace" + }, + "name": { + "type": "string", + "title": "Name", + "description": "Name of the workspace" + }, + "organization_id": { + "type": "string", + "format": "uuid", + "title": "Organization Id", + "description": "Organization that owns this workspace" + }, + "status": { + "$ref": "#/components/schemas/WorkspaceStatus", + "description": "The status of the workspace (active or inactive)" + }, + "created_at": { + "type": "string", + "format": "date-time", + "title": "Created At", + "description": "Timestamp when the workspace was created" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "title": "Updated At", + "description": "Timestamp when the workspace was last updated" + } + }, + "type": "object", + "required": [ + "id", + "name", + "organization_id", + "status", + "created_at", + "updated_at" + ], + "title": "WorkspaceUpdateResponse" + } + }, + "securitySchemes": { + "HTTPBearer": { + "type": "http", + "scheme": "bearer" + } + } + }, + "tags": [ + { + "name": "Embedded", + "description": "All the endpoints necessary to retrieve credentials for your end users." + }, + { + "name": "Sonar - APIs", + "description": "Operator endpoints to access end user's API sources without requiring credentials." + }, + { + "name": "Sonar - Files", + "description": "Operator endpoints to access end user's file sources (GDrive, Sharepoint, S3...) without requiring credentials" + }, + { + "name": "Sources", + "description": "Operator endpoints to list all the configured sources." + }, + { + "name": "Template Connections", + "description": "Operator endpoints to configure default connections setup." + }, + { + "name": "Template Sources", + "description": "Operator endpoints to configure default source setup." + } + ] +} diff --git a/docusaurus/src/scripts/embedded-api/constants.js b/docusaurus/src/scripts/embedded-api/constants.js new file mode 100644 index 00000000000..c5d3b9e5bb1 --- /dev/null +++ b/docusaurus/src/scripts/embedded-api/constants.js @@ -0,0 +1,32 @@ +/** + * Shared constants for the Docusaurus documentation build process + * + * This file contains paths and configuration values that are used across + * multiple scripts and configuration files. + */ + +const path = require("path"); + +// Get the project root directory (docusaurus folder) +const PROJECT_ROOT = path.resolve(__dirname, "..", "..", ".."); + +// Path to the cached embedded API OpenAPI specification +const SPEC_CACHE_PATH = path.join(PROJECT_ROOT, "src", "data", "embedded_api_spec.json"); + +// URL for fetching the latest embedded API specification + +const EMBEDDED_API_SPEC_URL = "https://airbyte-sonar-prod.s3.us-east-2.amazonaws.com/openapi/latest/app.json"; + +// API documentation output directory (relative to project root) +const API_DOCS_OUTPUT_DIR = "api-docs/embedded-api"; + +// Sidebar file path for generated API docs +const API_SIDEBAR_PATH = path.join(PROJECT_ROOT, API_DOCS_OUTPUT_DIR, "sidebar.ts"); + +module.exports = { + PROJECT_ROOT, + SPEC_CACHE_PATH, + EMBEDDED_API_SPEC_URL, + API_DOCS_OUTPUT_DIR, + API_SIDEBAR_PATH, +}; diff --git a/docusaurus/src/scripts/embedded-api/openapi-validator.js b/docusaurus/src/scripts/embedded-api/openapi-validator.js new file mode 100644 index 00000000000..e37a337eb38 --- /dev/null +++ b/docusaurus/src/scripts/embedded-api/openapi-validator.js @@ -0,0 +1,287 @@ +/** + * OpenAPI specification validator using @seriousme/openapi-schema-validator + * + * This validator uses a purpose-built OpenAPI validation library that supports + * OpenAPI 2.0, 3.0.x, and 3.1.x specifications. It's been tested on over 2,000 + * real-world APIs from AWS, Microsoft, Google, etc. + * + * Ensures compatibility with: + * 1. The docusaurus-plugin-openapi-docs generator + * 2. Our custom sidebar filtering logic in docusaurus.config.js + * 3. The Docusaurus theme-openapi-docs components + */ + +// Note: Using dynamic import since this package is ESM-only +// We'll import it inside the async function to maintain CommonJS compatibility + +/** + * Validates an OpenAPI specification using the schema validator + * @param {Object} spec - The OpenAPI spec to validate + * @throws {Error} If validation fails + * @returns {Object} The validated spec with additional metadata + */ +async function validateOpenAPISpec(spec) { + console.log("🔍 Validating OpenAPI spec with @seriousme/openapi-schema-validator..."); + + try { + // Dynamic import to handle ESM module in CommonJS context + const { Validator } = await import("@seriousme/openapi-schema-validator"); + + // Create validator instance + const validator = new Validator(); + + // Validate the spec + const result = await validator.validate(spec); + + if (!result.valid) { + let errorMessages = "Unknown validation errors"; + + if (result.errors && Array.isArray(result.errors)) { + errorMessages = result.errors.map(err => { + const path = err.instancePath || err.schemaPath || 'unknown'; + const message = err.message || 'validation failed'; + return ` • ${path}: ${message}`; + }).join('\n'); + } else if (result.errors) { + // Handle case where errors is not an array + errorMessages = ` • ${String(result.errors)}`; + } + + throw new Error(`OpenAPI spec validation failed:\n${errorMessages}`); + } + + // Get the validated specification + const validatedSpec = validator.specification; + const version = validator.version; + + console.log(`✅ OpenAPI spec validation passed!`); + console.log(`📋 OpenAPI version: ${version}`); + + // Perform additional custom validations for our specific use case + try { + performDocumentationSpecificValidations(validatedSpec); + } catch (validationError) { + // Convert validation warnings to non-fatal warnings for undefined tags + if (validationError.message && validationError.message.includes('undefined tags')) { + console.warn(`⚠️ ${validationError.message}`); + console.warn(`📝 This may cause missing sidebar sections in the documentation`); + } else { + // Re-throw other validation errors + throw validationError; + } + } + + // Log validation success with stats + const stats = generateValidationStats(validatedSpec); + console.log(`📊 Spec stats: ${stats.pathCount} paths, ${stats.tagCount} tags, ${stats.operationCount} operations`); + + return validatedSpec; + + } catch (importError) { + // Fallback to basic validation if the import fails + console.warn("⚠️ Could not load OpenAPI schema validator, using basic validation:", importError.message); + return performBasicValidation(spec); + } +} + +/** + * Performs additional validations specific to our documentation needs + * @param {Object} spec - The validated OpenAPI spec + */ +function performDocumentationSpecificValidations(spec) { + // 1. Ensure tags are defined (critical for sidebar generation) + if (!spec.tags || !Array.isArray(spec.tags) || spec.tags.length === 0) { + throw new Error("OpenAPI spec must have tags array (required for sidebar generation)"); + } + + // 2. Validate that every defined tag has at least one operation (critical for docs) + const definedTags = new Set(spec.tags.map(tag => tag.name)); + const usedTags = new Set(); + + for (const [path, pathItem] of Object.entries(spec.paths)) { + const httpMethods = ['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace']; + + for (const method of httpMethods) { + const operation = pathItem[method]; + if (operation?.tags) { + operation.tags.forEach(tag => { + usedTags.add(tag); + }); + } + } + } + + // 3. Critical: Every defined tag must have at least one operation + const unusedTags = Array.from(definedTags).filter(tag => !usedTags.has(tag)); + if (unusedTags.length > 0) { + throw new Error(`Defined tags have no operations and will not appear in docs: ${unusedTags.join(', ')}`); + } + + // 4. Warn about operations using undefined tags (but don't fail - let them be uncategorized) + const undefinedTags = Array.from(usedTags).filter(tag => !definedTags.has(tag)); + if (undefinedTags.length > 0) { + console.warn(`⚠️ Operations reference undefined tags (will be uncategorized): ${undefinedTags.join(', ')}`); + } + + // 4. Validate that operations have required fields for documentation + const criticalIssues = []; + let operationsWithIssues = 0; + + for (const [path, pathItem] of Object.entries(spec.paths)) { + const httpMethods = ['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace']; + + for (const method of httpMethods) { + const operation = pathItem[method]; + if (operation) { + const operationRef = `${path}[${method.toUpperCase()}]`; + + // Critical: operationId is required for MDX generation + if (!operation.operationId) { + criticalIssues.push(`${operationRef} missing operationId (required for MDX file generation)`); + } + + // Critical: tags are required for sidebar organization + if (!operation.tags || operation.tags.length === 0) { + criticalIssues.push(`${operationRef} missing tags (required for sidebar grouping)`); + } + + // Critical: responses are required + if (!operation.responses || Object.keys(operation.responses).length === 0) { + criticalIssues.push(`${operationRef} missing responses (required for documentation)`); + } + + // Warning: summary is recommended + if (!operation.summary) { + console.warn(`⚠️ ${operationRef} missing summary (recommended for UI display)`); + operationsWithIssues++; + } + + // Warning: should have at least one success response + if (operation.responses) { + const responseCodes = Object.keys(operation.responses); + const hasSuccessResponse = responseCodes.some(code => + code.startsWith('2') || code === 'default' + ); + + if (!hasSuccessResponse) { + console.warn(`⚠️ ${operationRef} has no success response (2xx or default)`); + } + } + } + } + } + + // Throw error if there are critical issues + if (criticalIssues.length > 0) { + throw new Error(`Critical OpenAPI documentation issues found:\n${criticalIssues.map(issue => ` • ${issue}`).join('\n')}`); + } + + if (operationsWithIssues > 0) { + console.warn(`⚠️ Found ${operationsWithIssues} operation(s) with potential documentation issues`); + } + + console.log(`✅ Documentation-specific validations passed`); + console.log(`🏷️ Tags: ${definedTags.size} defined, all have operations (will appear in docs)`); + if (undefinedTags.length > 0) { + console.log(`🏷️ Additional tags: ${undefinedTags.length} used by operations but not formally defined`); + } +} + +/** + * Fallback basic validation if the schema validator can't be loaded + * @param {Object} spec - The OpenAPI spec + * @returns {Object} The spec with basic validation + */ +function performBasicValidation(spec) { + console.log("🔍 Performing basic OpenAPI spec validation..."); + + // Basic structure validation + if (!spec || typeof spec !== "object") { + throw new Error("Invalid spec: not an object"); + } + + if (!spec.openapi && !spec.swagger) { + throw new Error("Invalid spec: missing openapi or swagger version field"); + } + + if (!spec.info || !spec.info.title) { + throw new Error("Invalid spec: missing info.title"); + } + + if (!spec.info.version) { + throw new Error("Invalid spec: missing info.version"); + } + + // Check for empty title + if (spec.info.title === "") { + throw new Error("Invalid spec: info.title cannot be empty"); + } + + if (!spec.paths || typeof spec.paths !== "object") { + throw new Error("Invalid spec: missing or invalid paths"); + } + + // Check for empty paths + if (Object.keys(spec.paths).length === 0) { + throw new Error("Invalid spec: paths object cannot be empty"); + } + + if (!spec.tags || !Array.isArray(spec.tags)) { + throw new Error("Invalid spec: missing or invalid tags array (required for sidebar generation)"); + } + + // Check for empty tags + if (spec.tags.length === 0) { + throw new Error("Invalid spec: tags array cannot be empty (required for sidebar generation)"); + } + + // Check tag structure + for (let i = 0; i < spec.tags.length; i++) { + const tag = spec.tags[i]; + if (!tag || typeof tag !== "object") { + throw new Error(`Invalid spec: tag[${i}] must be an object`); + } + if (!tag.name || typeof tag.name !== "string" || tag.name === "") { + throw new Error(`Invalid spec: tag[${i}] must have a non-empty name`); + } + } + + console.log(`✅ Basic OpenAPI spec validation passed`); + console.log(`📋 API: ${spec.info.title} v${spec.info.version}`); + + const stats = generateValidationStats(spec); + console.log(`📊 Spec stats: ${stats.pathCount} paths, ${stats.tagCount} tags, ${stats.operationCount} operations`); + + return spec; +} + +/** + * Generates validation statistics for logging + * @param {Object} spec - The OpenAPI spec + * @returns {Object} Statistics object + */ +function generateValidationStats(spec) { + const pathCount = Object.keys(spec.paths || {}).length; + const tagCount = spec.tags?.length || 0; + + let operationCount = 0; + for (const pathItem of Object.values(spec.paths || {})) { + const methods = ['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace']; + operationCount += methods.filter(method => pathItem[method]).length; + } + + const schemaCount = spec.components?.schemas ? Object.keys(spec.components.schemas).length : 0; + + return { + pathCount, + tagCount, + operationCount, + schemaCount, + version: spec.info?.version || 'unknown', + title: spec.info?.title || 'Unknown API' + }; +} + +module.exports = { + validateOpenAPISpec, +}; diff --git a/docusaurus/src/scripts/embedded-api/prepare-embedded-api-spec.js b/docusaurus/src/scripts/embedded-api/prepare-embedded-api-spec.js new file mode 100644 index 00000000000..565733eb82b --- /dev/null +++ b/docusaurus/src/scripts/embedded-api/prepare-embedded-api-spec.js @@ -0,0 +1,154 @@ +/** + * This script fetches the embedded API OpenAPI spec and processes it before + * the build process starts. It ensures the spec is available and validated + * for both the OpenAPI plugin and sidebar generation. + */ +const fs = require("fs"); +const https = require("https"); +const path = require("path"); +const { validateOpenAPISpec } = require("./openapi-validator"); +const { SPEC_CACHE_PATH, EMBEDDED_API_SPEC_URL } = require("./constants"); + +function fetchEmbeddedApiSpec() { + return new Promise((resolve, reject) => { + console.log("Fetching embedded API spec..."); + + https + .get(EMBEDDED_API_SPEC_URL, (response) => { + if (response.statusCode !== 200) { + reject(new Error(`Failed to fetch spec: ${response.statusCode}`)); + return; + } + + let data = ""; + + response.on("data", (chunk) => { + data += chunk; + }); + + response.on("end", () => { + try { + const spec = JSON.parse(data); + resolve(spec); + } catch (error) { + reject( + new Error(`Failed to parse spec data: ${error.message}`), + ); + } + }); + }) + .on("error", (error) => { + reject(new Error(`Network error: ${error.message}`)); + }); + }); +} + +// validateSpec function is now handled by AJV validator +// This provides comprehensive OpenAPI 3.1 schema validation + +function processSpec(spec) { + // For now, return the spec as-is + // In the future, we could add processing/transformations here if needed + return spec; +} + +function loadPreviousSpec() { + try { + if (fs.existsSync(SPEC_CACHE_PATH)) { + const previousSpec = JSON.parse(fs.readFileSync(SPEC_CACHE_PATH, 'utf8')); + console.log("📁 Found previous spec version:", previousSpec.info?.version || "unknown"); + return previousSpec; + } + } catch (error) { + console.warn("⚠️ Could not load previous spec:", error.message); + } + return null; +} + +async function main() { + + const previousSpec = loadPreviousSpec(); + try { + console.log("🔄 Attempting to fetch latest embedded API spec..."); + const spec = await fetchEmbeddedApiSpec(); + + // Validate using comprehensive OpenAPI schema validator + const validatedSpec = await validateOpenAPISpec(spec); + const processedSpec = processSpec(validatedSpec); + + // Ensure the data directory exists + const dir = path.dirname(SPEC_CACHE_PATH); + if (!fs.existsSync(dir)) { + fs.mkdirSync(dir, { recursive: true }); + } + + fs.writeFileSync( + SPEC_CACHE_PATH, + JSON.stringify(processedSpec, null, 2), + ); + + console.log( + `✅ Embedded API spec processed and saved to ${SPEC_CACHE_PATH}`, + ); + + if (previousSpec && previousSpec.info?.version !== processedSpec.info?.version) { + //TODO: we don't use versioning yet, so we should find another way to compare specs and output changes? + console.log(`📝 Spec updated from ${previousSpec.info?.version} to ${processedSpec.info?.version}`); + } + + } catch (error) { + console.error("❌ Error fetching/processing latest spec:", error.message); + + if (previousSpec) { + console.log("🔄 Using previous cached spec version to continue build..."); + console.log(`📋 Previous spec info: ${previousSpec.info?.title} v${previousSpec.info?.version}`); + + // Ensure the previous spec is still written to the expected location + const dir = path.dirname(SPEC_CACHE_PATH); + if (!fs.existsSync(dir)) { + fs.mkdirSync(dir, { recursive: true }); + } + + fs.writeFileSync( + SPEC_CACHE_PATH, + JSON.stringify(previousSpec, null, 2), + ); + + console.log("✅ Build will continue with previous spec version"); + } else { + console.error("💥 No previous spec found and latest fetch failed"); + console.error("📝 Creating minimal fallback spec to allow build to continue"); + console.error("💡 Tip: Run this script successfully once to create an initial cache"); + + // Create minimal valid OpenAPI spec that will result in empty docs + const fallbackSpec = { + openapi: "3.1.0", + info: { + title: "Embedded API (Unavailable)", + version: "0.0.0", + description: "The embedded API specification could not be fetched. Please check your network connection and try again." + }, + paths: {}, + tags: [], + components: {} + }; + + // Ensure the data directory exists + const dir = path.dirname(SPEC_CACHE_PATH); + if (!fs.existsSync(dir)) { + fs.mkdirSync(dir, { recursive: true }); + } + + // Cleanup is now handled by package.json scripts before doc generation + + fs.writeFileSync( + SPEC_CACHE_PATH, + JSON.stringify(fallbackSpec, null, 2), + ); + + console.log("✅ Build will continue with empty embedded API documentation"); + } + } +} + +main(); \ No newline at end of file diff --git a/poe-tasks/repo-root-tasks.toml b/poe-tasks/repo-root-tasks.toml index 3cd7dc3e6ab..74114a8f339 100644 --- a/poe-tasks/repo-root-tasks.toml +++ b/poe-tasks/repo-root-tasks.toml @@ -20,7 +20,7 @@ help = "Build the docs.airbyte.com site documentation using Docusaurus." shell = ''' cd $POE_ROOT/docusaurus -pnpm install +pnpm install --ignore-scripts pnpm build '''