From 02a8102beb68974d3d2b5f9e0c19ee2b5dee2e11 Mon Sep 17 00:00:00 2001 From: Jens Claes <896093+entropitor@users.noreply.github.com> Date: Mon, 25 Aug 2025 10:02:25 +0200 Subject: [PATCH 1/2] feat: allow following examples array --- .../src/openapi/createSchemaExample.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts b/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts index ea0ddcf0c..29138d020 100644 --- a/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts +++ b/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts @@ -111,11 +111,15 @@ export const sampleFromSchema = ( try { // deep copy schema before processing let schemaCopy = JSON.parse(JSON.stringify(schema)); - let { type, example, allOf, properties, items, oneOf, anyOf } = schemaCopy; + let { type, example, examples, allOf, properties, items, oneOf, anyOf } = + schemaCopy; if (example !== undefined) { return example; } + if (examples !== undefined && examples.length > 0) { + return examples[0]; + } if (oneOf) { if (properties) { From bac309971cbb12a36b9b93dd2c0d8ee6cb24e6a7 Mon Sep 17 00:00:00 2001 From: Jens Claes <896093+entropitor@users.noreply.github.com> Date: Mon, 25 Aug 2025 10:46:27 +0200 Subject: [PATCH 2/2] feat: also support examples for properties --- .../src/openapi/createSchemaExample.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts b/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts index 29138d020..6a2ff5024 100644 --- a/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts +++ b/packages/docusaurus-plugin-openapi-docs/src/openapi/createSchemaExample.ts @@ -91,7 +91,11 @@ function sampleFromProp( // TODO: handle discriminators - if (prop.oneOf) { + if (prop.example !== undefined) { + obj[name] = prop.example; + } else if (prop.examples !== undefined && prop.examples.length > 0) { + obj[name] = prop.examples[0]; + } else if (prop.oneOf) { obj[name] = sampleFromSchema(prop.oneOf[0], context); } else if (prop.anyOf) { obj[name] = sampleFromSchema(prop.anyOf[0], context);