diff --git a/fern/assets/styles.css b/fern/assets/styles.css index afc6947ea..cafa4f31e 100644 --- a/fern/assets/styles.css +++ b/fern/assets/styles.css @@ -181,35 +181,21 @@ h1, h2, h3 { } } - > a[href*="fern-def"] { + > a[href*="asyncapi"] { grid-column: 3; grid-row: 2; transform: translateY(-32px); - + .fern-selection-item-icon { width: 1.5rem; height: 1.5rem; } } - /* > a[href*="asyncapi"]:before { - content: "Docs coming soon"; - font-weight: 500; - position: absolute; - top: -1.75rem; - left: 0.5rem; - } */ - - > a[href*="asyncapi"] { + > a[href*="openrpc"] { grid-column: 3; grid-row: 3; transform: translateY(-64px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ .fern-selection-item-icon { width: 1.5rem; @@ -217,16 +203,10 @@ h1, h2, h3 { } } - > a[href*="openrpc"] { + > a[href*="grpc"] { grid-column: 3; grid-row: 4; - transform: translateY(-88px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ + transform: translateY(-96px); .fern-selection-item-icon { width: 1.5rem; @@ -234,22 +214,20 @@ h1, h2, h3 { } } - > a[href*="grpc"] { + > a[href*="fern-def"] { grid-column: 3; grid-row: 5; - transform: translateY(-88px); - pointer-events: none; - cursor: not-allowed; - - /* > div > div > div { - align-items: flex-start; - } */ + transform: translateY(-96px); .fern-selection-item-icon { width: 1.5rem; height: 1.5rem; } } + + > a[href*="api-definitions"] { + display: none; + } } } diff --git a/fern/docs.yml b/fern/docs.yml index 724f81205..81c0430b1 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -1,5 +1,5 @@ instances: - - url: fern-v2.docs.buildwithfern.com/learn/v2 + - url: fern-v2.docs.buildwithfern.com/learn - url: fern.docs.buildwithfern.com/learn custom-domain: buildwithfern.com/learn edit-this-page: @@ -43,46 +43,48 @@ products: slug: ask-fern subtitle: Let users find answers in your documentation instantly - - display-name: OpenAPI - path: ./products/openapi-def/openapi-def.yml - icon: fa-regular fa-book - image: ./images/product-switcher/openapi-definition-light.png - slug: openapi-definition - - - display-name: Fern Definition - path: ./products/fern-def/fern-def.yml - icon: fa-regular fa-seedling - image: ./images/product-switcher/fern-definition-light.png - slug: fern-definition - - display-name: CLI & API Reference - subtitle: Manage and configure your Fern projects via CLI & APIs. + subtitle: Manage and configure your Fern projects path: ./products/cli-api-reference/cli-api-reference.yml icon: fa-regular fa-terminal image: ./images/product-switcher/product-switcher-cliapi-light.png slug: cli-api-reference + - display-name: API Definitions + path: ./products/api-def/api-def.yml + icon: fa-regular fa-book + image: ./images/product-switcher/openapi-definition-light.png + slug: api-definitions + + - display-name: OpenAPI + path: ./products/api-def/api-def.yml + icon: fa-regular fa-book + image: ./images/product-switcher/openapi-definition-light.png + slug: openapi-definition + - display-name: AsyncAPI - subtitle: Docs coming soon - path: ./products/asyncapi-def/asyncapi-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-bolt image: ./images/product-switcher/asyncapi-light.png slug: asyncapi-definition - + - display-name: OpenRPC - subtitle: Docs coming soon - path: ./products/openrpc-def/openrpc-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-code image: ./images/product-switcher/openrpc-light.png slug: openrpc-definition - display-name: gRPC - subtitle: Docs coming soon - path: ./products/grpc-def/grpc-def.yml + path: ./products/api-def/api-def.yml icon: fa-regular fa-plug image: ./images/product-switcher/grpc-light.png slug: grpc-definition + - display-name: Fern Definition + path: ./products/api-def/api-def.yml + icon: fa-regular fa-seedling + image: ./images/product-switcher/fern-definition-light.png + slug: fern-definition css: ./assets/styles.css @@ -190,7 +192,7 @@ redirects: destination: /learn/sdks/deep-dives/local-previews permanent: true - source: /learn/sdks/capabilities/auto-pagination - destination: /learn/v2/sdks/deep-dives/auto-pagination + destination: /learn/sdks/deep-dives/auto-pagination permanent: true - source: /learn/sdks/capabilities/idempotency-headers destination: /learn/sdks/deep-dives/idempotency @@ -336,12 +338,21 @@ redirects: - source: /learn/docs/building-and-customizing-your-docs/navigation destination: /learn/docs/navigation/overview permanent: true + - source: /learn/docs/navigation/overview + destination: /learn/docs/configuration/navigation + permanent: true - source: /learn/docs/building-and-customizing-your-docs/versioning destination: /learn/docs/navigation/versions permanent: true + - source: /learn/docs/navigation/versions + destination: /learn/docs/configuration/versions + permanent: true - source: /learn/docs/building-and-customizing-your-docs/announcements destination: /learn/docs/navigation/announcement-banner permanent: true + - source: /learn/docs/navigation/announcement-banner + destination: /learn/docs/customization/announcement-banner + permanent: true - source: /learn/docs/building-and-customizing-your-docs/links-and-redirects destination: /learn/docs/seo/redirects permanent: true @@ -351,12 +362,18 @@ redirects: - source: /learn/docs/building-and-customizing-your-docs/hiding-content destination: /learn/docs/navigation/hiding-content permanent: true + - source: /learn/docs/navigation/hiding-content + destination: /learn/docs/customization/hiding-content + permanent: true - source: /learn/docs/building-and-customizing-your-docs/pull-request-preview destination: /learn/docs/preview-publish/previewing-changes-in-a-pr permanent: true - source: /learn/docs/building-and-customizing-your-docs/product-switching destination: /learn/docs/navigation/products permanent: true + - source: /learn/docs/navigation/products + destination: /learn/docs/configuration/products + permanent: true - source: /learn/docs/building-and-customizing-your-docs/custom-css-global-js destination: /learn/docs/customization/custom-css-js permanent: true @@ -388,6 +405,9 @@ redirects: - source: /learn/docs/content/changelog destination: /learn/docs/navigation/changelogs permanent: true + - source: /learn/docs/navigation/changelogs + destination: /learn/docs/customization/changelogs + permanent: true - source: /learn/docs/content/visual-editor destination: /learn/docs/writing-content/visual-editor permanent: true @@ -550,3 +570,21 @@ redirects: destination: /learn/cli-api-reference/api-reference/tokens/:slug* permanent: true + # ============================================================================ + # API REFERENCE REDIRECTS + # ============================================================================ + - source: /learn/openapi-definition/:slug* + destination: /learn/api-definitions/openapi/:slug* + permanent: true + - source: /learn/asyncapi-definition/:slug* + destination: /learn/api-definitions/asyncapi/:slug* + permanent: true + - source: /learn/openrpc-definition/:slug* + destination: /learn/api-definitions/openrpc/:slug* + permanent: true + - source: /learn/grpc-definition/:slug* + destination: /learn/api-definitions/grpc/:slug* + permanent: true + - source: /learn/fern-definition/:slug* + destination: /learn/api-definitions/ferndef/:slug* + permanent: true \ No newline at end of file diff --git a/fern/products/api-def/api-def.yml b/fern/products/api-def/api-def.yml new file mode 100644 index 000000000..0ba6c449c --- /dev/null +++ b/fern/products/api-def/api-def.yml @@ -0,0 +1,248 @@ +navigation: + - section: Overview + contents: + - page: What is an API Definition? + path: ./pages/what-is-an-api-definition.mdx + - page: Project Structure + path: ./pages/project-structure.mdx + - section: OpenAPI + collapsed: true + slug: openapi + contents: + - page: Overview + path: ./openapi-pages/overview.mdx + - page: Authentication + path: ./openapi-pages/auth.mdx + - page: Servers + path: ./openapi-pages/servers.mdx + - section: Endpoints + slug: endpoints + contents: + - page: HTTP JSON Endpoints + path: ./openapi-pages/endpoints/rest.mdx + slug: http + - page: Webhooks + path: ./openapi-pages/webhooks.mdx + - page: Multipart Form Uploads + path: ./openapi-pages/endpoints/multipart.mdx + slug: multipart + - page: Server-Sent Events + path: ./openapi-pages/endpoints/sse.mdx + slug: sse + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./openapi-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./openapi-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./openapi-pages/extensions/parameter-names.mdx + - page: Other + path: ./openapi-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./openapi-pages/overrides.mdx + - page: Sync your OpenAPI Specification + path: ./openapi-pages/automation.mdx + - section: Integrate your Server Framework + slug: frameworks + contents: + - page: FastAPI + path: ./openapi-pages/server-frameworks/fastapi.mdx + slug: fastapi + - section: AsyncAPI + collapsed: true + slug: asyncapi + contents: + - page: Overview + path: ./asyncapi-pages/overview.mdx + - page: Authentication + path: ./asyncapi-pages/auth.mdx + - page: Servers + path: ./asyncapi-pages/servers.mdx + - section: Channels + slug: channels + contents: + - page: Publish/Subscribe Operations + path: ./asyncapi-pages/channels/pubsub.mdx + slug: pubsub + - page: Message Formats + path: ./asyncapi-pages/channels/messages.mdx + slug: messages + - page: Message Bindings + path: ./asyncapi-pages/channels/bindings.mdx + slug: bindings + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./asyncapi-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./asyncapi-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./asyncapi-pages/extensions/parameter-names.mdx + - page: Other + path: ./asyncapi-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./asyncapi-pages/overrides.mdx + - page: Sync your AsyncAPI Specification + path: ./asyncapi-pages/automation.mdx + - section: OpenRPC + collapsed: true + slug: openrpc + contents: + - page: Overview + path: ./openrpc-pages/overview.mdx + - page: Authentication + path: ./openrpc-pages/auth.mdx + - page: Servers + path: ./openrpc-pages/servers.mdx + - section: Methods + slug: methods + contents: + - page: JSON-RPC Methods + path: ./openrpc-pages/methods/rpc-methods.mdx + slug: rpc-methods + - page: Notifications + path: ./openrpc-pages/methods/notifications.mdx + slug: notifications + - page: Batch Requests + path: ./openrpc-pages/methods/batch.mdx + slug: batch + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./openrpc-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./openrpc-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./openrpc-pages/extensions/parameter-names.mdx + - page: Other + path: ./openrpc-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./openrpc-pages/overrides.mdx + - page: Sync your OpenRPC Specification + path: ./openrpc-pages/automation.mdx + - section: gRPC + collapsed: true + slug: grpc + contents: + - page: Overview + path: ./grpc-pages/overview.mdx + - page: Authentication + path: ./grpc-pages/auth.mdx + - page: Servers + path: ./grpc-pages/servers.mdx + - section: Services + slug: services + contents: + - page: gRPC Services + path: ./grpc-pages/services/grpc-services.mdx + slug: grpc-services + - page: Streaming + path: ./grpc-pages/services/streaming.mdx + slug: streaming + - page: Error Handling + path: ./grpc-pages/services/errors.mdx + slug: errors + - section: Extensions + slug: extensions + contents: + - page: Audiences + path: ./grpc-pages/extensions/audiences.mdx + - page: SDK Method Names + path: ./grpc-pages/extensions/method-names.mdx + slug: method-names + - page: Parameter Names + path: ./grpc-pages/extensions/parameter-names.mdx + - page: Other + path: ./grpc-pages/extensions/others.mdx + slug: others + - section: Workflow & Automation + skip-slug: true + contents: + - page: Overlay Customizations + path: ./grpc-pages/overrides.mdx + - page: Sync your gRPC Specification + path: ./grpc-pages/automation.mdx + - section: Fern Definition + collapsed: true + slug: ferndef + contents: + - page: Overview + path: ./ferndef-pages/overview.mdx + - page: Authentication + path: ./ferndef-pages/auth.mdx + - page: Types + path: ./ferndef-pages/types.mdx + - section: Endpoints + contents: + - page: Overview + path: ./ferndef-pages/endpoints.mdx + - page: HTTP JSON Endpoints + path: ./ferndef-pages/endpoints/rest.mdx + slug: http + - page: Multipart Form Uploads + path: ./ferndef-pages/endpoints/multipart.mdx + slug: multipart + - page: Bytes + path: ./ferndef-pages/endpoints/bytes.mdx + slug: bytes + - page: Server-Sent Events + path: ./ferndef-pages/endpoints/sse.mdx + slug: sse + - section: Advanced + skip-slug: true + contents: + - page: Webhooks + path: ./ferndef-pages/webhooks.mdx + - page: WebSockets + path: ./ferndef-pages/websockets.mdx + slug: websockets + - page: Errors + path: ./ferndef-pages/errors.mdx + - page: Imports + path: ./ferndef-pages/imports.mdx + - page: Examples + path: ./ferndef-pages/examples.mdx + - page: Audiences + path: ./ferndef-pages/audiences.mdx + - page: Availability + path: ./ferndef-pages/availability.mdx + - section: api.yml Reference + slug: api-yml + contents: + - page: Overview + path: ./ferndef-pages/api-yml/overview.mdx + - page: Environments + path: ./ferndef-pages/api-yml/environments.mdx + - page: Global Headers + path: ./ferndef-pages/api-yml/global-configuration.mdx + - page: Errors + path: ./ferndef-pages/api-yml/errors.mdx + - section: Integrations + skip-slug: true + contents: + - page: Packages + path: ./ferndef-pages/packages.mdx + - page: Depending on Other APIs + path: ./ferndef-pages/depending-on-other-apis.mdx + - page: Export to OpenAPI + slug: export-openapi + path: ./ferndef-pages/export-openapi.mdx diff --git a/fern/products/asyncapi-def/pages/auth.mdx b/fern/products/api-def/asyncapi-pages/auth.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/auth.mdx rename to fern/products/api-def/asyncapi-pages/auth.mdx diff --git a/fern/products/asyncapi-def/pages/automation.mdx b/fern/products/api-def/asyncapi-pages/automation.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/automation.mdx rename to fern/products/api-def/asyncapi-pages/automation.mdx diff --git a/fern/products/asyncapi-def/pages/channels/bindings.mdx b/fern/products/api-def/asyncapi-pages/channels/bindings.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/channels/bindings.mdx rename to fern/products/api-def/asyncapi-pages/channels/bindings.mdx diff --git a/fern/products/asyncapi-def/pages/channels/messages.mdx b/fern/products/api-def/asyncapi-pages/channels/messages.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/channels/messages.mdx rename to fern/products/api-def/asyncapi-pages/channels/messages.mdx diff --git a/fern/products/asyncapi-def/pages/channels/pubsub.mdx b/fern/products/api-def/asyncapi-pages/channels/pubsub.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/channels/pubsub.mdx rename to fern/products/api-def/asyncapi-pages/channels/pubsub.mdx diff --git a/fern/products/asyncapi-def/pages/extensions/audiences.mdx b/fern/products/api-def/asyncapi-pages/extensions/audiences.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/extensions/audiences.mdx rename to fern/products/api-def/asyncapi-pages/extensions/audiences.mdx diff --git a/fern/products/asyncapi-def/pages/extensions/method-names.mdx b/fern/products/api-def/asyncapi-pages/extensions/method-names.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/extensions/method-names.mdx rename to fern/products/api-def/asyncapi-pages/extensions/method-names.mdx diff --git a/fern/products/asyncapi-def/pages/extensions/others.mdx b/fern/products/api-def/asyncapi-pages/extensions/others.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/extensions/others.mdx rename to fern/products/api-def/asyncapi-pages/extensions/others.mdx diff --git a/fern/products/asyncapi-def/pages/extensions/parameter-names.mdx b/fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/extensions/parameter-names.mdx rename to fern/products/api-def/asyncapi-pages/extensions/parameter-names.mdx diff --git a/fern/products/asyncapi-def/pages/overrides.mdx b/fern/products/api-def/asyncapi-pages/overrides.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/overrides.mdx rename to fern/products/api-def/asyncapi-pages/overrides.mdx diff --git a/fern/products/asyncapi-def/pages/overview.mdx b/fern/products/api-def/asyncapi-pages/overview.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/overview.mdx rename to fern/products/api-def/asyncapi-pages/overview.mdx diff --git a/fern/products/asyncapi-def/pages/servers.mdx b/fern/products/api-def/asyncapi-pages/servers.mdx similarity index 100% rename from fern/products/asyncapi-def/pages/servers.mdx rename to fern/products/api-def/asyncapi-pages/servers.mdx diff --git a/fern/products/fern-def/pages/api-yml/environments.mdx b/fern/products/api-def/ferndef-pages/api-yml/environments.mdx similarity index 100% rename from fern/products/fern-def/pages/api-yml/environments.mdx rename to fern/products/api-def/ferndef-pages/api-yml/environments.mdx diff --git a/fern/products/fern-def/pages/api-yml/errors.mdx b/fern/products/api-def/ferndef-pages/api-yml/errors.mdx similarity index 100% rename from fern/products/fern-def/pages/api-yml/errors.mdx rename to fern/products/api-def/ferndef-pages/api-yml/errors.mdx diff --git a/fern/products/fern-def/pages/api-yml/global-configuration.mdx b/fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx similarity index 100% rename from fern/products/fern-def/pages/api-yml/global-configuration.mdx rename to fern/products/api-def/ferndef-pages/api-yml/global-configuration.mdx diff --git a/fern/products/fern-def/pages/api-yml/overview.mdx b/fern/products/api-def/ferndef-pages/api-yml/overview.mdx similarity index 100% rename from fern/products/fern-def/pages/api-yml/overview.mdx rename to fern/products/api-def/ferndef-pages/api-yml/overview.mdx diff --git a/fern/products/fern-def/pages/audiences.mdx b/fern/products/api-def/ferndef-pages/audiences.mdx similarity index 100% rename from fern/products/fern-def/pages/audiences.mdx rename to fern/products/api-def/ferndef-pages/audiences.mdx diff --git a/fern/products/fern-def/pages/auth.mdx b/fern/products/api-def/ferndef-pages/auth.mdx similarity index 100% rename from fern/products/fern-def/pages/auth.mdx rename to fern/products/api-def/ferndef-pages/auth.mdx diff --git a/fern/products/fern-def/pages/availability.mdx b/fern/products/api-def/ferndef-pages/availability.mdx similarity index 100% rename from fern/products/fern-def/pages/availability.mdx rename to fern/products/api-def/ferndef-pages/availability.mdx diff --git a/fern/products/fern-def/pages/depending-on-other-apis.mdx b/fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx similarity index 100% rename from fern/products/fern-def/pages/depending-on-other-apis.mdx rename to fern/products/api-def/ferndef-pages/depending-on-other-apis.mdx diff --git a/fern/products/fern-def/pages/endpoints.mdx b/fern/products/api-def/ferndef-pages/endpoints.mdx similarity index 100% rename from fern/products/fern-def/pages/endpoints.mdx rename to fern/products/api-def/ferndef-pages/endpoints.mdx diff --git a/fern/products/fern-def/pages/endpoints/bytes.mdx b/fern/products/api-def/ferndef-pages/endpoints/bytes.mdx similarity index 100% rename from fern/products/fern-def/pages/endpoints/bytes.mdx rename to fern/products/api-def/ferndef-pages/endpoints/bytes.mdx diff --git a/fern/products/fern-def/pages/endpoints/multipart.mdx b/fern/products/api-def/ferndef-pages/endpoints/multipart.mdx similarity index 100% rename from fern/products/fern-def/pages/endpoints/multipart.mdx rename to fern/products/api-def/ferndef-pages/endpoints/multipart.mdx diff --git a/fern/products/fern-def/pages/endpoints/rest.mdx b/fern/products/api-def/ferndef-pages/endpoints/rest.mdx similarity index 100% rename from fern/products/fern-def/pages/endpoints/rest.mdx rename to fern/products/api-def/ferndef-pages/endpoints/rest.mdx diff --git a/fern/products/fern-def/pages/endpoints/sse.mdx b/fern/products/api-def/ferndef-pages/endpoints/sse.mdx similarity index 100% rename from fern/products/fern-def/pages/endpoints/sse.mdx rename to fern/products/api-def/ferndef-pages/endpoints/sse.mdx diff --git a/fern/products/fern-def/pages/errors.mdx b/fern/products/api-def/ferndef-pages/errors.mdx similarity index 100% rename from fern/products/fern-def/pages/errors.mdx rename to fern/products/api-def/ferndef-pages/errors.mdx diff --git a/fern/products/fern-def/pages/examples.mdx b/fern/products/api-def/ferndef-pages/examples.mdx similarity index 100% rename from fern/products/fern-def/pages/examples.mdx rename to fern/products/api-def/ferndef-pages/examples.mdx diff --git a/fern/products/fern-def/pages/export-openapi.mdx b/fern/products/api-def/ferndef-pages/export-openapi.mdx similarity index 100% rename from fern/products/fern-def/pages/export-openapi.mdx rename to fern/products/api-def/ferndef-pages/export-openapi.mdx diff --git a/fern/products/fern-def/pages/imports.mdx b/fern/products/api-def/ferndef-pages/imports.mdx similarity index 100% rename from fern/products/fern-def/pages/imports.mdx rename to fern/products/api-def/ferndef-pages/imports.mdx diff --git a/fern/products/fern-def/pages/overview.mdx b/fern/products/api-def/ferndef-pages/overview.mdx similarity index 100% rename from fern/products/fern-def/pages/overview.mdx rename to fern/products/api-def/ferndef-pages/overview.mdx diff --git a/fern/products/fern-def/pages/packages.mdx b/fern/products/api-def/ferndef-pages/packages.mdx similarity index 100% rename from fern/products/fern-def/pages/packages.mdx rename to fern/products/api-def/ferndef-pages/packages.mdx diff --git a/fern/products/fern-def/pages/types.mdx b/fern/products/api-def/ferndef-pages/types.mdx similarity index 100% rename from fern/products/fern-def/pages/types.mdx rename to fern/products/api-def/ferndef-pages/types.mdx diff --git a/fern/products/fern-def/pages/webhooks.mdx b/fern/products/api-def/ferndef-pages/webhooks.mdx similarity index 100% rename from fern/products/fern-def/pages/webhooks.mdx rename to fern/products/api-def/ferndef-pages/webhooks.mdx diff --git a/fern/products/fern-def/pages/websocket.png b/fern/products/api-def/ferndef-pages/websocket.png similarity index 100% rename from fern/products/fern-def/pages/websocket.png rename to fern/products/api-def/ferndef-pages/websocket.png diff --git a/fern/products/fern-def/pages/websockets.mdx b/fern/products/api-def/ferndef-pages/websockets.mdx similarity index 100% rename from fern/products/fern-def/pages/websockets.mdx rename to fern/products/api-def/ferndef-pages/websockets.mdx diff --git a/fern/products/fern-def/pages/wss-reference.png b/fern/products/api-def/ferndef-pages/wss-reference.png similarity index 100% rename from fern/products/fern-def/pages/wss-reference.png rename to fern/products/api-def/ferndef-pages/wss-reference.png diff --git a/fern/products/grpc-def/pages/auth.mdx b/fern/products/api-def/grpc-pages/auth.mdx similarity index 100% rename from fern/products/grpc-def/pages/auth.mdx rename to fern/products/api-def/grpc-pages/auth.mdx diff --git a/fern/products/grpc-def/pages/automation.mdx b/fern/products/api-def/grpc-pages/automation.mdx similarity index 100% rename from fern/products/grpc-def/pages/automation.mdx rename to fern/products/api-def/grpc-pages/automation.mdx diff --git a/fern/products/grpc-def/pages/extensions/audiences.mdx b/fern/products/api-def/grpc-pages/extensions/audiences.mdx similarity index 100% rename from fern/products/grpc-def/pages/extensions/audiences.mdx rename to fern/products/api-def/grpc-pages/extensions/audiences.mdx diff --git a/fern/products/grpc-def/pages/extensions/method-names.mdx b/fern/products/api-def/grpc-pages/extensions/method-names.mdx similarity index 100% rename from fern/products/grpc-def/pages/extensions/method-names.mdx rename to fern/products/api-def/grpc-pages/extensions/method-names.mdx diff --git a/fern/products/grpc-def/pages/extensions/others.mdx b/fern/products/api-def/grpc-pages/extensions/others.mdx similarity index 100% rename from fern/products/grpc-def/pages/extensions/others.mdx rename to fern/products/api-def/grpc-pages/extensions/others.mdx diff --git a/fern/products/grpc-def/pages/extensions/parameter-names.mdx b/fern/products/api-def/grpc-pages/extensions/parameter-names.mdx similarity index 100% rename from fern/products/grpc-def/pages/extensions/parameter-names.mdx rename to fern/products/api-def/grpc-pages/extensions/parameter-names.mdx diff --git a/fern/products/grpc-def/pages/overrides.mdx b/fern/products/api-def/grpc-pages/overrides.mdx similarity index 100% rename from fern/products/grpc-def/pages/overrides.mdx rename to fern/products/api-def/grpc-pages/overrides.mdx diff --git a/fern/products/grpc-def/pages/overview.mdx b/fern/products/api-def/grpc-pages/overview.mdx similarity index 100% rename from fern/products/grpc-def/pages/overview.mdx rename to fern/products/api-def/grpc-pages/overview.mdx diff --git a/fern/products/grpc-def/pages/servers.mdx b/fern/products/api-def/grpc-pages/servers.mdx similarity index 100% rename from fern/products/grpc-def/pages/servers.mdx rename to fern/products/api-def/grpc-pages/servers.mdx diff --git a/fern/products/grpc-def/pages/services/errors.mdx b/fern/products/api-def/grpc-pages/services/errors.mdx similarity index 100% rename from fern/products/grpc-def/pages/services/errors.mdx rename to fern/products/api-def/grpc-pages/services/errors.mdx diff --git a/fern/products/grpc-def/pages/services/grpc-services.mdx b/fern/products/api-def/grpc-pages/services/grpc-services.mdx similarity index 100% rename from fern/products/grpc-def/pages/services/grpc-services.mdx rename to fern/products/api-def/grpc-pages/services/grpc-services.mdx diff --git a/fern/products/grpc-def/pages/services/streaming.mdx b/fern/products/api-def/grpc-pages/services/streaming.mdx similarity index 100% rename from fern/products/grpc-def/pages/services/streaming.mdx rename to fern/products/api-def/grpc-pages/services/streaming.mdx diff --git a/fern/products/openapi-def/pages/auth.mdx b/fern/products/api-def/openapi-pages/auth.mdx similarity index 100% rename from fern/products/openapi-def/pages/auth.mdx rename to fern/products/api-def/openapi-pages/auth.mdx diff --git a/fern/products/openapi-def/pages/automation.mdx b/fern/products/api-def/openapi-pages/automation.mdx similarity index 100% rename from fern/products/openapi-def/pages/automation.mdx rename to fern/products/api-def/openapi-pages/automation.mdx diff --git a/fern/products/openapi-def/pages/endpoints/multipart.mdx b/fern/products/api-def/openapi-pages/endpoints/multipart.mdx similarity index 100% rename from fern/products/openapi-def/pages/endpoints/multipart.mdx rename to fern/products/api-def/openapi-pages/endpoints/multipart.mdx diff --git a/fern/products/openapi-def/pages/endpoints/rest.mdx b/fern/products/api-def/openapi-pages/endpoints/rest.mdx similarity index 100% rename from fern/products/openapi-def/pages/endpoints/rest.mdx rename to fern/products/api-def/openapi-pages/endpoints/rest.mdx diff --git a/fern/products/openapi-def/pages/endpoints/sse.mdx b/fern/products/api-def/openapi-pages/endpoints/sse.mdx similarity index 100% rename from fern/products/openapi-def/pages/endpoints/sse.mdx rename to fern/products/api-def/openapi-pages/endpoints/sse.mdx diff --git a/fern/products/openapi-def/pages/examples.mdx b/fern/products/api-def/openapi-pages/examples.mdx similarity index 100% rename from fern/products/openapi-def/pages/examples.mdx rename to fern/products/api-def/openapi-pages/examples.mdx diff --git a/fern/products/openapi-def/pages/extensions/audiences.mdx b/fern/products/api-def/openapi-pages/extensions/audiences.mdx similarity index 100% rename from fern/products/openapi-def/pages/extensions/audiences.mdx rename to fern/products/api-def/openapi-pages/extensions/audiences.mdx diff --git a/fern/products/openapi-def/pages/extensions/method-names.mdx b/fern/products/api-def/openapi-pages/extensions/method-names.mdx similarity index 100% rename from fern/products/openapi-def/pages/extensions/method-names.mdx rename to fern/products/api-def/openapi-pages/extensions/method-names.mdx diff --git a/fern/products/openapi-def/pages/extensions/others.mdx b/fern/products/api-def/openapi-pages/extensions/others.mdx similarity index 100% rename from fern/products/openapi-def/pages/extensions/others.mdx rename to fern/products/api-def/openapi-pages/extensions/others.mdx diff --git a/fern/products/openapi-def/pages/extensions/parameter-names.mdx b/fern/products/api-def/openapi-pages/extensions/parameter-names.mdx similarity index 100% rename from fern/products/openapi-def/pages/extensions/parameter-names.mdx rename to fern/products/api-def/openapi-pages/extensions/parameter-names.mdx diff --git a/fern/products/openapi-def/pages/overrides.mdx b/fern/products/api-def/openapi-pages/overrides.mdx similarity index 100% rename from fern/products/openapi-def/pages/overrides.mdx rename to fern/products/api-def/openapi-pages/overrides.mdx diff --git a/fern/products/openapi-def/pages/overview.mdx b/fern/products/api-def/openapi-pages/overview.mdx similarity index 100% rename from fern/products/openapi-def/pages/overview.mdx rename to fern/products/api-def/openapi-pages/overview.mdx diff --git a/fern/products/openapi-def/pages/server-frameworks/fastapi.mdx b/fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx similarity index 100% rename from fern/products/openapi-def/pages/server-frameworks/fastapi.mdx rename to fern/products/api-def/openapi-pages/server-frameworks/fastapi.mdx diff --git a/fern/products/openapi-def/pages/servers.mdx b/fern/products/api-def/openapi-pages/servers.mdx similarity index 100% rename from fern/products/openapi-def/pages/servers.mdx rename to fern/products/api-def/openapi-pages/servers.mdx diff --git a/fern/products/openapi-def/pages/webhooks.mdx b/fern/products/api-def/openapi-pages/webhooks.mdx similarity index 100% rename from fern/products/openapi-def/pages/webhooks.mdx rename to fern/products/api-def/openapi-pages/webhooks.mdx diff --git a/fern/products/openrpc-def/pages/auth.mdx b/fern/products/api-def/openrpc-pages/auth.mdx similarity index 100% rename from fern/products/openrpc-def/pages/auth.mdx rename to fern/products/api-def/openrpc-pages/auth.mdx diff --git a/fern/products/openrpc-def/pages/automation.mdx b/fern/products/api-def/openrpc-pages/automation.mdx similarity index 100% rename from fern/products/openrpc-def/pages/automation.mdx rename to fern/products/api-def/openrpc-pages/automation.mdx diff --git a/fern/products/openrpc-def/pages/extensions/audiences.mdx b/fern/products/api-def/openrpc-pages/extensions/audiences.mdx similarity index 100% rename from fern/products/openrpc-def/pages/extensions/audiences.mdx rename to fern/products/api-def/openrpc-pages/extensions/audiences.mdx diff --git a/fern/products/openrpc-def/pages/extensions/method-names.mdx b/fern/products/api-def/openrpc-pages/extensions/method-names.mdx similarity index 100% rename from fern/products/openrpc-def/pages/extensions/method-names.mdx rename to fern/products/api-def/openrpc-pages/extensions/method-names.mdx diff --git a/fern/products/openrpc-def/pages/extensions/others.mdx b/fern/products/api-def/openrpc-pages/extensions/others.mdx similarity index 100% rename from fern/products/openrpc-def/pages/extensions/others.mdx rename to fern/products/api-def/openrpc-pages/extensions/others.mdx diff --git a/fern/products/openrpc-def/pages/extensions/parameter-names.mdx b/fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx similarity index 100% rename from fern/products/openrpc-def/pages/extensions/parameter-names.mdx rename to fern/products/api-def/openrpc-pages/extensions/parameter-names.mdx diff --git a/fern/products/openrpc-def/pages/methods/batch.mdx b/fern/products/api-def/openrpc-pages/methods/batch.mdx similarity index 100% rename from fern/products/openrpc-def/pages/methods/batch.mdx rename to fern/products/api-def/openrpc-pages/methods/batch.mdx diff --git a/fern/products/openrpc-def/pages/methods/notifications.mdx b/fern/products/api-def/openrpc-pages/methods/notifications.mdx similarity index 100% rename from fern/products/openrpc-def/pages/methods/notifications.mdx rename to fern/products/api-def/openrpc-pages/methods/notifications.mdx diff --git a/fern/products/openrpc-def/pages/methods/rpc-methods.mdx b/fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx similarity index 100% rename from fern/products/openrpc-def/pages/methods/rpc-methods.mdx rename to fern/products/api-def/openrpc-pages/methods/rpc-methods.mdx diff --git a/fern/products/openrpc-def/pages/overrides.mdx b/fern/products/api-def/openrpc-pages/overrides.mdx similarity index 100% rename from fern/products/openrpc-def/pages/overrides.mdx rename to fern/products/api-def/openrpc-pages/overrides.mdx diff --git a/fern/products/openrpc-def/pages/overview.mdx b/fern/products/api-def/openrpc-pages/overview.mdx similarity index 100% rename from fern/products/openrpc-def/pages/overview.mdx rename to fern/products/api-def/openrpc-pages/overview.mdx diff --git a/fern/products/openrpc-def/pages/servers.mdx b/fern/products/api-def/openrpc-pages/servers.mdx similarity index 100% rename from fern/products/openrpc-def/pages/servers.mdx rename to fern/products/api-def/openrpc-pages/servers.mdx diff --git a/fern/products/api-def/pages/project-structure.mdx b/fern/products/api-def/pages/project-structure.mdx new file mode 100644 index 000000000..ad2c09bd5 --- /dev/null +++ b/fern/products/api-def/pages/project-structure.mdx @@ -0,0 +1,73 @@ +--- +title: The Fern Folder +description: Describes the Fern folder structure +--- + +Configuring fern starts with the `fern` folder. The fern folder contains your API definitions, +SDK generators, and your CLI version. + +## Directory structure + +When you run `fern init` (for the Fern Definition) or `fern init --spec-type path/to/spec` (for other specs), your fern folder is initialized with the following files: + +```bash +fern/ + ├─ fern.config.json # Root-level config for entire Fern project + ├─ generators.yml # Defines SDKs and docs to generate + └─ spec-folder/ # definition, openapi, asyncapi, etc. + └─ spec-file.yml # API specification file +``` + + + For Fern Definition, your API configuration is split across two files: `api.yml` for API-wide configuration and separate `.yml` files for your actual endpoint and type definitions. See [What is a Fern Definition?](/api-definitions/ferndef/overview) for more information. + + For the other specification formats ([OpenAPI](/api-definitions/openapi/overview), [AsyncAPI](/api-definitions/asyncapi/overview), [OpenRPC](/api-definitions/openrpc/overview), and [gRPC](/api-definitions/grpc/overview)), you'll have a single self-contained specification file. + + + + + +Every fern folder has a single `fern.config.json` file. This file stores the organization and +the version of the Fern CLI that you are using. + +```json +{ + "organization": "your-organization", + "version": "0.31.2" +} +``` + +Every time you run a fern CLI command, the CLI downloads itself at the correct version to ensure +determinism. + + + +The `generators.yml` file includes information about where your API definition file is located. It also configures the SDKs you're generating for your API. + +```yaml +api: + path: ./path/to/openapi.yml +``` + + + +## Multiple APIs + +The fern folder can house multiple API definitions. When you have multiple APIs, nest your definition files within an `apis` folder. + +Each API must also have a separate `generators.yml` file that specifies the location of the API definition and configures SDK generation. + +```bash +fern/ + ├─ fern.config.json + ├─ generators.yml # Optional: top-level configuration for all APIs + └─ apis/ + └─ first-api/ # First API + ├─ generators.yml # Required: points to API spec + └─ openapi/ + ├─ openapi.yml # API Definition file + └─ second-api/ # Second API + ├─ generators.yml # Required: points to API spec + └─ openapi/ + ├─ openapi.yml # API Definition file +``` diff --git a/fern/products/api-def/pages/what-is-an-api-definition.mdx b/fern/products/api-def/pages/what-is-an-api-definition.mdx new file mode 100644 index 000000000..ff7dd3f1a --- /dev/null +++ b/fern/products/api-def/pages/what-is-an-api-definition.mdx @@ -0,0 +1,358 @@ +--- +title: What is an API definition? +description: Describes the contract between the API provider and API consumer +--- + +An API definition is a machine-readable specification of your API's structure, including **endpoints**, **request and response schemas**, and **authentication** requirements. Instead of manually keeping SDKs and documentation in sync with API changes, an API definition enables automatic generation of these artifacts. + +Fern integrates with several API definition formats: + + + + Formerly known as Swagger, [OpenAPI](https://swagger.io/specification/) is the most popular API definition format. + OpenAPI can be used to document RESTful APIs and is defined in a YAML or JSON file. + + Check out an example OpenAPI Specification for the Petstore API [here](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml) + + ```yaml maxLines={0} + openapi: 3.0.2 + tags: + - name: pet + description: Everything about your Pets + paths: + /pet: + post: + tags: + - pet + summary: Add a new pet to the store + description: Add a new pet to the store + operationId: addPet + requestBody: + description: Create a new pet in the store + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + application/x-www-form-urlencoded: + schema: + $ref: '#/components/schemas/Pet' + responses: + '200': + description: Successful operation + content: + application/xml: + schema: + $ref: '#/components/schemas/Pet' + application/json: + schema: + $ref: '#/components/schemas/Pet' + '405': + description: Invalid input + components: + schemas: + Pet: + required: + - name + - photoUrls + properties: + id: + type: integer + format: int64 + example: 10 + name: + type: string + example: doggie + category: + $ref: '#/components/schemas/Category' + photoUrls: + type: array + xml: + wrapped: true + items: + type: string + xml: + name: photoUrl + tags: + type: array + xml: + wrapped: true + items: + $ref: '#/components/schemas/Tag' + xml: + name: tag + status: + type: string + description: pet status in the store + enum: + - available + - pending + - sold + xml: + name: pet + type: object + ``` + + + [AsyncAPI](https://v2.asyncapi.com/docs) is a specification for defining event-driven APIs. It is used to document APIs that use + WebSockets, MQTT, and other messaging protocols. + + Check out an example AsyncAPI spec for a chat application below: + + ```yaml maxLines={0} + asyncapi: 2.0.0 + info: + title: Chat server + version: 1.0.0 + + servers: + Production: + url: chat.com + protocol: ws + + channels: + "/application": + bindings: + ws: + query: + type: object + properties: + apiKey: + type: string + description: The API key for the client + minimum: 1 + bindingVersion: 0.1.0 + subscribe: + operationId: sendMessage + message: + $ref: '#/components/messages/SendMessage' + publish: + operationId: receiveMessage + message: + $ref: '#/components/messages/ReceiveMessage' + + components: + messages: + SendMessage: + payload: + message: string + ReceiveMessage: + payload: + message: string + from: + type: string + description: The userId for the sender of the message + ``` + + + + [OpenRPC](https://open-rpc.org/) is a spec for describing JSON-RPC 2.0 APIs. It enables interactive docs and code generation tooling to the JSON-RPC ecosystem. + + Check out an example OpenRPC Specification for a crypto wallet service below: + + ```yaml maxLines=0 + # yaml-language-server: $schema=https://meta.open-rpc.org/ + $schema: https://meta.open-rpc.org/ + openrpc: 1.2.4 + info: + title: Basic Wallet API JSON-RPC Specification + description: A simple JSON-RPC API for querying wallet balances. + version: 0.0.1 + servers: + - url: https://wallet.example.com/json-rpc + name: Mainnet + methods: + - name: getBalance + description: Get the balance of a wallet address. + params: + - name: address + required: true + description: The wallet address to query. + schema: + type: string + result: + name: balance + description: The balance of the wallet address. + schema: + type: number + examples: + - name: getBalance example + params: + - name: address + value: "0x1234567890abcdef1234567890abcdef12345678" + result: + name: balance + value: 42.5 + ``` + + + [gRPC](https://grpc.io/) is a modern, open-source RPC framework developed by Google. It uses Protocol Buffers as its interface definition language and supports multiple programming languages with efficient binary serialization. + + gRPC APIs are defined using Protocol Buffer (.proto) files that specify services and message types. Check out an example gRPC service definition below: + + ```proto maxLines={0} + syntax = "proto3"; + + package petstore; + + // The pet store service definition + service PetStoreService { + // Get a pet by ID + rpc GetPet(GetPetRequest) returns (Pet); + + // Add a new pet to the store + rpc AddPet(AddPetRequest) returns (Pet); + + // List all pets with optional filtering + rpc ListPets(ListPetsRequest) returns (ListPetsResponse); + } + + // Request message for getting a pet + message GetPetRequest { + int64 pet_id = 1; + } + + // Request message for adding a pet + message AddPetRequest { + string name = 1; + string category = 2; + repeated string photo_urls = 3; + PetStatus status = 4; + } + + // Request message for listing pets + message ListPetsRequest { + int32 page_size = 1; + string page_token = 2; + PetStatus status = 3; + } + + // Response message for listing pets + message ListPetsResponse { + repeated Pet pets = 1; + string next_page_token = 2; + } + + // Pet message definition + message Pet { + int64 id = 1; + string name = 2; + string category = 3; + repeated string photo_urls = 4; + PetStatus status = 5; + } + + // Pet status enumeration + enum PetStatus { + PET_STATUS_UNSPECIFIED = 0; + PET_STATUS_AVAILABLE = 1; + PET_STATUS_PENDING = 2; + PET_STATUS_SOLD = 3; + } + ``` + + + The Fern Definition is our take on a simpler API definition format. It is designed with **best-practices**, + supports **both RESTful and event-driven APIs**, and is optimized for **SDK generation**. + + + The Fern Definition is inspired from internal API Definition formats built at companies like + [Amazon](https://smithy.io/2.0/index.html), [Google](https://grpc.io/), [Palantir](https://blog.palantir.com/introducing-conjure-palantirs-toolchain-for-http-json-apis-2175ec172d32), + Twilio and Stripe. These companies **rejected** OpenAPI and built their own version. + + + Check out an example Fern Definition below: + + ```yaml maxLines={0} + types: + MovieId: string + + Movie: + properties: + id: MovieId + title: string + rating: + type: double + docs: The rating scale is one to five stars + + CreateMovieRequest: + properties: + title: string + rating: double + + service: + auth: false + base-path: /movies + endpoints: + createMovie: + docs: Add a movie to the database + method: POST + path: /create-movie + request: CreateMovieRequest + response: MovieId + + getMovie: + method: GET + path: /{movieId} + path-parameters: + movieId: MovieId + response: Movie + errors: + - MovieDoesNotExistError + + errors: + MovieDoesNotExistError: + status-code: 404 + type: MovieId + ``` + + + + +## Why create an API definition? + +Once you have an API definition, Fern uses it as an input to generate artifacts +like SDKs and API Reference documentation. Every time you update the API definition, +you can regenerate these artifacts to ensure they are always up-to-date. + + + + Client libraries in multiple languages that automatically stay in sync with your API. + + + Interactive API docs with code examples and live testing capabilities. + + } + href="/docs/integrations/postman" + > + Ready-to-use collection with pre-filled example requests and responses. + + } + href="/api-definitions/openapi/frameworks/fastapi" + > + Pydantic models for FastAPI or controllers for your Spring Boot application. + + diff --git a/fern/products/asyncapi-def/asyncapi-def.yml b/fern/products/asyncapi-def/asyncapi-def.yml deleted file mode 100644 index a59539c60..000000000 --- a/fern/products/asyncapi-def/asyncapi-def.yml +++ /dev/null @@ -1,39 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Channels - slug: channels - contents: - - page: Publish/Subscribe Operations - path: ./pages/channels/pubsub.mdx - slug: pubsub - - page: Message Formats - path: ./pages/channels/messages.mdx - slug: messages - - page: Message Bindings - path: ./pages/channels/bindings.mdx - slug: bindings - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your AsyncAPI Specification - path: ./pages/automation.mdx \ No newline at end of file diff --git a/fern/products/docs/docs.yml b/fern/products/docs/docs.yml index e41f50e5e..ddb3dbc7b 100644 --- a/fern/products/docs/docs.yml +++ b/fern/products/docs/docs.yml @@ -9,6 +9,8 @@ navigation: path: ./pages/getting-started/project-structure.mdx - link: Customer Showcase href: https://buildwithfern.com/showcase#docs-customers.alldocs-features + - changelog: ./pages/changelog + icon: fa-regular fa-clock-rotate-left - section: Writing Content contents: - page: Markdown @@ -84,19 +86,18 @@ navigation: - page: Conditionally Rendered Content hidden: true path: ./pages/component-library/custom-components/conditional-rendering.mdx - - section: Customization - collapsed: true + - section: Configuration contents: - page: What is docs.yml path: ./pages/customization/what-is-docs-yml.mdx - - page: Frontmatter + - page: Navigation + path: ./pages/navigation/overview.mdx + - page: Versions + path: ./pages/navigation/versions.mdx + - page: Products + path: ./pages/navigation/products.mdx + - page: Page-level settings path: ./pages/customization/frontmatter.mdx - - page: Search - path: ./pages/customization/search.mdx - - page: User Feedback - path: ./pages/customization/user-feedback.mdx - - page: Custom CSS & JS - path: ./pages/component-library/custom-components/custom-css-js.mdx - section: Preview & Publish collapsed: true contents: @@ -108,21 +109,21 @@ navigation: path: ./pages/getting-started/publishing-your-docs.mdx - page: Setting up your domain path: ./pages/getting-started/setting-up-your-domain.mdx - - section: Navigation + - section: Customization collapsed: true contents: - - page: Overview - path: ./pages/navigation/overview.mdx - - page: Versions - path: ./pages/navigation/versions.mdx - - page: Products - path: ./pages/navigation/products.mdx - page: Announcement Banner path: ./pages/navigation/announcement-banner.mdx - page: Changelogs path: ./pages/navigation/changelogs.mdx - page: Hiding Content path: ./pages/navigation/hiding-content.mdx + - page: Search + path: ./pages/customization/search.mdx + - page: User Feedback + path: ./pages/customization/user-feedback.mdx + - page: Custom CSS & JS + path: ./pages/component-library/custom-components/custom-css-js.mdx - section: API References collapsed: true contents: @@ -222,6 +223,4 @@ navigation: path: ./pages/developer-tools/vale.mdx - page: View Markdown path: ./pages/developer-tools/view-markdown.mdx - - changelog: ./pages/changelog - icon: fa-regular fa-clock-rotate-left \ No newline at end of file diff --git a/fern/products/fern-def/fern-def.yml b/fern/products/fern-def/fern-def.yml deleted file mode 100644 index 2d576a0ad..000000000 --- a/fern/products/fern-def/fern-def.yml +++ /dev/null @@ -1,62 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Types - path: ./pages/types.mdx - - section: Endpoints - contents: - - page: Overview - path: ./pages/endpoints.mdx - - page: HTTP JSON Endpoints - path: ./pages/endpoints/rest.mdx - slug: http - - page: Multipart Form Uploads - path: ./pages/endpoints/multipart.mdx - slug: multipart - - page: Bytes - path: ./pages/endpoints/bytes.mdx - slug: bytes - - page: Server-Sent Events - path: ./pages/endpoints/sse.mdx - slug: sse - - section: Advanced - skip-slug: true - contents: - - page: Webhooks - path: ./pages/webhooks.mdx - - page: WebSockets - path: ./pages/websockets.mdx - slug: websockets - - page: Errors - path: ./pages/errors.mdx - - page: Imports - path: ./pages/imports.mdx - - page: Examples - path: ./pages/examples.mdx - - page: Audiences - path: ./pages/audiences.mdx - - page: Availability - path: ./pages/availability.mdx - - section: api.yml Reference - slug: api-yml - contents: - - page: Overview - path: ./pages/api-yml/overview.mdx - - page: Environments - path: ./pages/api-yml/environments.mdx - - page: Global Headers - path: ./pages/api-yml/global-configuration.mdx - - page: Errors - path: ./pages/api-yml/errors.mdx - - section: Integrations - skip-slug: true - contents: - - page: Packages - path: ./pages/packages.mdx - - page: Depending on Other APIs - path: ./pages/depending-on-other-apis.mdx - - page: Export to OpenAPI - slug: export-openapi - path: ./pages/export-openapi.mdx diff --git a/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx b/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx deleted file mode 100644 index 27a9a970f..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/audiences.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Audiences ---- - -Define different audiences for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx b/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx deleted file mode 100644 index 2fdc73302..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/availability.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Availability ---- - -Configure availability settings for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx b/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx deleted file mode 100644 index 4f467bad4..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/doc.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Doc ---- - -Documentation configuration. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx b/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx deleted file mode 100644 index 8a40e2430..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/endpoints.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Endpoints ---- - -How to define API endpoints in your specification. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx b/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx deleted file mode 100644 index 3bd416a65..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/errors.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Errors ---- - -Define error responses for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx b/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx deleted file mode 100644 index 057f09c6b..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/examples.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Examples ---- - -How to add examples to your API definition. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx b/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx deleted file mode 100644 index 2e72db4d0..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/imports.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Imports ---- - -How to import external definitions into your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/types.mdx b/fern/products/fern-def/pages-archived/defining-your-api/types.mdx deleted file mode 100644 index b9611b38b..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/types.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Types ---- - -Documentation on the data types used in the API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx b/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx deleted file mode 100644 index e1144b2b5..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/webhooks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Webhooks ---- - -How to define webhook endpoints in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx b/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx deleted file mode 100644 index 23d62baa9..000000000 --- a/fern/products/fern-def/pages-archived/defining-your-api/websockets.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: WebSockets ---- - -Configure WebSocket connections in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx b/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx deleted file mode 100644 index 6084c326c..000000000 --- a/fern/products/fern-def/pages-archived/getting-started/customer-showcase.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Customer showcase ---- - -See how other customers are using Fern successfully. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/overview.mdx b/fern/products/fern-def/pages-archived/getting-started/overview.mdx deleted file mode 100644 index df0f4cb1f..000000000 --- a/fern/products/fern-def/pages-archived/getting-started/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overview ---- - -Welcome to the Getting Started section! This page provides an introduction to the API and how to begin using it. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx b/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx deleted file mode 100644 index 5202a8997..000000000 --- a/fern/products/fern-def/pages-archived/getting-started/philosophy.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Philosophy ---- - -The principles and philosophy behind Fern API definitions. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx b/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx deleted file mode 100644 index d789ff993..000000000 --- a/fern/products/fern-def/pages-archived/getting-started/quickstart.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Quickstart ---- - -Get started with Fern quickly with this guide. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx b/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx deleted file mode 100644 index 72af50968..000000000 --- a/fern/products/fern-def/pages-archived/global-settings/api-versions.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: API versions ---- - -How to manage different versions of your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/authentication.mdx b/fern/products/fern-def/pages-archived/global-settings/authentication.mdx deleted file mode 100644 index a62c4dfbb..000000000 --- a/fern/products/fern-def/pages-archived/global-settings/authentication.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Authentication ---- - -Configure authentication methods for your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/environments.mdx b/fern/products/fern-def/pages-archived/global-settings/environments.mdx deleted file mode 100644 index dd4106bef..000000000 --- a/fern/products/fern-def/pages-archived/global-settings/environments.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Environments ---- - -Configure different environments for your API (development, staging, production). - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx b/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx deleted file mode 100644 index bcc581902..000000000 --- a/fern/products/fern-def/pages-archived/global-settings/global-headers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Global headers ---- - -Define headers that apply to all API endpoints. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx b/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx deleted file mode 100644 index ed970b397..000000000 --- a/fern/products/fern-def/pages-archived/guides/creating-namespaces.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Creating namespaces ---- - -Instructions for creating and organizing namespaces in your API. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx b/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx deleted file mode 100644 index 57c6b7543..000000000 --- a/fern/products/fern-def/pages-archived/guides/define-multiple-apis.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Define multiple APIs ---- - -How to define and manage multiple APIs in one project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx b/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx deleted file mode 100644 index e92b4376d..000000000 --- a/fern/products/fern-def/pages-archived/guides/depending-on-other-apis.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Depending on other APIs ---- - -How to manage dependencies between different APIs. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx b/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx deleted file mode 100644 index a3f85ef9c..000000000 --- a/fern/products/fern-def/pages-archived/guides/export-to-openapi.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Export to OpenAPI ---- - -How to export your API definition to OpenAPI format. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx b/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx deleted file mode 100644 index 07b6d978e..000000000 --- a/fern/products/fern-def/pages-archived/guides/validate-your-fern-definition.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Validate your Fern definition ---- - -Learn how to validate your Fern definition to ensure it's correct. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/fern/overview). \ No newline at end of file diff --git a/fern/products/grpc-def/grpc-def.yml b/fern/products/grpc-def/grpc-def.yml deleted file mode 100644 index be00164c1..000000000 --- a/fern/products/grpc-def/grpc-def.yml +++ /dev/null @@ -1,39 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Services - slug: services - contents: - - page: gRPC Services - path: ./pages/services/grpc-services.mdx - slug: grpc-services - - page: Streaming - path: ./pages/services/streaming.mdx - slug: streaming - - page: Error Handling - path: ./pages/services/errors.mdx - slug: errors - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your gRPC Specification - path: ./pages/automation.mdx \ No newline at end of file diff --git a/fern/products/home/pages/welcome.mdx b/fern/products/home/pages/welcome.mdx index 250627388..7fb686764 100644 --- a/fern/products/home/pages/welcome.mdx +++ b/fern/products/home/pages/welcome.mdx @@ -280,8 +280,8 @@ import { FernFooter } from "../../../components/FernFooter";
- Discord Preview - Discord Preview + Slack Preview + Slack Preview

Slack

@@ -332,6 +332,12 @@ import { FernFooter } from "../../../components/FernFooter"; Email us + + Email + Email + + Book a demo +

diff --git a/fern/products/openapi-def/openapi-def.yml b/fern/products/openapi-def/openapi-def.yml deleted file mode 100644 index 2cae8cd5f..000000000 --- a/fern/products/openapi-def/openapi-def.yml +++ /dev/null @@ -1,47 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Endpoints - slug: endpoints - contents: - - page: HTTP JSON Endpoints - path: ./pages/endpoints/rest.mdx - slug: http - - page: Webhooks - path: ./pages/webhooks.mdx - - page: Multipart Form Uploads - path: ./pages/endpoints/multipart.mdx - slug: multipart - - page: Server-Sent Events - path: ./pages/endpoints/sse.mdx - slug: sse - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your OpenAPI Specification - path: ./pages/automation.mdx - - section: Integrate your Server Framework - slug: frameworks - contents: - - page: FastAPI - path: ./pages/server-frameworks/fastapi.mdx - slug: fastapi diff --git a/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx b/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx deleted file mode 100644 index c5b866835..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/customer-showcase.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Customer Showcase ---- - -Examples and case studies of customers using OpenAPI definitions successfully. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx deleted file mode 100644 index fb94e0757..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get to OpenAPI ---- - -How to create or obtain your OpenAPI definition through various methods. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx deleted file mode 100644 index c86fc2990..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/fastapi.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: FastAPI ---- - -# Generate OpenAPI from FastAPI - -Instructions for generating an OpenAPI definition from a FastAPI project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx deleted file mode 100644 index a8d652966..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/nestjs.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NestJS ---- - -# Generate OpenAPI from NestJS - -Instructions for generating an OpenAPI definition from a NestJS project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx deleted file mode 100644 index caff15386..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/request-new-framework.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Request New Framework ---- - -# Request a New Framework - -Don't see your framework? Let us know which framework you'd like to see supported for OpenAPI generation. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx deleted file mode 100644 index bfce61181..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/generate-it/swaggo.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swaggo ---- - -# Generate OpenAPI from Swaggo - -Instructions for generating an OpenAPI definition from a Swaggo (Go) project. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx b/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx deleted file mode 100644 index 369b2a221..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/get-to-openapi/handwrite-it.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Handwrite It ---- - -# Handwrite Your OpenAPI Definition - -Step-by-step guide to manually writing your OpenAPI definition from scratch. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx b/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx deleted file mode 100644 index 014c14d01..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/overlay-customizations.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overlay Customizations ---- - -Learn how to customize your OpenAPI overlays to fit your unique requirements. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/overview.mdx b/fern/products/openapi-def/pages-archived/getting-started/overview.mdx deleted file mode 100644 index 6be870a5d..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/overview.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Overview ---- - -# Overview - -This is the overview page for Getting Started with your OpenAPI definition. Here you will find a high-level introduction and guidance on how to begin. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx b/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx deleted file mode 100644 index 87806f749..000000000 --- a/fern/products/openapi-def/pages-archived/getting-started/philosophy.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Philosophy ---- - -The philosophy and principles behind OpenAPI definitions and how they enhance API development. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/allof.mdx b/fern/products/openapi-def/pages-archived/schemas/allof.mdx deleted file mode 100644 index e358568a9..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/allof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: All Of ---- - -How to use the `allOf` keyword to compose schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/anyof.mdx b/fern/products/openapi-def/pages-archived/schemas/anyof.mdx deleted file mode 100644 index 49b1741a8..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/anyof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Any Of ---- - -How to use the `anyOf` keyword to allow multiple possible schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/enums.mdx b/fern/products/openapi-def/pages-archived/schemas/enums.mdx deleted file mode 100644 index 91e6534f9..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/enums.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Enums ---- - -How to use enum types to define a fixed set of values in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx b/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx deleted file mode 100644 index ef85bd503..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/inlined-schemas.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Inlined Schemas ---- - -How to define schemas inline within your OpenAPI specification. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/objects.mdx b/fern/products/openapi-def/pages-archived/schemas/objects.mdx deleted file mode 100644 index 11c642e50..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/objects.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Objects ---- - -How to define object schemas with properties in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/oneof.mdx b/fern/products/openapi-def/pages-archived/schemas/oneof.mdx deleted file mode 100644 index 9cbd54b08..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/oneof.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: One Of ---- - -How to use the `oneOf` keyword to define alternative schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/schemas/override-type.mdx b/fern/products/openapi-def/pages-archived/schemas/override-type.mdx deleted file mode 100644 index 232be2f74..000000000 --- a/fern/products/openapi-def/pages-archived/schemas/override-type.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Override Type ---- - -How to override the default type inference for schemas in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx b/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx deleted file mode 100644 index e309f5c61..000000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/multiple-security-schemes.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Multiple Security Schemes ---- - -Learn how to define and use multiple security schemes in your OpenAPI definition. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx b/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx deleted file mode 100644 index c15237faa..000000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/overriding-security-scheme.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overriding Security Scheme ---- - -How to override security schemes in specific operations or contexts. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx b/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx deleted file mode 100644 index aee1d93c0..000000000 --- a/fern/products/openapi-def/pages-archived/security-schemes/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Security Schemes Overview ---- - -Overview of security schemes and authentication methods in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx b/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx deleted file mode 100644 index 75b1c9a73..000000000 --- a/fern/products/openapi-def/pages-archived/servers/multiple-server-urls.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Multiple Server URLs ---- - -How to configure multiple server URLs for different environments. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx b/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx deleted file mode 100644 index e8156e654..000000000 --- a/fern/products/openapi-def/pages-archived/servers/naming-your-servers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Naming Your Servers ---- - -Best practices for naming your server configurations. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx b/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx deleted file mode 100644 index b73791cd4..000000000 --- a/fern/products/openapi-def/pages-archived/servers/overriding-servers.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Overriding Servers ---- - -How to override server configurations in specific contexts. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openapi-def/pages-archived/servers/overview.mdx b/fern/products/openapi-def/pages-archived/servers/overview.mdx deleted file mode 100644 index 57a9148b3..000000000 --- a/fern/products/openapi-def/pages-archived/servers/overview.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Servers Overview ---- - -Overview of server configuration options in OpenAPI. - -This page is a WIP, please refer to our previous [documentation](https://buildwithfern.com/learn/api-definition/openapi/overview). \ No newline at end of file diff --git a/fern/products/openrpc-def/openrpc-def.yml b/fern/products/openrpc-def/openrpc-def.yml deleted file mode 100644 index 2235fb2a9..000000000 --- a/fern/products/openrpc-def/openrpc-def.yml +++ /dev/null @@ -1,39 +0,0 @@ -navigation: - - page: Overview - path: ./pages/overview.mdx - - page: Authentication - path: ./pages/auth.mdx - - page: Servers - path: ./pages/servers.mdx - - section: Methods - slug: methods - contents: - - page: JSON-RPC Methods - path: ./pages/methods/rpc-methods.mdx - slug: rpc-methods - - page: Notifications - path: ./pages/methods/notifications.mdx - slug: notifications - - page: Batch Requests - path: ./pages/methods/batch.mdx - slug: batch - - section: Extensions - slug: extensions - contents: - - page: Audiences - path: ./pages/extensions/audiences.mdx - - page: SDK Method Names - path: ./pages/extensions/method-names.mdx - slug: method-names - - page: Parameter Names - path: ./pages/extensions/parameter-names.mdx - - page: Other - path: ./pages/extensions/others.mdx - slug: others - - section: Workflow & Automation - skip-slug: true - contents: - - page: Overlay Customizations - path: ./pages/overrides.mdx - - page: Sync your OpenRPC Specification - path: ./pages/automation.mdx