diff --git a/.changeset/blue-vans-marry.md b/.changeset/blue-vans-marry.md new file mode 100644 index 000000000..a848171dc --- /dev/null +++ b/.changeset/blue-vans-marry.md @@ -0,0 +1,5 @@ +--- +'@gitbook/react-openapi': patch +--- + +Support apiKey in CodeSample security headers diff --git a/packages/react-openapi/src/OpenAPICodeSample.tsx b/packages/react-openapi/src/OpenAPICodeSample.tsx index 8ed04e303..ac3c06c70 100644 --- a/packages/react-openapi/src/OpenAPICodeSample.tsx +++ b/packages/react-openapi/src/OpenAPICodeSample.tsx @@ -153,6 +153,28 @@ function getSecurityHeaders(securities: OpenAPIOperationData['securities']): { Authorization: scheme + ' ' + (security[1].bearerFormat ?? ''), }; } + case 'apiKey': { + if (security[1].in !== 'header') return {}; + + const name = security[1].name ?? 'Authorization'; + let scheme = security[0]; + + switch (scheme) { + case 'bearerAuth': + scheme = 'Bearer'; + break; + case 'token': + scheme = 'Token'; + break; + case 'basic': + scheme = 'Basic'; + break; + } + + return { + [name]: scheme + ' ' + '', + }; + } default: { return {}; }