n8n-nodes-checkmob 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/credentials/CheckmobApi.credentials.d.ts +10 -0
- package/dist/credentials/CheckmobApi.credentials.js +57 -0
- package/dist/credentials/CheckmobApi.credentials.js.map +1 -0
- package/dist/credentials/checkmob.svg +4 -0
- package/dist/nodes/Checkmob/Checkmob.node.d.ts +5 -0
- package/dist/nodes/Checkmob/Checkmob.node.js +166 -0
- package/dist/nodes/Checkmob/Checkmob.node.js.map +1 -0
- package/dist/nodes/Checkmob/checkmob.svg +4 -0
- package/package.json +58 -0
package/README.md
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# n8n-nodes-checkmob
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/n8n-nodes-checkmob)
|
|
4
|
+
|
|
5
|
+
Official n8n community node for **[Checkmob](https://checkmob.com)** — field service management platform.
|
|
6
|
+
|
|
7
|
+
## Resources (v0.1.0)
|
|
8
|
+
|
|
9
|
+
| Resource | Operations |
|
|
10
|
+
|---|---|
|
|
11
|
+
| Category | List |
|
|
12
|
+
|
|
13
|
+
## Credentials
|
|
14
|
+
|
|
15
|
+
1. Get your Bearer Token via `POST /api/v1/auth/login`
|
|
16
|
+
2. In n8n go to **Credentials → New → Checkmob API**
|
|
17
|
+
3. Paste your **Bearer Token**
|
|
18
|
+
|
|
19
|
+
## Installation (self-hosted n8n)
|
|
20
|
+
|
|
21
|
+
Go to **Settings → Community Nodes → Install** and enter:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
n8n-nodes-checkmob
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## API Docs
|
|
28
|
+
|
|
29
|
+
[https://api-integration.checkmob.com/index.html](https://api-integration.checkmob.com/index.html)
|
|
30
|
+
|
|
31
|
+
## License
|
|
32
|
+
|
|
33
|
+
MIT
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class CheckmobApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
documentationUrl: string;
|
|
6
|
+
icon: "file:checkmob.svg";
|
|
7
|
+
properties: INodeProperties[];
|
|
8
|
+
authenticate: IAuthenticateGeneric;
|
|
9
|
+
test: ICredentialTestRequest;
|
|
10
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CheckmobApi = void 0;
|
|
4
|
+
class CheckmobApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'checkmobApi';
|
|
7
|
+
this.displayName = 'Checkmob API';
|
|
8
|
+
this.documentationUrl = 'https://api-integration.checkmob.com/index.html';
|
|
9
|
+
this.icon = 'file:checkmob.svg';
|
|
10
|
+
this.properties = [
|
|
11
|
+
{
|
|
12
|
+
displayName: 'Base URL',
|
|
13
|
+
name: 'baseUrl',
|
|
14
|
+
type: 'string',
|
|
15
|
+
default: 'https://api-integration.checkmob.com',
|
|
16
|
+
required: true,
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
displayName: 'Bearer Token',
|
|
20
|
+
name: 'accessToken',
|
|
21
|
+
type: 'string',
|
|
22
|
+
typeOptions: { password: true },
|
|
23
|
+
default: '',
|
|
24
|
+
required: true,
|
|
25
|
+
description: 'Token obtido via POST /api/v1/auth/login',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
// Injeta Authorization: Bearer <token> em todos os requests
|
|
29
|
+
this.authenticate = {
|
|
30
|
+
type: 'generic',
|
|
31
|
+
properties: {
|
|
32
|
+
headers: {
|
|
33
|
+
Authorization: '=Bearer {{$credentials.accessToken}}',
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
// Testa a credencial chamando um endpoint leve
|
|
38
|
+
this.test = {
|
|
39
|
+
request: {
|
|
40
|
+
baseURL: '={{$credentials.baseUrl}}',
|
|
41
|
+
url: '/api/v1/category/list',
|
|
42
|
+
method: 'POST',
|
|
43
|
+
headers: {
|
|
44
|
+
'Accept-Language': 'pt-BR',
|
|
45
|
+
'Content-Type': 'application/json',
|
|
46
|
+
},
|
|
47
|
+
body: {
|
|
48
|
+
numberOfRows: 1,
|
|
49
|
+
numberOfRowsSkipped: 0,
|
|
50
|
+
search: '',
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.CheckmobApi = CheckmobApi;
|
|
57
|
+
//# sourceMappingURL=CheckmobApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckmobApi.credentials.js","sourceRoot":"","sources":["../../credentials/CheckmobApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,WAAW;IAAxB;QACC,SAAI,GAAG,aAAa,CAAC;QACrB,gBAAW,GAAG,cAAc,CAAC;QAC7B,qBAAgB,GAAG,iDAAiD,CAAC;QACrE,SAAI,GAAG,mBAA4B,CAAC;QAEpC,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,sCAAsC;gBAC/C,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,cAAc;gBAC3B,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,0CAA0C;aACvD;SACD,CAAC;QAEF,4DAA4D;QAC5D,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,sCAAsC;iBACrD;aACD;SACD,CAAC;QAEF,+CAA+C;QAC/C,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,2BAA2B;gBACpC,GAAG,EAAE,uBAAuB;gBAC5B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,iBAAiB,EAAE,OAAO;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE;oBACL,YAAY,EAAE,CAAC;oBACf,mBAAmB,EAAE,CAAC;oBACtB,MAAM,EAAE,EAAE;iBACV;aACD;SACD,CAAC;IACH,CAAC;CAAA;AApDD,kCAoDC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
|
|
2
|
+
<rect width="60" height="60" rx="14" fill="#0052CC"/>
|
|
3
|
+
<path d="M30 12C20.06 12 12 20.06 12 30s8.06 18 18 18c5.25 0 9.97-2.24 13.27-5.82l-4.24-4.24A11.93 11.93 0 0 1 30 42c-6.63 0-12-5.37-12-12s5.37-12 12-12c3.15 0 6.01 1.22 8.15 3.2l4.18-4.18A17.93 17.93 0 0 0 30 12z" fill="white"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
|
|
2
|
+
export declare class Checkmob implements INodeType {
|
|
3
|
+
description: INodeTypeDescription;
|
|
4
|
+
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Checkmob = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
class Checkmob {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.description = {
|
|
8
|
+
displayName: 'Checkmob',
|
|
9
|
+
name: 'checkmob',
|
|
10
|
+
icon: 'file:checkmob.svg',
|
|
11
|
+
group: ['transform'],
|
|
12
|
+
version: 1,
|
|
13
|
+
subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
|
|
14
|
+
description: 'Interact with the Checkmob Field Service API',
|
|
15
|
+
defaults: { name: 'Checkmob' },
|
|
16
|
+
inputs: ['main'],
|
|
17
|
+
outputs: ['main'],
|
|
18
|
+
credentials: [
|
|
19
|
+
{
|
|
20
|
+
name: 'checkmobApi',
|
|
21
|
+
required: true,
|
|
22
|
+
},
|
|
23
|
+
],
|
|
24
|
+
properties: [
|
|
25
|
+
// ── Resource ────────────────────────────────────────────────────────
|
|
26
|
+
{
|
|
27
|
+
displayName: 'Resource',
|
|
28
|
+
name: 'resource',
|
|
29
|
+
type: 'options',
|
|
30
|
+
noDataExpression: true,
|
|
31
|
+
options: [
|
|
32
|
+
{
|
|
33
|
+
name: 'Category',
|
|
34
|
+
value: 'category',
|
|
35
|
+
description: 'Manage categories',
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
default: 'category',
|
|
39
|
+
},
|
|
40
|
+
// ── Category operations ─────────────────────────────────────────────
|
|
41
|
+
{
|
|
42
|
+
displayName: 'Operation',
|
|
43
|
+
name: 'operation',
|
|
44
|
+
type: 'options',
|
|
45
|
+
noDataExpression: true,
|
|
46
|
+
displayOptions: { show: { resource: ['category'] } },
|
|
47
|
+
options: [
|
|
48
|
+
{
|
|
49
|
+
name: 'List',
|
|
50
|
+
value: 'list',
|
|
51
|
+
description: 'List all categories',
|
|
52
|
+
action: 'List categories',
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
default: 'list',
|
|
56
|
+
},
|
|
57
|
+
// ── Category › List — parâmetros ────────────────────────────────────
|
|
58
|
+
{
|
|
59
|
+
displayName: 'Return All',
|
|
60
|
+
name: 'returnAll',
|
|
61
|
+
type: 'boolean',
|
|
62
|
+
default: false,
|
|
63
|
+
displayOptions: {
|
|
64
|
+
show: { resource: ['category'], operation: ['list'] },
|
|
65
|
+
},
|
|
66
|
+
description: 'Whether to return all results or only up to a given limit',
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
displayName: 'Limit',
|
|
70
|
+
name: 'limit',
|
|
71
|
+
type: 'number',
|
|
72
|
+
default: 50,
|
|
73
|
+
typeOptions: { minValue: 1, maxValue: 500 },
|
|
74
|
+
displayOptions: {
|
|
75
|
+
show: {
|
|
76
|
+
resource: ['category'],
|
|
77
|
+
operation: ['list'],
|
|
78
|
+
returnAll: [false],
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
description: 'Max number of results to return',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
displayName: 'Skip',
|
|
85
|
+
name: 'skip',
|
|
86
|
+
type: 'number',
|
|
87
|
+
default: 0,
|
|
88
|
+
typeOptions: { minValue: 0 },
|
|
89
|
+
displayOptions: {
|
|
90
|
+
show: { resource: ['category'], operation: ['list'] },
|
|
91
|
+
},
|
|
92
|
+
description: 'Number of rows to skip (for pagination)',
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
displayName: 'Search',
|
|
96
|
+
name: 'search',
|
|
97
|
+
type: 'string',
|
|
98
|
+
default: '',
|
|
99
|
+
displayOptions: {
|
|
100
|
+
show: { resource: ['category'], operation: ['list'] },
|
|
101
|
+
},
|
|
102
|
+
description: 'Filter categories by name or keyword',
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
async execute() {
|
|
108
|
+
var _a;
|
|
109
|
+
const items = this.getInputData();
|
|
110
|
+
const returnData = [];
|
|
111
|
+
const credentials = await this.getCredentials('checkmobApi');
|
|
112
|
+
const baseUrl = credentials.baseUrl.replace(/\/$/, '');
|
|
113
|
+
for (let i = 0; i < items.length; i++) {
|
|
114
|
+
try {
|
|
115
|
+
const resource = this.getNodeParameter('resource', i);
|
|
116
|
+
const operation = this.getNodeParameter('operation', i);
|
|
117
|
+
// ── Category › List ──────────────────────────────────────────────
|
|
118
|
+
if (resource === 'category' && operation === 'list') {
|
|
119
|
+
const returnAll = this.getNodeParameter('returnAll', i);
|
|
120
|
+
const limit = returnAll ? 0 : this.getNodeParameter('limit', i, 50);
|
|
121
|
+
const skip = this.getNodeParameter('skip', i, 0);
|
|
122
|
+
const search = this.getNodeParameter('search', i, '');
|
|
123
|
+
const body = {
|
|
124
|
+
numberOfRows: limit,
|
|
125
|
+
numberOfRowsSkipped: skip,
|
|
126
|
+
search: search,
|
|
127
|
+
};
|
|
128
|
+
const response = await this.helpers.httpRequestWithAuthentication.call(this, 'checkmobApi', {
|
|
129
|
+
method: 'POST',
|
|
130
|
+
url: `${baseUrl}/api/v1/category/list`,
|
|
131
|
+
headers: {
|
|
132
|
+
'Accept-Language': 'pt-BR',
|
|
133
|
+
'Content-Type': 'application/json',
|
|
134
|
+
},
|
|
135
|
+
body,
|
|
136
|
+
json: true,
|
|
137
|
+
});
|
|
138
|
+
// A API Checkmob retorna { success, data: [...] } ou { success, data: { items: [...] } }
|
|
139
|
+
const raw = (_a = response === null || response === void 0 ? void 0 : response.data) !== null && _a !== void 0 ? _a : response;
|
|
140
|
+
const list = Array.isArray(raw)
|
|
141
|
+
? raw
|
|
142
|
+
: Array.isArray(raw === null || raw === void 0 ? void 0 : raw.items)
|
|
143
|
+
? raw.items
|
|
144
|
+
: [raw];
|
|
145
|
+
returnData.push(...this.helpers.returnJsonArray(list));
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Unknown operation "${operation}" for resource "${resource}"`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
catch (error) {
|
|
152
|
+
if (this.continueOnFail()) {
|
|
153
|
+
returnData.push({
|
|
154
|
+
json: { error: error.message },
|
|
155
|
+
pairedItem: { item: i },
|
|
156
|
+
});
|
|
157
|
+
continue;
|
|
158
|
+
}
|
|
159
|
+
throw error;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return [returnData];
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
exports.Checkmob = Checkmob;
|
|
166
|
+
//# sourceMappingURL=Checkmob.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkmob.node.js","sourceRoot":"","sources":["../../../nodes/Checkmob/Checkmob.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
|
|
2
|
+
<rect width="60" height="60" rx="14" fill="#0052CC"/>
|
|
3
|
+
<path d="M30 12C20.06 12 12 20.06 12 30s8.06 18 18 18c5.25 0 9.97-2.24 13.27-5.82l-4.24-4.24A11.93 11.93 0 0 1 30 42c-6.63 0-12-5.37-12-12s5.37-12 12-12c3.15 0 6.01 1.22 8.15 3.2l4.18-4.18A17.93 17.93 0 0 0 30 12z" fill="white"/>
|
|
4
|
+
</svg>
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "n8n-nodes-checkmob",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "n8n community node for Checkmob — field service management platform",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"n8n-community-node-package",
|
|
7
|
+
"n8n",
|
|
8
|
+
"checkmob",
|
|
9
|
+
"field-service",
|
|
10
|
+
"automation"
|
|
11
|
+
],
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"homepage": "https://checkmob.com",
|
|
14
|
+
"author": {
|
|
15
|
+
"name": "Checkmob",
|
|
16
|
+
"email": "suporte@checkmob.com"
|
|
17
|
+
},
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "https://github.com/checkmob/n8n-nodes-checkmob.git"
|
|
21
|
+
},
|
|
22
|
+
"main": "dist/index.js",
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "tsc -p tsconfig.build.json && gulp build:icons",
|
|
25
|
+
"dev": "tsc --watch",
|
|
26
|
+
"format": "prettier \"nodes/**/*.{ts,js,json,md}\" \"credentials/**/*.{ts,js,json,md}\" --write",
|
|
27
|
+
"lint": "eslint nodes/ credentials/ --ext .ts,.js --max-warnings=0",
|
|
28
|
+
"lintfix": "eslint nodes/ credentials/ --ext .ts,.js --fix",
|
|
29
|
+
"prepublishOnly": "npm run build && npm run lint"
|
|
30
|
+
},
|
|
31
|
+
"files": [
|
|
32
|
+
"dist/",
|
|
33
|
+
"README.md",
|
|
34
|
+
"example-workflow.json",
|
|
35
|
+
"LICENSE.md"
|
|
36
|
+
],
|
|
37
|
+
"n8n": {
|
|
38
|
+
"n8nNodesApiVersion": 1,
|
|
39
|
+
"credentials": [
|
|
40
|
+
"dist/credentials/CheckmobApi.credentials.js"
|
|
41
|
+
],
|
|
42
|
+
"nodes": [
|
|
43
|
+
"dist/nodes/Checkmob/Checkmob.node.js"
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@n8n/node-cli": ">=0.23.0",
|
|
48
|
+
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
|
49
|
+
"@typescript-eslint/parser": "^8.0.0",
|
|
50
|
+
"eslint": "^9.0.0",
|
|
51
|
+
"gulp": "^4.0.2",
|
|
52
|
+
"n8n-workflow": "^2.16.0",
|
|
53
|
+
"typescript": "^5.9.3"
|
|
54
|
+
},
|
|
55
|
+
"peerDependencies": {
|
|
56
|
+
"n8n-workflow": "*"
|
|
57
|
+
}
|
|
58
|
+
}
|