diff --git a/packages/bruno-app/src/utils/codegenerator/auth.js b/packages/bruno-app/src/utils/codegenerator/auth.js index d5ecb4cc5..7098cf8ac 100644 --- a/packages/bruno-app/src/utils/codegenerator/auth.js +++ b/packages/bruno-app/src/utils/codegenerator/auth.js @@ -33,6 +33,22 @@ export const getAuthHeaders = (collectionRootAuth, requestAuth) => { value: `Bearer ${get(auth, 'bearer.token', '')}` } ]; + case 'apikey': + const apiKeyAuth = get(auth, 'apikey', {}); + const key = get(apiKeyAuth, 'key', ''); + const value = get(apiKeyAuth, 'value', ''); + const placement = get(apiKeyAuth, 'placement', 'header'); + + if (placement === 'header') { + return [ + { + enabled: true, + name: key, + value: value + } + ]; + } + return []; default: return []; } diff --git a/packages/bruno-app/src/utils/codegenerator/har.js b/packages/bruno-app/src/utils/codegenerator/har.js index dbe1d1349..836631056 100644 --- a/packages/bruno-app/src/utils/codegenerator/har.js +++ b/packages/bruno-app/src/utils/codegenerator/har.js @@ -44,13 +44,25 @@ const createHeaders = (request, headers) => { return enabledHeaders; }; -const createQuery = (queryParams = []) => { - return queryParams +const createQuery = (queryParams = [], request) => { + const params = queryParams .filter((param) => param.enabled && param.type === 'query') .map((param) => ({ name: param.name, value: param.value })); + + if (request?.auth?.mode === 'apikey' && + request?.auth?.apikey?.placement === 'queryparams' && + request?.auth?.apikey?.key && + request?.auth?.apikey?.value) { + params.push({ + name: request.auth.apikey.key, + value: request.auth.apikey.value + }); + } + + return params; }; const createPostData = (body) => { @@ -125,7 +137,7 @@ export const buildHarRequest = ({ request, headers }) => { httpVersion: 'HTTP/1.1', cookies: [], headers: createHeaders(request, headers), - queryString: createQuery(request.params), + queryString: createQuery(request.params, request), postData: createPostData(request.body), headersSize: 0, bodySize: 0,