diff --git a/.gitignore b/.gitignore index b00b9ecf4..c61b5fb67 100644 --- a/.gitignore +++ b/.gitignore @@ -50,6 +50,12 @@ yarn.lock !/docs/api/nerm/authentication.md !/docs/api/nerm/pagination-metadata-filtering.md !/docs/api/nerm/getting-started.md +!/docs/api/nerm/v1/authentication.md +!/docs/api/nerm/v1/pagination-metadata-filtering.md +!/docs/api/nerm/v1/getting-started.md +!/docs/api/nerm/v2025/authentication.md +!/docs/api/nerm/v2025/pagination-metadata-filtering.md +!/docs/api/nerm/v2025/getting-started.md !/docs/api/beta/getting-started.md diff --git a/package.json b/package.json index 897197ed1..e18418474 100644 --- a/package.json +++ b/package.json @@ -18,8 +18,8 @@ "clean-api-docs": "docusaurus clean-api-docs", "gen-api-docs:version": "docusaurus gen-api-docs:version", "clean-api-docs:version": "docusaurus clean-api-docs:version", - "gen-api-docs-all": "npm run merge-all-code-examples && npm run gen-all-api-specs-code-examples && docusaurus gen-api-docs:version isc_versioned:all --plugin-id isc-api && docusaurus gen-api-docs isc_versioned --plugin-id isc-api && docusaurus gen-api-docs iiq --plugin-id iiq-api && docusaurus gen-api-docs nerm --plugin-id nerm-api", - "clean-api-docs-all": "docusaurus clean-api-docs isc_versioned --plugin-id isc-api && docusaurus clean-api-docs:version isc_versioned:all --plugin-id isc-api && docusaurus clean-api-docs iiq --plugin-id iiq-api && docusaurus clean-api-docs nerm --plugin-id nerm-api", + "gen-api-docs-all": "npm run merge-all-code-examples && npm run gen-all-api-specs-code-examples && docusaurus gen-api-docs:version isc_versioned:all --plugin-id isc-api && docusaurus gen-api-docs isc_versioned --plugin-id isc-api && docusaurus gen-api-docs iiq --plugin-id iiq-api && docusaurus gen-api-docs:version nerm_versioned:all --plugin-id nerm-api && docusaurus gen-api-docs nerm_versioned --plugin-id nerm-api", + "clean-api-docs-all": "docusaurus clean-api-docs isc_versioned --plugin-id isc-api && docusaurus clean-api-docs:version isc_versioned:all --plugin-id isc-api && docusaurus clean-api-docs iiq --plugin-id iiq-api docusaurus clean-api-docs nerm_versioned --plugin-id nerm-api && docusaurus clean-api-docs:version nerm_versioned:all --plugin-id nerm-api && ", "rebuild-docs": "npm run clean-api-docs-all && npm run gen-api-docs-all", "beta-merge-code-examples": "node src/components/mergeoverlayfiles.js static/code-examples/beta/python_code_examples_overlay.yaml static/code-examples/beta/powershell_code_examples_overlay.yaml static/code-examples/beta/go_code_examples_overlay.yaml", "speecy-beta-spec": "speccy resolve --quiet static/api-specs/idn/sailpoint-api.beta.yaml -o static/code-examples/beta/beta.yaml", @@ -39,7 +39,8 @@ "sentence-case-v3": "node src/components/updateSpecsSentenceCase.js static/code-examples/v3/v3.yaml", "sentence-case-v2024": "node src/components/updateSpecsSentenceCase.js static/code-examples/v2024/v2024.yaml", "sentence-case-v2025": "node src/components/updateSpecsSentenceCase.js static/code-examples/v2025/v2025.yaml", - "sentence-case-all": "npm run sentence-case-beta && npm run sentence-case-v3 && npm run sentence-case-v2024 && npm run sentence-case-v2025" + "sentence-case-all": "npm run sentence-case-beta && npm run sentence-case-v3 && npm run sentence-case-v2024 && npm run sentence-case-v2025", + "version-nerm": "docusaurus gen-api-docs:version nerm_versioned:all --plugin-id nerm-api && docusaurus gen-api-docs nerm_versioned --plugin-id nerm-api" }, "dependencies": { "@docusaurus/faster": "3.8.1", diff --git a/plugins.ts b/plugins.ts index a8d1e6720..f5ec5680b 100644 --- a/plugins.ts +++ b/plugins.ts @@ -1,8 +1,8 @@ const {createApiPageMD} = require('./createApiPageMD'); -import clsx from "clsx"; +import clsx from 'clsx'; const pluginConfig = [ - [ + [ function disableExpensiveBundlerOptimizationPlugin() { return { name: 'disable-expensive-bundler-optimizations', @@ -89,45 +89,48 @@ const pluginConfig = [ groupPathsBy: 'tag', categoryLinkSource: 'tag', sidebarGenerators: { - createDocItem( - item, - { sidebarOptions: { customProps }, basePath } - ) { - const sidebar_label = item.frontMatter.sidebar_label; - const title = item.title; - const id = - item.type === "schema" ? `schemas/${item.id}` : item.id; - const className = - item.type === "api" - ? clsx( - { - "menu__list-item--deprecated": item.api.deprecated, - "menu__list-item--experimental": !!item.api.parameters?.find(header => header.name === 'X-SailPoint-Experimental'), // checks for existence of extension and adds "experimental" class - "api-method": !!item.api.method, - }, - item.api.method - ) - : clsx( - { - "menu__list-item--deprecated": item.schema.deprecated, - }, - "schema" - ); - return { - type: "doc" as const, - id: - basePath === "" || undefined - ? `${id}` - : `${basePath}/${id}`, - label: (sidebar_label as string) ?? title ?? id, - customProps: customProps, - className: className ? className : undefined, - }; + createDocItem(item, {sidebarOptions: {customProps}, basePath}) { + const sidebar_label = item.frontMatter.sidebar_label; + const title = item.title; + const id = + item.type === 'schema' ? `schemas/${item.id}` : item.id; + const className = + item.type === 'api' + ? clsx( + { + 'menu__list-item--deprecated': item.api.deprecated, + 'menu__list-item--experimental': + !!item.api.parameters?.find( + (header) => + header.name === 'X-SailPoint-Experimental', + ), // checks for existence of extension and adds "experimental" class + 'api-method': !!item.api.method, + }, + item.api.method, + ) + : clsx( + { + 'menu__list-item--deprecated': item.schema.deprecated, + }, + 'schema', + ); + return { + type: 'doc' as const, + id: + basePath === '' || undefined + ? `${id}` + : `${basePath}/${id}`, + label: (sidebar_label as string) ?? title ?? id, + customProps: customProps, + className: className ? className : undefined, + }; + }, }, - }}, + }, version: 'v2025', label: 'v2025', - downloadUrl: 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/refs/heads/main/dereferenced/deref-sailpoint-api.v2025.yaml', + downloadUrl: + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/refs/heads/main/dereferenced/deref-sailpoint-api.v2025.yaml', baseUrl: '/docs/api/v2025', template: 'api.mustache', markdownGenerators: { @@ -137,21 +140,24 @@ const pluginConfig = [ v2024: { specPath: 'static/code-examples/v2024/v2024.yaml', outputDir: 'docs/api/v2024', - downloadUrl: 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.v2024.yaml', + downloadUrl: + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.v2024.yaml', label: 'v2024', baseUrl: '/docs/api/v2024', }, v3: { specPath: 'static/code-examples/v3/v3.yaml', outputDir: 'docs/api/v3', - downloadUrl: 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.v3.yaml', + downloadUrl: + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.v3.yaml', label: 'v3', baseUrl: '/docs/api/v3', }, beta: { specPath: 'static/code-examples/beta/beta.yaml', outputDir: 'docs/api/beta', - downloadUrl: 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.beta.yaml', + downloadUrl: + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.beta.yaml', label: 'Beta', baseUrl: '/docs/api/beta', }, @@ -186,21 +192,33 @@ const pluginConfig = [ id: 'nerm-api', docsPluginId: 'nerm', config: { - nerm: { - specPath: 'static/api-specs/nerm/openapi.yaml', - outputDir: 'docs/api/nerm/v1', + nerm_versioned: { + version: 'v2025', // The default version shown + label: 'v2025', + specPath: 'static/api-specs/nerm/v2025/v2025.yaml', + outputDir: 'docs/api/nerm/v2025', downloadUrl: - 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.nerm.yaml', + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.nerm.v2025.yaml', + baseUrl: '/docs/api/nerm/v2025', sidebarOptions: { groupPathsBy: 'tag', categoryLinkSource: 'tag', }, template: 'api.mustache', + versions: { + v1: { + label: 'v1', + specPath: 'static/api-specs/nerm/openapi.yaml', + outputDir: 'docs/api/nerm/v1', + baseUrl: '/docs/api/nerm/v1', + downloadUrl: + 'https://raw.githubusercontent.com/sailpoint-oss/api-specs/main/dereferenced/deref-sailpoint-api.nerm.v1.yaml', + }, + }, }, }, }, ], ]; - export default pluginConfig; diff --git a/sidebars.ts b/sidebars.ts index ad9731bb9..d5f8dfa3f 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -12,118 +12,160 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; Create as many sidebars as you want. */ - import { versionSelector, versionCrumb } from 'docusaurus-plugin-openapi-docs/lib/sidebars/utils'; - import versions from './docs/api/v2025/versions.json'; - - const sidebars: SidebarsConfig = { - openApiSidebar: [ - { - type: 'category', - label: 'Documentation', - collapsible: false, - link: { type: 'doc', id: 'docs' }, - items: [ - { - type: 'category', - label: 'Extensibility', - link: { type: 'doc', id: 'extensibility' }, - items: [{ type: 'autogenerated', dirName: 'extensibility' }], - }, - { - type: 'category', - label: 'Connectivity', - link: { type: 'doc', id: 'connectivity' }, - items: [{ type: 'autogenerated', dirName: 'connectivity' }], - }, - { - type: 'category', - label: 'Tools', - link: { type: 'doc', id: 'tools' }, - items: [{ type: 'autogenerated', dirName: 'tools' }], - }, - { - type: 'category', - label: 'Reporting', - link: { type: 'doc', id: 'reporting' }, - items: [{ type: 'autogenerated', dirName: 'reporting' }], - }, - { - type: 'category', - label: 'Guides', - link: { type: 'doc', id: 'guides' }, - items: [{ type: 'autogenerated', dirName: 'guides' }], - }, - { - type: 'link', - label: 'Product Documentation', - href: 'https://documentation.sailpoint.com', - }, - ], - }, - ], - iiqSideBar: [ - { - type: 'category', - label: 'Documentation', - collapsible: false, - link: { type: 'doc', id: 'iiq' }, - items: [ - { - type: 'category', - label: 'Plugin Developer Guide', - link: { type: 'doc', id: 'plugin-developer-guide' }, - items: [{ type: 'autogenerated', dirName: 'iiq/plugin-developer-guide' }], - }, - { - type: 'link', - label: 'Product Documentation', - href: 'https://documentation.sailpoint.com/#identityiq', - }, - ], - }, - ], - iiqApiSideBar: [ - { - type: 'category', - label: 'API Specifications', - collapsible: false, - link: { - type: 'generated-index', - title: 'API Specifications', - description: - "These are the SCIM APIs for SailPoint's on-premise service, IdentityIQ. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.", - slug: '/api/iiq', - }, - items: require('./docs/api/iiq/sidebar.ts'), - }, - ], - nermSideBar: [ - { - type: 'category', - label: 'NERM', - collapsible: true, - link: { type: 'doc', id: 'api/non-employee' }, - customProps: { description: 'NERM API specifications.' }, - items: [ - { type: 'doc', id: 'api/nerm/getting-started' }, - { type: 'doc', id: 'api/nerm/authentication' }, - { type: 'doc', id: 'api/nerm/pagination-metadata-filtering' }, - { - type: 'category', - label: 'NERM v1 API', - link: { - type: 'generated-index', - title: 'NERM v1 API', - description: - 'These are the Non-employee Risk Management APIs for SailPoint. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', - slug: '/api/nerm/v1', - }, - items: require('./docs/api/nerm/v1/sidebar.ts'), - }, - ], - }, - ], - isc_2025_sidebar: [ +import { + versionSelector, + versionCrumb, +} from 'docusaurus-plugin-openapi-docs/lib/sidebars/utils'; +import versions from './docs/api/v2025/versions.json'; +import nermVersions from './docs/api/nerm/v2025/versions.json'; + +const sidebars: SidebarsConfig = { + openApiSidebar: [ + { + type: 'category', + label: 'Documentation', + collapsible: false, + link: {type: 'doc', id: 'docs'}, + items: [ + { + type: 'category', + label: 'Extensibility', + link: {type: 'doc', id: 'extensibility'}, + items: [{type: 'autogenerated', dirName: 'extensibility'}], + }, + { + type: 'category', + label: 'Connectivity', + link: {type: 'doc', id: 'connectivity'}, + items: [{type: 'autogenerated', dirName: 'connectivity'}], + }, + { + type: 'category', + label: 'Tools', + link: {type: 'doc', id: 'tools'}, + items: [{type: 'autogenerated', dirName: 'tools'}], + }, + { + type: 'category', + label: 'Reporting', + link: {type: 'doc', id: 'reporting'}, + items: [{type: 'autogenerated', dirName: 'reporting'}], + }, + { + type: 'category', + label: 'Guides', + link: {type: 'doc', id: 'guides'}, + items: [{type: 'autogenerated', dirName: 'guides'}], + }, + { + type: 'link', + label: 'Product Documentation', + href: 'https://documentation.sailpoint.com', + }, + ], + }, + ], + iiqSideBar: [ + { + type: 'category', + label: 'Documentation', + collapsible: false, + link: {type: 'doc', id: 'iiq'}, + items: [ + { + type: 'category', + label: 'Plugin Developer Guide', + link: {type: 'doc', id: 'plugin-developer-guide'}, + items: [ + {type: 'autogenerated', dirName: 'iiq/plugin-developer-guide'}, + ], + }, + { + type: 'link', + label: 'Product Documentation', + href: 'https://documentation.sailpoint.com/#identityiq', + }, + ], + }, + ], + iiqApiSideBar: [ + { + type: 'category', + label: 'API Specifications', + collapsible: false, + link: { + type: 'generated-index', + title: 'API Specifications', + description: + "These are the SCIM APIs for SailPoint's on-premise service, IdentityIQ. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.", + slug: '/api/iiq', + }, + items: require('./docs/api/iiq/sidebar.ts'), + }, + ], + nerm_2025_sidebar: [ + { + type: 'html', + defaultStyle: true, + value: versionSelector(nermVersions), + className: 'version-button', + }, + { + type: 'html', + defaultStyle: true, + value: versionCrumb(`v2025`), + }, + { + type: 'category', + label: 'NERM v2025 APIs', + link: { + type: 'generated-index', + title: 'NERM v2025 APIs', + description: + 'These are the Non-employee Risk Management APIs for SailPoint.', + slug: '/api/nerm/v2025', + }, + items: require('./docs/api/nerm/v2025/sidebar.ts'), + }, + ], + nermSideBar: [ + { + type: 'html', + defaultStyle: true, + value: versionSelector(nermVersions), + className: 'version-button', + }, + { + type: 'html', + defaultStyle: true, + value: versionCrumb(`v1`), // or dynamically detect the current version + }, + { + type: 'doc', + id: 'api/nerm/getting-started', + }, + { + type: 'doc', + id: 'api/nerm/authentication', + }, + { + type: 'doc', + id: 'api/nerm/pagination-metadata-filtering', + }, + { + type: 'category', + label: 'NERM v1 API', + link: { + type: 'generated-index', + title: 'NERM v1 API', + description: + 'These are the Non-employee Risk Management APIs for SailPoint. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', + slug: '/api/nerm/v1', + }, + items: require('./docs/api/nerm/v1/sidebar.ts'), + }, + ], + isc_2025_sidebar: [ { type: 'html', defaultStyle: true, @@ -180,178 +222,177 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; items: require('./docs/api/v2025/sidebar.ts'), }, ], - isc_2024_sidebar: [ - { - type: 'html', - defaultStyle: true, - value: versionSelector(versions), - className: 'version-button', - }, - { - type: 'html', - defaultStyle: true, - value: versionCrumb(`v2024`), - }, - { - type: 'doc', - id: 'api/v2024/getting-started', - }, - { - type: 'doc', - id: 'api/v2024/authentication', - }, - { - type: 'doc', - id: 'api/v2024/authorization', - }, - { - type: 'doc', - id: 'api/v2024/api-versioning-strategy', - }, - { - type: 'doc', - id: 'api/v2024/standard-collection-parameters', - }, - { - type: 'doc', - id: 'api/v2024/rate-limit', - }, - { - type: 'doc', - id: 'api/v2024/postman-collections', - }, - { - type: 'doc', - id: 'api/v2024/patch-requests', - }, - { - type: 'category', - label: 'V2024 APIs', - link: { - type: 'generated-index', - title: 'v2024 APIs', - description: - 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', - slug: '/api/v2024', - }, - items: require('./docs/api/v2024/sidebar.ts'), - }, - ], - isc_beta_sidebar: [ - { - type: 'html', - defaultStyle: true, - value: versionSelector(versions), - className: 'version-button', - }, - { - type: 'html', - defaultStyle: true, - value: versionCrumb(`beta`), - }, - { - type: 'doc', - id: 'api/beta/getting-started', - }, - { - type: 'doc', - id: 'api/beta/authentication', - }, - { - type: 'doc', - id: 'api/beta/authorization', - }, - { - type: 'doc', - id: 'api/beta/api-versioning-strategy', - }, - { - type: 'doc', - id: 'api/beta/standard-collection-parameters', - }, - { - type: 'doc', - id: 'api/beta/rate-limit', - }, - { - type: 'doc', - id: 'api/beta/postman-collections', - }, - { - type: 'doc', - id: 'api/beta/patch-requests', - }, - { - type: 'category', - label: 'Beta APIs', - link: { - type: 'generated-index', - title: 'Beta APIs', - description: - 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', - slug: '/api/beta', - }, - items: require('./docs/api/beta/sidebar.ts'), - }, - ], - isc_v3_sidebar: [ - { - type: 'html', - defaultStyle: true, - value: versionSelector(versions), - className: 'version-button', - }, - { - type: 'html', - defaultStyle: true, - value: versionCrumb(`v3`), - }, - { - type: 'doc', - id: 'api/v3/getting-started', - }, - { - type: 'doc', - id: 'api/v3/authentication', - }, - { - type: 'doc', - id: 'api/v3/authorization', - }, - { - type: 'doc', - id: 'api/v3/api-versioning-strategy', - }, - { - type: 'doc', - id: 'api/v3/standard-collection-parameters', - }, - { - type: 'doc', - id: 'api/v3/rate-limit', - }, - { - type: 'doc', - id: 'api/v3/postman-collections', - }, - { - type: 'doc', - id: 'api/v3/patch-requests', - }, - { - type: 'category', - label: 'V3 APIs', - link: { - type: 'generated-index', - title: 'V3 APIs', - description: - 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', - slug: '/api/v3', - }, - items: require('./docs/api/v3/sidebar.ts'), - }, - ], - }; - - export default sidebars; - + isc_2024_sidebar: [ + { + type: 'html', + defaultStyle: true, + value: versionSelector(versions), + className: 'version-button', + }, + { + type: 'html', + defaultStyle: true, + value: versionCrumb(`v2024`), + }, + { + type: 'doc', + id: 'api/v2024/getting-started', + }, + { + type: 'doc', + id: 'api/v2024/authentication', + }, + { + type: 'doc', + id: 'api/v2024/authorization', + }, + { + type: 'doc', + id: 'api/v2024/api-versioning-strategy', + }, + { + type: 'doc', + id: 'api/v2024/standard-collection-parameters', + }, + { + type: 'doc', + id: 'api/v2024/rate-limit', + }, + { + type: 'doc', + id: 'api/v2024/postman-collections', + }, + { + type: 'doc', + id: 'api/v2024/patch-requests', + }, + { + type: 'category', + label: 'V2024 APIs', + link: { + type: 'generated-index', + title: 'v2024 APIs', + description: + 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', + slug: '/api/v2024', + }, + items: require('./docs/api/v2024/sidebar.ts'), + }, + ], + isc_beta_sidebar: [ + { + type: 'html', + defaultStyle: true, + value: versionSelector(versions), + className: 'version-button', + }, + { + type: 'html', + defaultStyle: true, + value: versionCrumb(`beta`), + }, + { + type: 'doc', + id: 'api/beta/getting-started', + }, + { + type: 'doc', + id: 'api/beta/authentication', + }, + { + type: 'doc', + id: 'api/beta/authorization', + }, + { + type: 'doc', + id: 'api/beta/api-versioning-strategy', + }, + { + type: 'doc', + id: 'api/beta/standard-collection-parameters', + }, + { + type: 'doc', + id: 'api/beta/rate-limit', + }, + { + type: 'doc', + id: 'api/beta/postman-collections', + }, + { + type: 'doc', + id: 'api/beta/patch-requests', + }, + { + type: 'category', + label: 'Beta APIs', + link: { + type: 'generated-index', + title: 'Beta APIs', + description: + 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', + slug: '/api/beta', + }, + items: require('./docs/api/beta/sidebar.ts'), + }, + ], + isc_v3_sidebar: [ + { + type: 'html', + defaultStyle: true, + value: versionSelector(versions), + className: 'version-button', + }, + { + type: 'html', + defaultStyle: true, + value: versionCrumb(`v3`), + }, + { + type: 'doc', + id: 'api/v3/getting-started', + }, + { + type: 'doc', + id: 'api/v3/authentication', + }, + { + type: 'doc', + id: 'api/v3/authorization', + }, + { + type: 'doc', + id: 'api/v3/api-versioning-strategy', + }, + { + type: 'doc', + id: 'api/v3/standard-collection-parameters', + }, + { + type: 'doc', + id: 'api/v3/rate-limit', + }, + { + type: 'doc', + id: 'api/v3/postman-collections', + }, + { + type: 'doc', + id: 'api/v3/patch-requests', + }, + { + type: 'category', + label: 'V3 APIs', + link: { + type: 'generated-index', + title: 'V3 APIs', + description: + 'Use these APIs to interact with the IdentityNow platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.', + slug: '/api/v3', + }, + items: require('./docs/api/v3/sidebar.ts'), + }, + ], +}; + +export default sidebars;