n8n-nodes-apivault-tech-stack-lookup 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/LICENSE +21 -0
- package/README.md +51 -0
- package/dist/credentials/ApifyApi.credentials.d.ts +9 -0
- package/dist/credentials/ApifyApi.credentials.js +28 -0
- package/dist/credentials/ApifyApi.credentials.js.map +1 -0
- package/dist/nodes/TechStackLookup/TechStackLookup.node.d.ts +5 -0
- package/dist/nodes/TechStackLookup/TechStackLookup.node.js +528 -0
- package/dist/nodes/TechStackLookup/TechStackLookup.node.js.map +1 -0
- package/dist/nodes/TechStackLookup/techstacklookup.svg +1 -0
- package/index.js +1 -0
- package/package.json +51 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 ApiVault Labs
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Tech Stack Lookup for n8n
|
|
2
|
+
|
|
3
|
+
Use **Tech Stack Lookup** directly in n8n through the hosted
|
|
4
|
+
[`apivault_labs/tech-stack-lookup` Apify Actor](https://apify.com/apivault_labs/tech-stack-lookup).
|
|
5
|
+
|
|
6
|
+
The package is a thin workflow connector. It contains no private scraper implementation,
|
|
7
|
+
embedded credentials or datasets. Runs use your own Apify API token and return every
|
|
8
|
+
Dataset row as a separate n8n item. The node can also be used as an AI tool.
|
|
9
|
+
|
|
10
|
+
## Setup
|
|
11
|
+
|
|
12
|
+
Install `n8n-nodes-apivault-tech-stack-lookup` as an n8n community node, create an **Apify API** credential,
|
|
13
|
+
and paste your token from Apify Console โ Settings โ Integrations.
|
|
14
|
+
|
|
15
|
+
## Inputs
|
|
16
|
+
|
|
17
|
+
- `mode` โ ๐ Lookup mode
|
|
18
|
+
- `domains` โ ๐ Domains to check
|
|
19
|
+
- `monitorName` โ ๐ Monitor name
|
|
20
|
+
- `verifyLive` โ ๐ Verify technologies live
|
|
21
|
+
- `technologyPreset` โ โก Popular technology preset
|
|
22
|
+
- `opportunityPreset` โ ๐ฏ Sales opportunity preset
|
|
23
|
+
- `technologies` โ โ
Technologies to include
|
|
24
|
+
- `matchMode` โ ๐ Match logic
|
|
25
|
+
- `excludeTechnologies` โ ๐ซ Technologies to exclude
|
|
26
|
+
- `category` โ ๐งฉ Technology category
|
|
27
|
+
- `country` โ ๐ Countries (ISO-2)
|
|
28
|
+
- `vertical` โ ๐ท๏ธ Industry / vertical
|
|
29
|
+
- `hasEmail` โ ๐ง Only websites with email
|
|
30
|
+
- `hasPhone` โ ๐ Only websites with phone
|
|
31
|
+
- `newWithinDays` โ ๐ First indexed within days
|
|
32
|
+
- `lastIndexedWithinDays` โ ๐ Re-indexed within days
|
|
33
|
+
- `lastFoundWithinDays` โ โ
Last confirmed within days
|
|
34
|
+
- `sortBy` โ ๐ Sort results by
|
|
35
|
+
- `sortDesc` โ โฌ๏ธ Highest values first
|
|
36
|
+
- `dedupeByDomain` โ ๐งน Remove duplicate domains
|
|
37
|
+
- `countOnly` โ ๐ข Preview audience size only
|
|
38
|
+
- `maxItems` โ ๐ฆ Maximum websites
|
|
39
|
+
- `offset` โ โก๏ธ Offset (skip first N)
|
|
40
|
+
- `columns` โ ๐๏ธ Output columns
|
|
41
|
+
|
|
42
|
+
Advanced users can send newly added or uncommon Actor fields through
|
|
43
|
+
**Additional Actor Input (JSON)** without waiting for a package update.
|
|
44
|
+
|
|
45
|
+
## Security
|
|
46
|
+
|
|
47
|
+
The Apify token is stored by n8n credentials and sent only to `api.apify.com`.
|
|
48
|
+
|
|
49
|
+
## License
|
|
50
|
+
|
|
51
|
+
MIT. Actor usage is billed separately on Apify.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class ApifyApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
documentationUrl: string;
|
|
6
|
+
properties: INodeProperties[];
|
|
7
|
+
authenticate: IAuthenticateGeneric;
|
|
8
|
+
test: ICredentialTestRequest;
|
|
9
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApifyApi = void 0;
|
|
4
|
+
class ApifyApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'apifyApi';
|
|
7
|
+
this.displayName = 'Apify API';
|
|
8
|
+
this.documentationUrl = 'https://docs.apify.com/platform/integrations/api';
|
|
9
|
+
this.properties = [
|
|
10
|
+
{
|
|
11
|
+
displayName: 'API Token',
|
|
12
|
+
name: 'apiToken',
|
|
13
|
+
type: 'string',
|
|
14
|
+
typeOptions: { password: true },
|
|
15
|
+
default: '',
|
|
16
|
+
required: true,
|
|
17
|
+
description: 'Your personal Apify API token (Apify Console -> Settings -> Integrations).',
|
|
18
|
+
},
|
|
19
|
+
];
|
|
20
|
+
this.authenticate = {
|
|
21
|
+
type: 'generic',
|
|
22
|
+
properties: { headers: { Authorization: '=Bearer {{$credentials.apiToken}}' } },
|
|
23
|
+
};
|
|
24
|
+
this.test = { request: { baseURL: 'https://api.apify.com/v2', url: '/users/me' } };
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.ApifyApi = ApifyApi;
|
|
28
|
+
//# sourceMappingURL=ApifyApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApifyApi.credentials.js","sourceRoot":"","sources":["../../credentials/ApifyApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,QAAQ;IAArB;QACC,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,WAAW,CAAC;QAC1B,qBAAgB,GAAG,kDAAkD,CAAC;QACtE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,4EAA4E;aACzF;SACD,CAAC;QACF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,mCAAmC,EAAE,EAAE;SAC/E,CAAC;QACF,SAAI,GAA2B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC;IACvG,CAAC;CAAA;AApBD,4BAoBC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
|
|
2
|
+
export declare class TechStackLookup implements INodeType {
|
|
3
|
+
description: INodeTypeDescription;
|
|
4
|
+
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,528 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TechStackLookup = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const ACTOR_ID = 'apivault_labs~tech-stack-lookup';
|
|
6
|
+
class TechStackLookup {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.description = {
|
|
9
|
+
displayName: "Tech Stack Lookup",
|
|
10
|
+
name: "techStackLookup",
|
|
11
|
+
icon: 'file:techstacklookup.svg',
|
|
12
|
+
group: ['transform'],
|
|
13
|
+
version: 1,
|
|
14
|
+
description: "BuiltWith alternative and tech stack lookup across 60M+ websites. Find Shopify and Klaviyo leads, stack gaps, lookalike companies and technology monitoring alerts. Export contacts, opportunity scores and migration signals for B2B sales.",
|
|
15
|
+
defaults: { name: "Tech Stack Lookup" },
|
|
16
|
+
inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
17
|
+
outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
18
|
+
usableAsTool: true,
|
|
19
|
+
credentials: [{ name: 'apifyApi', required: true }],
|
|
20
|
+
properties: [
|
|
21
|
+
{
|
|
22
|
+
"displayName": "๐ Lookup mode",
|
|
23
|
+
"name": "mode",
|
|
24
|
+
"description": "find requires technologies, technologyPreset or opportunityPreset; detect requires domains; lookalike requires seed domains; monitor requires domains and a stable monitorName; catalog needs no other input.",
|
|
25
|
+
"type": "options",
|
|
26
|
+
"options": [
|
|
27
|
+
{
|
|
28
|
+
"name": "๐ Find websites by technology",
|
|
29
|
+
"value": "find"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "๐งฐ Check the tech stack of my domains",
|
|
33
|
+
"value": "detect"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"name": "๐งฌ Find lookalike companies",
|
|
37
|
+
"value": "lookalike"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "๐ Monitor technology changes",
|
|
41
|
+
"value": "monitor"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "๐ Browse technology catalog",
|
|
45
|
+
"value": "catalog"
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
"default": "find"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"displayName": "๐ Domains to check",
|
|
52
|
+
"name": "domains",
|
|
53
|
+
"description": "Required for detect, lookalike and monitor. Accepts hostnames or URLs. Unknown domains are skipped, so a successful run can return an empty dataset. Enter one value per line or separate values with commas.",
|
|
54
|
+
"type": "string",
|
|
55
|
+
"typeOptions": {
|
|
56
|
+
"rows": 3
|
|
57
|
+
},
|
|
58
|
+
"default": ""
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"displayName": "๐ Monitor name",
|
|
62
|
+
"name": "monitorName",
|
|
63
|
+
"description": "Used in Monitor mode. Reuse the same name and domain list on scheduled runs to compare the current profile with the saved baseline.",
|
|
64
|
+
"type": "string",
|
|
65
|
+
"default": "my-tech-monitor"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"displayName": "๐ Verify technologies live",
|
|
69
|
+
"name": "verifyLive",
|
|
70
|
+
"description": "Detect common technologies from the current public homepage and return confidence/evidence alongside the stored profile. Detect mode only; capped at 100 domains per run.",
|
|
71
|
+
"type": "boolean",
|
|
72
|
+
"default": false
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"displayName": "โก Popular technology preset",
|
|
76
|
+
"name": "technologyPreset",
|
|
77
|
+
"description": "Optional shortcut for a commonly requested technology. It is combined with custom Technologies below.",
|
|
78
|
+
"type": "options",
|
|
79
|
+
"options": [
|
|
80
|
+
{
|
|
81
|
+
"name": "Shopify",
|
|
82
|
+
"value": "Shopify"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "Shopify Plus",
|
|
86
|
+
"value": "Shopify Plus"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"name": "WooCommerce",
|
|
90
|
+
"value": "WooCommerce"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "WordPress",
|
|
94
|
+
"value": "WordPress"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"name": "Klaviyo",
|
|
98
|
+
"value": "Klaviyo"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"name": "HubSpot",
|
|
102
|
+
"value": "HubSpot"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "Stripe",
|
|
106
|
+
"value": "Stripe"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"name": "PayPal",
|
|
110
|
+
"value": "PayPal"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"name": "Mailchimp",
|
|
114
|
+
"value": "Mailchimp"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"name": "Salesforce",
|
|
118
|
+
"value": "Salesforce"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"name": "Cloudflare",
|
|
122
|
+
"value": "Cloudflare"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"name": "Magento",
|
|
126
|
+
"value": "Magento"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"name": "BigCommerce",
|
|
130
|
+
"value": "BigCommerce"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"name": "Yotpo",
|
|
134
|
+
"value": "Yotpo"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "Gorgias",
|
|
138
|
+
"value": "Gorgias"
|
|
139
|
+
}
|
|
140
|
+
],
|
|
141
|
+
"default": "Shopify"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"displayName": "๐ฏ Sales opportunity preset",
|
|
145
|
+
"name": "opportunityPreset",
|
|
146
|
+
"description": "Optional ready-made stack-gap campaign. It automatically adds the required and missing technologies and produces an opportunity score plus suggested pitch.",
|
|
147
|
+
"type": "options",
|
|
148
|
+
"options": [
|
|
149
|
+
{
|
|
150
|
+
"name": "Shopify without Klaviyo",
|
|
151
|
+
"value": "shopify_without_klaviyo"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"name": "Klaviyo without Yotpo",
|
|
155
|
+
"value": "klaviyo_without_yotpo"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "Mailchimp replacement prospects",
|
|
159
|
+
"value": "mailchimp_replacement"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"name": "WooCommerce migration prospects",
|
|
163
|
+
"value": "woocommerce_migration"
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"name": "HubSpot without Klaviyo",
|
|
167
|
+
"value": "hubspot_without_klaviyo"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"name": "Stripe without PayPal",
|
|
171
|
+
"value": "stripe_without_paypal"
|
|
172
|
+
}
|
|
173
|
+
],
|
|
174
|
+
"default": "shopify_without_klaviyo"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"displayName": "โ
Technologies to include",
|
|
178
|
+
"name": "technologies",
|
|
179
|
+
"description": "Used in Find websites mode. Type each technology and press Enter. Examples: Klaviyo, Stripe, Shopify Plus, HubSpot, Cloudflare, PayPal, Mailchimp, Attentive, Yotpo, Gorgias. Use complete product names for precise results. Enter one value per line or separate values with commas.",
|
|
180
|
+
"type": "string",
|
|
181
|
+
"typeOptions": {
|
|
182
|
+
"rows": 3
|
|
183
|
+
},
|
|
184
|
+
"default": "Klaviyo"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"displayName": "๐ Match logic",
|
|
188
|
+
"name": "matchMode",
|
|
189
|
+
"description": "How to combine the technologies above. 'Any' = uses at least one of them (OR). 'All' = uses every one of them (AND, e.g. Shopify + Klaviyo).",
|
|
190
|
+
"type": "options",
|
|
191
|
+
"options": [
|
|
192
|
+
{
|
|
193
|
+
"name": "โก Any technology (OR)",
|
|
194
|
+
"value": "any"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"name": "๐ฏ Every technology (AND)",
|
|
198
|
+
"value": "all"
|
|
199
|
+
}
|
|
200
|
+
],
|
|
201
|
+
"default": "any"
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"displayName": "๐ซ Technologies to exclude",
|
|
205
|
+
"name": "excludeTechnologies",
|
|
206
|
+
"description": "Sites using ANY of these are removed from the results. Example: find Klaviyo users that do NOT use Yotpo. Type each one and press Enter. Enter one value per line or separate values with commas.",
|
|
207
|
+
"type": "string",
|
|
208
|
+
"typeOptions": {
|
|
209
|
+
"rows": 3
|
|
210
|
+
},
|
|
211
|
+
"default": ""
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"displayName": "๐งฉ Technology category",
|
|
215
|
+
"name": "category",
|
|
216
|
+
"description": "Which part of the stack to search in. 'Any layer' searches all of them (recommended โ a tool can appear in more than one, e.g. HubSpot as CRM and marketing).",
|
|
217
|
+
"type": "options",
|
|
218
|
+
"options": [
|
|
219
|
+
{
|
|
220
|
+
"name": "๐ Any category (recommended)",
|
|
221
|
+
"value": "any"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"name": "๐ Ecommerce platforms",
|
|
225
|
+
"value": "ecommerce"
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"name": "๐ CMS & website builders",
|
|
229
|
+
"value": "cms"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"name": "๐ค CRM platforms",
|
|
233
|
+
"value": "crm"
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"name": "๐ฃ Marketing automation",
|
|
237
|
+
"value": "marketing"
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"name": "๐ณ Payment tools",
|
|
241
|
+
"value": "payments"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"name": "โ๏ธ Hosting providers",
|
|
245
|
+
"value": "hosting"
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"name": "๐ค AI tools",
|
|
249
|
+
"value": "ai"
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"default": "any"
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"displayName": "๐ Countries (ISO-2)",
|
|
256
|
+
"name": "country",
|
|
257
|
+
"description": "One or more ISO-2 country codes, e.g. US, DE, GB. Type each code and press Enter. Empty โ no country filter. Enter one value per line or separate values with commas.",
|
|
258
|
+
"type": "string",
|
|
259
|
+
"typeOptions": {
|
|
260
|
+
"rows": 3
|
|
261
|
+
},
|
|
262
|
+
"default": ""
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"displayName": "๐ท๏ธ Industry / vertical",
|
|
266
|
+
"name": "vertical",
|
|
267
|
+
"description": "Keep only sites in this industry, e.g. Fashion, Technology, Health, or Food. Leave empty to include every industry.",
|
|
268
|
+
"type": "string",
|
|
269
|
+
"default": ""
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"displayName": "๐ง Only websites with email",
|
|
273
|
+
"name": "hasEmail",
|
|
274
|
+
"description": "Keep only sites where the Emails field is not empty.",
|
|
275
|
+
"type": "boolean",
|
|
276
|
+
"default": false
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"displayName": "๐ Only websites with phone",
|
|
280
|
+
"name": "hasPhone",
|
|
281
|
+
"description": "Keep only sites where the Telephones field is not empty.",
|
|
282
|
+
"type": "boolean",
|
|
283
|
+
"default": false
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"displayName": "๐ First indexed within days",
|
|
287
|
+
"name": "newWithinDays",
|
|
288
|
+
"description": "Return websites first added to the index within the last N days. Use 7 for a weekly new-lead feed. Set 0 to disable.",
|
|
289
|
+
"type": "number",
|
|
290
|
+
"default": 0,
|
|
291
|
+
"typeOptions": {
|
|
292
|
+
"minValue": 0,
|
|
293
|
+
"maxValue": 3650
|
|
294
|
+
}
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"displayName": "๐ Re-indexed within days",
|
|
298
|
+
"name": "lastIndexedWithinDays",
|
|
299
|
+
"description": "Keep websites whose record was indexed within the last N days. Useful for recently refreshed data. Set 0 to disable.",
|
|
300
|
+
"type": "number",
|
|
301
|
+
"default": 0,
|
|
302
|
+
"typeOptions": {
|
|
303
|
+
"minValue": 0,
|
|
304
|
+
"maxValue": 3650
|
|
305
|
+
}
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"displayName": "โ
Last confirmed within days",
|
|
309
|
+
"name": "lastFoundWithinDays",
|
|
310
|
+
"description": "Keep websites last observed within the previous N days. Use this to prefer recently confirmed leads. Set 0 to disable.",
|
|
311
|
+
"type": "number",
|
|
312
|
+
"default": 0,
|
|
313
|
+
"typeOptions": {
|
|
314
|
+
"minValue": 0,
|
|
315
|
+
"maxValue": 3650
|
|
316
|
+
}
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
"displayName": "๐ Sort results by",
|
|
320
|
+
"name": "sortBy",
|
|
321
|
+
"description": "Order rows by this column before applying the limit, so you get the top leads instead of an arbitrary slice. Empty โ no ordering.",
|
|
322
|
+
"type": "options",
|
|
323
|
+
"options": [
|
|
324
|
+
{
|
|
325
|
+
"name": "Overall Score",
|
|
326
|
+
"value": "Overall Score"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"name": "Tranco",
|
|
330
|
+
"value": "Tranco"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"name": "Page Rank",
|
|
334
|
+
"value": "Page Rank"
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
"name": "Sales Revenue",
|
|
338
|
+
"value": "Sales Revenue"
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"name": "Employees",
|
|
342
|
+
"value": "Employees"
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
"name": "Technology Spend",
|
|
346
|
+
"value": "Technology Spend"
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"name": "SKU",
|
|
350
|
+
"value": "SKU"
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"name": "Performance",
|
|
354
|
+
"value": "Performance"
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"name": "SEO",
|
|
358
|
+
"value": "SEO"
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"name": "First Indexed",
|
|
362
|
+
"value": "First Indexed"
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
"name": "Last Indexed",
|
|
366
|
+
"value": "Last Indexed"
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"name": "Last Found",
|
|
370
|
+
"value": "Last Found"
|
|
371
|
+
}
|
|
372
|
+
],
|
|
373
|
+
"default": "Overall Score"
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
"displayName": "โฌ๏ธ Highest values first",
|
|
377
|
+
"name": "sortDesc",
|
|
378
|
+
"description": "Highest values first (recommended for scores/traffic/revenue).",
|
|
379
|
+
"type": "boolean",
|
|
380
|
+
"default": true
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"displayName": "๐งน Remove duplicate domains",
|
|
384
|
+
"name": "dedupeByDomain",
|
|
385
|
+
"description": "Return each normalized Root Domain only once across all data segments. Recommended for lead exports.",
|
|
386
|
+
"type": "boolean",
|
|
387
|
+
"default": true
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
"displayName": "๐ข Preview audience size only",
|
|
391
|
+
"name": "countOnly",
|
|
392
|
+
"description": "Preview stored in COUNT_SUMMARY without per-result charges. Actor start and platform usage may still apply. Counts matching segment rows; the same domain may occur in multiple segments, so this is an upper bound for unique websites.",
|
|
393
|
+
"type": "boolean",
|
|
394
|
+
"default": false
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"displayName": "๐ฆ Maximum websites",
|
|
398
|
+
"name": "maxItems",
|
|
399
|
+
"description": "Upper limit on returned rows per run (across all platforms combined). Max 250000. Need more than one run's worth? There is no total cap โ use Offset to page through unlimited results across runs.",
|
|
400
|
+
"type": "number",
|
|
401
|
+
"default": 50,
|
|
402
|
+
"typeOptions": {
|
|
403
|
+
"minValue": 1,
|
|
404
|
+
"maxValue": 250000
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
"displayName": "โก๏ธ Offset (skip first N)",
|
|
409
|
+
"name": "offset",
|
|
410
|
+
"description": "Skip the first N matching rows, then return the next batch. Use it to export more than one run allows: run 1 with Offset 0, run 2 with Offset = the rows you already got, and so on. Set a Sort by column for stable pagination.",
|
|
411
|
+
"type": "number",
|
|
412
|
+
"default": 0,
|
|
413
|
+
"typeOptions": {
|
|
414
|
+
"minValue": 0
|
|
415
|
+
}
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
"displayName": "๐๏ธ Output columns",
|
|
419
|
+
"name": "columns",
|
|
420
|
+
"description": "Choose the fields to export. Leave empty for all 59 available fields. Each website is returned as one result row. Enter one value per line or separate values with commas.",
|
|
421
|
+
"type": "string",
|
|
422
|
+
"typeOptions": {
|
|
423
|
+
"rows": 3
|
|
424
|
+
},
|
|
425
|
+
"default": ""
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"displayName": "Additional Actor Input (JSON)",
|
|
429
|
+
"name": "additionalInput",
|
|
430
|
+
"description": "Optional advanced fields to merge into the Actor input. Explicit fields above take precedence.",
|
|
431
|
+
"type": "json",
|
|
432
|
+
"default": "{}"
|
|
433
|
+
}
|
|
434
|
+
],
|
|
435
|
+
};
|
|
436
|
+
}
|
|
437
|
+
async execute() {
|
|
438
|
+
const items = this.getInputData();
|
|
439
|
+
const returnData = [];
|
|
440
|
+
for (let i = 0; i < items.length; i++) {
|
|
441
|
+
try {
|
|
442
|
+
const body = {};
|
|
443
|
+
const extra = this.getNodeParameter('additionalInput', i, '{}');
|
|
444
|
+
if (extra) {
|
|
445
|
+
try {
|
|
446
|
+
Object.assign(body, typeof extra === 'string' ? JSON.parse(extra) : extra);
|
|
447
|
+
}
|
|
448
|
+
catch {
|
|
449
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Additional Actor Input must be valid JSON', { itemIndex: i });
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
body["mode"] = this.getNodeParameter("mode", i);
|
|
453
|
+
{
|
|
454
|
+
const value = this.getNodeParameter("domains", i, '');
|
|
455
|
+
const values = value.split(/[,\n]/).map((entry) => entry.trim()).filter(Boolean);
|
|
456
|
+
if (values.length)
|
|
457
|
+
body["domains"] = values;
|
|
458
|
+
}
|
|
459
|
+
body["monitorName"] = this.getNodeParameter("monitorName", i);
|
|
460
|
+
body["verifyLive"] = this.getNodeParameter("verifyLive", i);
|
|
461
|
+
body["technologyPreset"] = this.getNodeParameter("technologyPreset", i);
|
|
462
|
+
body["opportunityPreset"] = this.getNodeParameter("opportunityPreset", i);
|
|
463
|
+
{
|
|
464
|
+
const value = this.getNodeParameter("technologies", i, '');
|
|
465
|
+
const values = value.split(/[,\n]/).map((entry) => entry.trim()).filter(Boolean);
|
|
466
|
+
if (values.length)
|
|
467
|
+
body["technologies"] = values;
|
|
468
|
+
}
|
|
469
|
+
body["matchMode"] = this.getNodeParameter("matchMode", i);
|
|
470
|
+
{
|
|
471
|
+
const value = this.getNodeParameter("excludeTechnologies", i, '');
|
|
472
|
+
const values = value.split(/[,\n]/).map((entry) => entry.trim()).filter(Boolean);
|
|
473
|
+
if (values.length)
|
|
474
|
+
body["excludeTechnologies"] = values;
|
|
475
|
+
}
|
|
476
|
+
body["category"] = this.getNodeParameter("category", i);
|
|
477
|
+
{
|
|
478
|
+
const value = this.getNodeParameter("country", i, '');
|
|
479
|
+
const values = value.split(/[,\n]/).map((entry) => entry.trim()).filter(Boolean);
|
|
480
|
+
if (values.length)
|
|
481
|
+
body["country"] = values;
|
|
482
|
+
}
|
|
483
|
+
{
|
|
484
|
+
const value = this.getNodeParameter("vertical", i, '');
|
|
485
|
+
if (value.trim())
|
|
486
|
+
body["vertical"] = value.trim();
|
|
487
|
+
}
|
|
488
|
+
body["hasEmail"] = this.getNodeParameter("hasEmail", i);
|
|
489
|
+
body["hasPhone"] = this.getNodeParameter("hasPhone", i);
|
|
490
|
+
body["newWithinDays"] = this.getNodeParameter("newWithinDays", i);
|
|
491
|
+
body["lastIndexedWithinDays"] = this.getNodeParameter("lastIndexedWithinDays", i);
|
|
492
|
+
body["lastFoundWithinDays"] = this.getNodeParameter("lastFoundWithinDays", i);
|
|
493
|
+
body["sortBy"] = this.getNodeParameter("sortBy", i);
|
|
494
|
+
body["sortDesc"] = this.getNodeParameter("sortDesc", i);
|
|
495
|
+
body["dedupeByDomain"] = this.getNodeParameter("dedupeByDomain", i);
|
|
496
|
+
body["countOnly"] = this.getNodeParameter("countOnly", i);
|
|
497
|
+
body["maxItems"] = this.getNodeParameter("maxItems", i);
|
|
498
|
+
body["offset"] = this.getNodeParameter("offset", i);
|
|
499
|
+
{
|
|
500
|
+
const value = this.getNodeParameter("columns", i, '');
|
|
501
|
+
const values = value.split(/[,\n]/).map((entry) => entry.trim()).filter(Boolean);
|
|
502
|
+
if (values.length)
|
|
503
|
+
body["columns"] = values;
|
|
504
|
+
}
|
|
505
|
+
const options = {
|
|
506
|
+
method: 'POST',
|
|
507
|
+
url: `https://api.apify.com/v2/acts/${ACTOR_ID}/run-sync-get-dataset-items`,
|
|
508
|
+
body,
|
|
509
|
+
json: true,
|
|
510
|
+
};
|
|
511
|
+
const response = await this.helpers.requestWithAuthentication.call(this, 'apifyApi', options);
|
|
512
|
+
const results = Array.isArray(response) ? response : [response];
|
|
513
|
+
for (const result of results)
|
|
514
|
+
returnData.push({ json: result, pairedItem: { item: i } });
|
|
515
|
+
}
|
|
516
|
+
catch (error) {
|
|
517
|
+
if (this.continueOnFail()) {
|
|
518
|
+
returnData.push({ json: { error: error.message }, pairedItem: { item: i } });
|
|
519
|
+
continue;
|
|
520
|
+
}
|
|
521
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i });
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
return [returnData];
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
exports.TechStackLookup = TechStackLookup;
|
|
528
|
+
//# sourceMappingURL=TechStackLookup.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TechStackLookup.node.js","sourceRoot":"","sources":["../../../nodes/TechStackLookup/TechStackLookup.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><rect width="64" height="64" rx="14" fill="#6e45e2"/><path d="M18 20h28v7H18zm0 12h20v7H18zm0 12h28v7H18z" fill="#fff"/></svg>
|
package/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = {};
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "n8n-nodes-apivault-tech-stack-lookup",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "n8n community node for Tech Stack Lookup, backed by the apivault_labs/tech-stack-lookup Apify Actor.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"homepage": "https://apify.com/apivault_labs/tech-stack-lookup",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"n8n-community-node-package",
|
|
9
|
+
"n8n",
|
|
10
|
+
"apify",
|
|
11
|
+
"automation",
|
|
12
|
+
"lead-generation",
|
|
13
|
+
"tech",
|
|
14
|
+
"stack",
|
|
15
|
+
"lookup"
|
|
16
|
+
],
|
|
17
|
+
"author": {
|
|
18
|
+
"name": "apivault_labs"
|
|
19
|
+
},
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "https://github.com/apivault-labs/apify-funnels.git"
|
|
23
|
+
},
|
|
24
|
+
"main": "index.js",
|
|
25
|
+
"scripts": {
|
|
26
|
+
"build": "tsc && copyfiles \"nodes/**/*.svg\" dist",
|
|
27
|
+
"dev": "tsc --watch",
|
|
28
|
+
"prepublishOnly": "npm run build"
|
|
29
|
+
},
|
|
30
|
+
"files": [
|
|
31
|
+
"dist"
|
|
32
|
+
],
|
|
33
|
+
"n8n": {
|
|
34
|
+
"n8nNodesApiVersion": 1,
|
|
35
|
+
"credentials": [
|
|
36
|
+
"dist/credentials/ApifyApi.credentials.js"
|
|
37
|
+
],
|
|
38
|
+
"nodes": [
|
|
39
|
+
"dist/nodes/TechStackLookup/TechStackLookup.node.js"
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
"devDependencies": {
|
|
43
|
+
"@types/node": "^20.10.0",
|
|
44
|
+
"copyfiles": "^2.4.1",
|
|
45
|
+
"n8n-workflow": "*",
|
|
46
|
+
"typescript": "^5.4.0"
|
|
47
|
+
},
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"n8n-workflow": "*"
|
|
50
|
+
}
|
|
51
|
+
}
|