feat(Hubspot Node): enable hubspot credentials for http predefined types (#3686)

This commit is contained in:
vcrwr 2022-10-17 13:13:59 +02:00 committed by GitHub
parent fc87650180
commit b5c40e6294
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 37 additions and 12 deletions

View file

@ -1,4 +1,4 @@
import { ICredentialType, INodeProperties } from 'n8n-workflow';
import { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
export class HubspotApi implements ICredentialType {
name = 'hubspotApi';
@ -12,4 +12,20 @@ export class HubspotApi implements ICredentialType {
default: '',
},
];
authenticate: IAuthenticateGeneric = {
type: 'generic',
properties: {
qs: {
hapikey: '={{$credentials.apiKey}}',
},
},
};
test: ICredentialTestRequest = {
request: {
baseURL: 'https://api.hubapi.com',
url: '/account-info/v3/details',
},
};
}

View file

@ -1,4 +1,4 @@
import { ICredentialType, INodeProperties } from 'n8n-workflow';
import { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
export class HubspotAppToken implements ICredentialType {
name = 'hubspotAppToken';
@ -12,4 +12,20 @@ export class HubspotAppToken implements ICredentialType {
default: '',
},
];
authenticate: IAuthenticateGeneric = {
type: 'generic',
properties: {
headers: {
Authorization: '=Bearer {{$credentials.appToken}}',
},
},
};
test: ICredentialTestRequest = {
request: {
baseURL: 'https://api.hubapi.com',
url: '/account-info/v3/details',
},
};
}

View file

@ -44,16 +44,9 @@ export async function hubspotApiRequest(
};
try {
if (authenticationMethod === 'apiKey') {
const credentials = await this.getCredentials('hubspotApi');
options.qs.hapikey = credentials.apiKey as string;
return await this.helpers.request!(options);
} else if (authenticationMethod === 'appToken') {
const credentials = await this.getCredentials('hubspotAppToken');
options.headers!['Authorization'] = `Bearer ${credentials.appToken}`;
return await this.helpers.request!(options);
if (authenticationMethod === 'apiKey' || authenticationMethod === 'appToken') {
const credentialType = authenticationMethod === 'apiKey' ? 'hubspotApi' : 'hubspotAppToken';
return this.helpers.requestWithAuthentication.call(this, credentialType, options);
} else if (authenticationMethod === 'developerApi') {
if (endpoint.includes('webhooks')) {
const credentials = await this.getCredentials('hubspotDeveloperApi');