mirror of
https://github.com/n8n-io/n8n.git
synced 2024-12-28 22:19:41 -08:00
65 lines
1.4 KiB
TypeScript
65 lines
1.4 KiB
TypeScript
import {
|
|
IExecuteFunctions,
|
|
IHookFunctions,
|
|
} from 'n8n-core';
|
|
|
|
import {
|
|
ICredentialDataDecryptedObject,
|
|
IDataObject,
|
|
} from 'n8n-workflow';
|
|
|
|
/**
|
|
* Make an API request to MSG91
|
|
*
|
|
* @param {IHookFunctions | IExecuteFunctions} this
|
|
* @param {object} message
|
|
* @returns {Promise<any>}
|
|
*/
|
|
export async function SIGNL4ApiRequest(this: IHookFunctions | IExecuteFunctions, message: IDataObject): Promise<any> { // tslint:disable-line:no-any
|
|
const credentials = this.getCredentials('SIGNL4Api');
|
|
if (credentials === undefined) {
|
|
throw new Error('No credentials got returned!');
|
|
}
|
|
|
|
const teamsecret = credentials!.teamSecret as string;
|
|
|
|
var response = null;
|
|
try {
|
|
response = await this.helpers.request({
|
|
headers: {'Content-Type': 'application/json'},
|
|
method: 'POST',
|
|
body: message,
|
|
qs: {},
|
|
uri: `https://connect.signl4.com/webhook/${teamsecret}`,
|
|
json: true
|
|
});
|
|
}
|
|
catch (error) {
|
|
|
|
throw new Error(`I am behind. Status: ${JSON.stringify(teamsecret)}`);
|
|
|
|
if (error && error.message) {
|
|
throw new Error(`Error sending the SIGNL4 request. Error: ${JSON.stringify(error.message)}`);
|
|
}
|
|
|
|
throw new Error('Error sending the SIGNL4 request.');
|
|
|
|
throw error;
|
|
}
|
|
|
|
return response;
|
|
}
|
|
|
|
|
|
function setPayload(credentials: ICredentialDataDecryptedObject, o?: IDataObject) {
|
|
if (!o) {
|
|
o = {};
|
|
}
|
|
|
|
o.p = credentials!.teamSecret as string;
|
|
o.json = 1;
|
|
o.sendwith = 'n8n';
|
|
|
|
return o;
|
|
}
|