mirror of
https://github.com/n8n-io/n8n-nodes-starter.git
synced 2025-10-31 23:32:26 -05:00
BeeFlow 1
This commit is contained in:
parent
cfade8a9b3
commit
812cdaeace
8 changed files with 446 additions and 92 deletions
54
nodes/BeeFlowOmni/GenericFunctions.ts
Normal file
54
nodes/BeeFlowOmni/GenericFunctions.ts
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
import {
|
||||
IExecuteFunctions,
|
||||
IHookFunctions,
|
||||
} from 'n8n-core';
|
||||
|
||||
import {
|
||||
IDataObject,
|
||||
NodeApiError,
|
||||
NodeOperationError,
|
||||
} from 'n8n-workflow';
|
||||
|
||||
import {
|
||||
OptionsWithUri,
|
||||
} from 'request';
|
||||
|
||||
/**
|
||||
* Make an API request to BeeFlowOmni
|
||||
*
|
||||
* @param {IHookFunctions | IExecuteFunctions} this
|
||||
* @param {string} method
|
||||
* @param {Endpoint} endpoint
|
||||
* @param {object | undefined} data
|
||||
* @returns {Promise<any>}
|
||||
*/
|
||||
export async function BeeFlowOmniRequest(this: IHookFunctions | IExecuteFunctions, method: string, endpoint: string, body: IDataObject, qs: IDataObject = {}): Promise<any> { // tslint:disable-line:no-any
|
||||
const credentials = await this.getCredentials('BeeFlowOmniKey');
|
||||
if (credentials === undefined) {
|
||||
throw new NodeOperationError(this.getNode(), 'No credentials got returned!');
|
||||
}
|
||||
|
||||
const options: OptionsWithUri = {
|
||||
headers: {
|
||||
SentWith: 'n8n',
|
||||
'X-Api-Key': credentials.apiKey,
|
||||
},
|
||||
qs,
|
||||
uri: `https://api2.iatechsas.com/${endpoint}`,
|
||||
json: true,
|
||||
method,
|
||||
};
|
||||
|
||||
if (Object.keys(body).length) {
|
||||
options.form = body;
|
||||
body.json = 1;
|
||||
}
|
||||
|
||||
const response = await this.helpers.request(options);
|
||||
|
||||
if (response.success !== '100') {
|
||||
throw new NodeApiError(this.getNode(), response, { message: 'Invalid BeeFlowOmni credentials or API error!' });
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue