diff --git a/packages/nodes-base/credentials/MispApi.credentials.ts b/packages/nodes-base/credentials/MispApi.credentials.ts index 8067aaf712d6b..c9a43cd36d207 100644 --- a/packages/nodes-base/credentials/MispApi.credentials.ts +++ b/packages/nodes-base/credentials/MispApi.credentials.ts @@ -1,4 +1,9 @@ -import type { ICredentialType, INodeProperties } from 'n8n-workflow'; +import type { + IAuthenticateGeneric, + ICredentialTestRequest, + ICredentialType, + INodeProperties, +} from 'n8n-workflow'; export class MispApi implements ICredentialType { name = 'mispApi'; @@ -29,4 +34,21 @@ export class MispApi implements ICredentialType { default: false, }, ]; + + authenticate: IAuthenticateGeneric = { + type: 'generic', + properties: { + headers: { + Authorization: '={{$credentials.apiKey}}', + }, + }, + }; + + test: ICredentialTestRequest = { + request: { + baseURL: '={{$credentials.baseUrl.replace(new RegExp("/$"), "")}}', + url: '/tags', + skipSslCertificateValidation: '={{$credentials.allowUnauthorizedCerts}}', + }, + }; } diff --git a/packages/nodes-base/nodes/Misp/GenericFunctions.ts b/packages/nodes-base/nodes/Misp/GenericFunctions.ts index 0d798f3e0c647..7e50a2816bda0 100644 --- a/packages/nodes-base/nodes/Misp/GenericFunctions.ts +++ b/packages/nodes-base/nodes/Misp/GenericFunctions.ts @@ -19,14 +19,11 @@ export async function mispApiRequest( body: IDataObject = {}, qs: IDataObject = {}, ) { - const { baseUrl, apiKey, allowUnauthorizedCerts } = (await this.getCredentials( + const { baseUrl, allowUnauthorizedCerts } = (await this.getCredentials( 'mispApi', )) as MispCredentials; const options: OptionsWithUri = { - headers: { - Authorization: apiKey, - }, method, body, qs, @@ -44,7 +41,7 @@ export async function mispApiRequest( } try { - return await this.helpers.request(options); + return await this.helpers.requestWithAuthentication.call(this, 'mispApi', options); } catch (error) { // MISP API wrongly returns 403 for malformed requests if (error.statusCode === 403) {