n8n/packages/nodes-base/nodes/SyncroMSP/v1/methods/loadOptions.ts
Anuj Kapoor 214dd5061e
Add Syncromsp node (#2477)
* Init Node

* Added get customer details api for syncomsp-node

* Fixed formatting bug 🐛

* Updated description for query params, and removed redundant condition in router

* Changed default value for page parameter

* 🚢 Added tickets API

* 🚢 Added contacts API

* 🚢 Added RMM Alerts API

* Add customer API

* Updates post code review

* Rename SyncroMspAPI.credentials.ts to SyncroMspApi.credentials.ts

* added create and delete method to customers module

* fix liniting issue

* Added Update method to customer module

* Code Review Changes

* 🚢 Added CRUD for contacts endpoint

* 🚢 Added CRUD for RMM Alert endpoint

* Added options for status field

* 🐛 fix linting issues

* Init Node

* Added get customer details api for syncomsp-node

* Fixed formatting bug 🐛

* Updated description for query params, and removed redundant condition in router

* Changed default value for page parameter

* 🚢 Added tickets API

* 🚢 Added contacts API

* 🚢 Added RMM Alerts API

* Updates post code review

* Add customer API

* added create and delete method to customers module

* fix liniting issue

* Added Update method to customer module

* Rename SyncroMspAPI.credentials.ts to SyncroMspApi.credentials.ts

* Code Review Changes

* 🚢 Added CRUD for contacts endpoint

* 🚢 Added CRUD for RMM Alert endpoint

* Added options for status field

* 🐛 fix linting issues

* 🚢 Added CRUD for ticket endpoint

* :tag: update get customer module

* :tag: update get customer module

* Minor bug fixes

* Changed response for ticket update

* 👕 Fix lint issue

* Alphabetically ordered all options

* 🐛 Fixed build issue

* 🐛 Fixed Server.ts build issue, rebased from master

*  Fix node issues

*  Fix more issues

*  Fixed all operations with the standard convention

* 👕 Fix lint

* Fix reviewed changes

* update border color

*  minor fixes

* minor fixes

* Added fallback when port in use

*  Minor Fixes

*  Hide addtional paramerts when return all is active

*  Fix issues with Tickets

*  Fix issues with Rmm

*  Fix issues with Customer

* 👕 Fix lint

*  Fix issues with Contact

* 👕 Fixed formatting issue

*  Return 404 in ID not found

* 👕 Fixed formatting issue

*  Improvements

*  Improvements

*  Improvements

*  Add credentials verification

*  Improvements

*  Improvements

*  Additional improvements

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2022-01-07 18:19:24 +01:00

39 lines
848 B
TypeScript

import {
IDataObject,
ILoadOptionsFunctions,
INodePropertyOptions,
NodeOperationError,
} from 'n8n-workflow';
import {
apiRequestAllItems,
} from '../transport';
// Get all the available channels
export async function getCustomers(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]> {
const endpoint = 'customers';
const responseData = await apiRequestAllItems.call(this, 'GET', endpoint, {});
if (responseData === undefined) {
throw new NodeOperationError(this.getNode(), 'No data got returned');
}
const returnData: INodePropertyOptions[] = [];
for (const data of responseData) {
returnData.push({
name: data.fullname as string,
value: data.id as number,
});
}
returnData.sort((a, b) => {
if (a.name < b.name) { return -1; }
if (a.name > b.name) { return 1; }
return 0;
});
return returnData;
}