@n8n-dev/n8n-nodes-zapper 1.0.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 +95 -0
- package/dist/credentials/ZapperApi.credentials.d.ts +10 -0
- package/dist/credentials/ZapperApi.credentials.js +56 -0
- package/dist/credentials/ZapperApi.credentials.js.map +1 -0
- package/dist/icons/zapper.dark.svg +4 -0
- package/dist/icons/zapper.svg +4 -0
- package/dist/nodes/Zapper/Zapper.node.d.ts +4 -0
- package/dist/nodes/Zapper/Zapper.node.js +54 -0
- package/dist/nodes/Zapper/Zapper.node.js.map +1 -0
- package/dist/nodes/Zapper/Zapper.node.json +20 -0
- package/dist/nodes/Zapper/resources/index.d.ts +1 -0
- package/dist/nodes/Zapper/resources/index.js +6 -0
- package/dist/nodes/Zapper/resources/index.js.map +1 -0
- package/dist/nodes/Zapper/resources/zapper-tools/index.d.ts +2 -0
- package/dist/nodes/Zapper/resources/zapper-tools/index.js +1797 -0
- package/dist/nodes/Zapper/resources/zapper-tools/index.js.map +1 -0
- package/dist/nodes/Zapper/zapper.dark.svg +4 -0
- package/dist/nodes/Zapper/zapper.svg +4 -0
- package/dist/package.json +62 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +62 -0
package/README.md
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# @n8n-dev/n8n-nodes-zapper
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/@n8n-dev/n8n-nodes-zapper)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
**Stop writing zapper API integrations by hand.**
|
|
9
|
+
|
|
10
|
+
Every time you connect n8n to zapper, you waste hours mapping endpoints, defining parameters, and debugging schemas. You copy-paste from docs, fix edge cases, and pray nothing breaks.
|
|
11
|
+
|
|
12
|
+
**What if connecting n8n to zapper took 5 minutes, not half a day?**
|
|
13
|
+
|
|
14
|
+
This node gives you **1+ resources** out of the box: **Zapper Tools**: with full CRUD operations, typed parameters, and zero manual configuration.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## What You Get
|
|
19
|
+
|
|
20
|
+
- **Zero boilerplate**: Resources, operations, and fields are pre-configured and ready to use
|
|
21
|
+
- **Full CRUD**: Create, read, update, and delete support where the API allows it
|
|
22
|
+
- **Typed parameters**: No more guessing field types
|
|
23
|
+
- **Built-in auth**: API key authentication, ready to go
|
|
24
|
+
- **Declarative**: Native n8n performance, no custom execute() overhead
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Install
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npm install @n8n-dev/n8n-nodes-zapper
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Or in n8n:**
|
|
35
|
+
1. **Settings → Community Nodes → Install**
|
|
36
|
+
2. Search: `@n8n-dev/n8n-nodes-zapper`
|
|
37
|
+
3. Click **Install**
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Quick Start
|
|
42
|
+
|
|
43
|
+
1. Install the node (above)
|
|
44
|
+
2. Add credentials: **zapper API** → paste your API key
|
|
45
|
+
3. Drag the **zapper** node into your workflow
|
|
46
|
+
4. Pick a resource → pick an operation → done.
|
|
47
|
+
|
|
48
|
+
That's it. No configuration files. No code. It just works.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Resources
|
|
53
|
+
|
|
54
|
+
| Resource | Operations |
|
|
55
|
+
|----------|------------|
|
|
56
|
+
| Zapper Tools | POST Get real-time token price and market cap, POST Search for ERC20 tokens, NFTs, Users, Apps, or Gas Tokens., POST Get detailed metadata, traits, media, and holder info for a specific NFT, POST Get NFT collection data including market stats, holders, events, and a sample of NFTs., POST Get aggregated portfolio totals (Tokens, Apps, NFTs) broken down by network for a single address, or a list of addresses., POST Get detailed token balances for a single address, or a list of addresses, optionally filtering by chain., POST Get DeFi balances (Liquidity Pools, Yield Farming, Lending, etc.) for a single address, or a list of addresses., POST Get individual NFT balances and estimated values for a single address, or a list of addresses., POST Get the price of a token at a specific point in time., POST Get human-readable interpretation, metadata, and balance changes for a specific transaction., POST Get transaction history with interpretations and metadata for a single address, or a list of addresses., POST Get token holders with balances and identity information for a specific token., POST Get a ranked list of tokens based on swap activity and velocity of adoption, optionally tailored for a farcaster user., POST Get a ranked list of NFT collections based on rading activity and collection popularity, optionally tailored for a farcaster user., POST Get social identity (ENS, Farcaster, Lens, Basenames) for a specific address., POST Get a real-time feed of swap activity across Farcaster, including token trades, volume, and social context., POST Get a combined activity feed for a specific token, including swaps and top Farcaster casts, personalized for a given user. |
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Why This Node?
|
|
61
|
+
|
|
62
|
+
**Without this node:**
|
|
63
|
+
- Hours of manual API integration
|
|
64
|
+
- Copy-pasting from zapper docs
|
|
65
|
+
- Debugging auth, pagination, error handling
|
|
66
|
+
- Maintaining your own client code
|
|
67
|
+
|
|
68
|
+
**With this node:**
|
|
69
|
+
- Install → configure → use. 5 minutes.
|
|
70
|
+
- Auto-generated from the official zapper OpenAPI spec
|
|
71
|
+
- Always up to date when the API changes
|
|
72
|
+
- Native n8n performance
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Auto-Generated
|
|
77
|
+
This node was auto-generated from the official **zapper** OpenAPI specification using
|
|
78
|
+
[@n8n-dev/n8n-openapi-node-ultimate](https://github.com/kelvinzer0/n8n-openapi-node-ultimate),
|
|
79
|
+
then validated against the live API so you get accurate types and real parameters, not guesswork.
|
|
80
|
+
|
|
81
|
+
When the zapper API updates, this node updates too.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Support This Project
|
|
86
|
+
|
|
87
|
+
If this node saved you hours of work, consider supporting continued development, new APIs, better error handling, and faster updates.
|
|
88
|
+
|
|
89
|
+
[](https://n8n-code.github.io/membership/#/eyJ0aXRsZSI6IktlZXAgSXQgTW92aW5nIiwiZGVzYyI6Ik9uZSBkZXZlbG9wZXIgYnVpbHQgYSB0b29sIHRoYXQgYXV0by1nZW5lcmF0ZXNcbm44biBub2RlcyBmcm9tIGFueSBPcGVuQVBJIHNwZWMuXG5cbllvdXIgZG9uYXRpb24gZnVuZHMgbmV3IGZlYXR1cmVzLCBtb3JlIEFQSSBzdXBwb3J0LFxuYW5kIGJldHRlciB0b29saW5nIGZvciBldmVyeSBkZXZlbG9wZXIgYWZ0ZXIgeW91LiIsInRhcmdldCI6NTAwMCwiYWRkcmVzc2VzIjp7ImV0aGVyZXVtIjoiMHhmMDU1NWQ0MGRiRkI0ZTNCZjA3MDQ0MjgyQjc4RjJmRTFmNTFFZjcyIiwic29sYW5hIjoiNlpEVk5BYmpZZExEcXo4cGt3VUNHYllaNVV3QlFranB0QzU1Wk5vTFcybVUifSwiZGlzY29yZCI6Imh0dHBzOi8vZGlzY29yZC5nZy9wdERaOGU0aDkzIn0)
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## License
|
|
94
|
+
|
|
95
|
+
MIT © [kelvinzer0](https://github.com/n8n-code)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IAuthenticateGeneric, Icon, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class ZapperApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
icon: Icon;
|
|
6
|
+
documentationUrl: string;
|
|
7
|
+
properties: INodeProperties[];
|
|
8
|
+
authenticate: IAuthenticateGeneric;
|
|
9
|
+
test: ICredentialTestRequest;
|
|
10
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ZapperApi = void 0;
|
|
4
|
+
class ZapperApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'N8nDevZapperApi';
|
|
7
|
+
this.displayName = 'zapper API';
|
|
8
|
+
this.icon = { light: 'file:../nodes/Zapper/zapper.svg', dark: 'file:../nodes/Zapper/zapper.dark.svg' };
|
|
9
|
+
this.documentationUrl = '';
|
|
10
|
+
this.properties = [
|
|
11
|
+
{
|
|
12
|
+
displayName: 'Base URL',
|
|
13
|
+
name: 'url',
|
|
14
|
+
type: 'string',
|
|
15
|
+
default: '',
|
|
16
|
+
required: true,
|
|
17
|
+
placeholder: 'https://api.example.com',
|
|
18
|
+
description: 'The base URL of your zapper API server',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
displayName: 'API Key',
|
|
22
|
+
name: 'apiKey',
|
|
23
|
+
type: 'string',
|
|
24
|
+
typeOptions: { password: true },
|
|
25
|
+
default: '',
|
|
26
|
+
required: true,
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"displayName": "❤️ Keep It Moving: One developer built a tool that auto-generates n8n nodes from any OpenAPI spec. Your donation funds new features, more API support, and better tooling for every developer after you. <a href=\"https://n8n-code.github.io/membership/#/eyJ0aXRsZSI6IktlZXAgSXQgTW92aW5nIiwiZGVzYyI6Ik9uZSBkZXZlbG9wZXIgYnVpbHQgYSB0b29sIHRoYXQgYXV0by1nZW5lcmF0ZXNcbm44biBub2RlcyBmcm9tIGFueSBPcGVuQVBJIHNwZWMuXG5cbllvdXIgZG9uYXRpb24gZnVuZHMgbmV3IGZlYXR1cmVzLCBtb3JlIEFQSSBzdXBwb3J0LFxuYW5kIGJldHRlciB0b29saW5nIGZvciBldmVyeSBkZXZlbG9wZXIgYWZ0ZXIgeW91LiIsInRhcmdldCI6NTAwMCwiYWRkcmVzc2VzIjp7ImV0aGVyZXVtIjoiMHhmMDU1NWQ0MGRiRkI0ZTNCZjA3MDQ0MjgyQjc4RjJmRTFmNTFFZjcyIiwic29sYW5hIjoiNlpEVk5BYmpZZExEcXo4cGt3VUNHYllaNVV3QlFranB0QzU1Wk5vTFcybVUifSwiZGlzY29yZCI6Imh0dHBzOi8vZGlzY29yZC5nZy9wdERaOGU0aDkzIn0\" target=\"_blank\">☕ Buy me a coffee</a>",
|
|
30
|
+
"name": "n8nCodeNotice",
|
|
31
|
+
"type": "notice",
|
|
32
|
+
"default": "",
|
|
33
|
+
"displayOptions": {
|
|
34
|
+
"show": {}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
];
|
|
38
|
+
this.authenticate = {
|
|
39
|
+
type: 'generic',
|
|
40
|
+
properties: {
|
|
41
|
+
headers: {
|
|
42
|
+
Authorization: '=Bearer {{$credentials.apiKey}}',
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
this.test = {
|
|
47
|
+
request: {
|
|
48
|
+
baseURL: '={{$credentials.url}}',
|
|
49
|
+
url: '/',
|
|
50
|
+
method: 'GET',
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.ZapperApi = ZapperApi;
|
|
56
|
+
//# sourceMappingURL=ZapperApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ZapperApi.credentials.js","sourceRoot":"","sources":["../../credentials/ZapperApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,SAAS;IAAtB;QACC,SAAI,GAAG,iBAAiB,CAAC;QAEzB,gBAAW,GAAG,YAAY,CAAC;QAE3B,SAAI,GAAS,EAAE,KAAK,EAAE,iCAAiC,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC;QAExG,qBAAgB,GAAG,EAAE,CAAC;QAEtB,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,yBAAyB;gBACtC,WAAW,EAAE,wCAAwC;aACrD;YACD;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,aAAa,EAAE,k0BAAk0B;gBACj1B,MAAM,EAAE,eAAe;gBACvB,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,EAAE;gBACb,gBAAgB,EAAE;oBACjB,MAAM,EAAE,EAAE;iBACV;aACD;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,iCAAiC;iBAChD;aACD;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,uBAAuB;gBAChC,GAAG,EAAE,GAAG;gBACR,MAAM,EAAE,KAAK;aACb;SACD,CAAC;IACH,CAAC;CAAA;AAtDD,8BAsDC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Zapper = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const zapper_tools_1 = require("./resources/zapper-tools");
|
|
6
|
+
class Zapper {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.description = {
|
|
9
|
+
displayName: 'zapper',
|
|
10
|
+
name: 'N8nDevZapper',
|
|
11
|
+
icon: { light: 'file:./zapper.svg', dark: 'file:./zapper.dark.svg' },
|
|
12
|
+
group: ['input'],
|
|
13
|
+
version: 1,
|
|
14
|
+
subtitle: '={{\$parameter["operation"] + ": " + \$parameter["resource"]}}',
|
|
15
|
+
description: 'Zapper blockchain portfolio tracker and DeFi dashboard for managing assets across 60+ chains with real-time prices',
|
|
16
|
+
defaults: { name: 'zapper' },
|
|
17
|
+
usableAsTool: true,
|
|
18
|
+
inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
19
|
+
outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
|
|
20
|
+
credentials: [
|
|
21
|
+
{
|
|
22
|
+
name: 'N8nDevZapperApi',
|
|
23
|
+
required: true,
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
requestDefaults: {
|
|
27
|
+
baseURL: '={{\$credentials.url}}',
|
|
28
|
+
headers: {
|
|
29
|
+
Accept: 'application/json',
|
|
30
|
+
'Content-Type': 'application/json',
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
properties: [
|
|
34
|
+
{
|
|
35
|
+
"displayName": "Resource",
|
|
36
|
+
"name": "resource",
|
|
37
|
+
"type": "options",
|
|
38
|
+
"noDataExpression": true,
|
|
39
|
+
"options": [
|
|
40
|
+
{
|
|
41
|
+
"name": "Zapper Tools",
|
|
42
|
+
"value": "Zapper Tools",
|
|
43
|
+
"description": ""
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"default": ""
|
|
47
|
+
},
|
|
48
|
+
...zapper_tools_1.zapperToolsDescription
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.Zapper = Zapper;
|
|
54
|
+
//# sourceMappingURL=Zapper.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Zapper.node.js","sourceRoot":"","sources":["../../../nodes/Zapper/Zapper.node.ts"],"names":[],"mappings":";;;AAAA,+CAA8F;AAC9F,2DAAkE;AAElE,MAAa,MAAM;IAAnB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,QAAQ;YACrB,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,wBAAwB,EAAE;YACpE,KAAK,EAAE,CAAC,OAAO,CAAC;YAChB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,gEAAgE;YAC1E,WAAW,EAAE,oHAAoH;YACjI,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5B,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,iBAAiB;oBACvB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,eAAe,EAAE;gBAChB,OAAO,EAAE,wBAAwB;gBACjC,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;aACD;YACD,UAAU,EAAE;gBACZ;oBACC,aAAa,EAAE,UAAU;oBACzB,MAAM,EAAE,UAAU;oBAClB,MAAM,EAAE,SAAS;oBACjB,kBAAkB,EAAE,IAAI;oBACxB,SAAS,EAAE;wBACV;4BACC,MAAM,EAAE,cAAc;4BACtB,OAAO,EAAE,cAAc;4BACvB,aAAa,EAAE,EAAE;yBACjB;qBACD;oBACD,SAAS,EAAE,EAAE;iBACb;gBACD,GAAG,qCAAsB;aACxB;SACD,CAAC;IACH,CAAC;CAAA;AA5CD,wBA4CC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"node": "N8nDevZapper",
|
|
3
|
+
"nodeVersion": "1.0",
|
|
4
|
+
"codexVersion": "1.0",
|
|
5
|
+
"categories": [
|
|
6
|
+
"Development"
|
|
7
|
+
],
|
|
8
|
+
"resources": {
|
|
9
|
+
"primaryDocumentation": [
|
|
10
|
+
{
|
|
11
|
+
"url": "https://github.com/n8n-code/n8n-nodes-zapper"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"credentialDocumentation": [
|
|
15
|
+
{
|
|
16
|
+
"url": "https://github.com/n8n-code/n8n-nodes-zapper?tab=readme-ov-file#credentials"
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { zapperToolsDescription } from './zapper-tools';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.zapperToolsDescription = void 0;
|
|
4
|
+
var zapper_tools_1 = require("./zapper-tools");
|
|
5
|
+
Object.defineProperty(exports, "zapperToolsDescription", { enumerable: true, get: function () { return zapper_tools_1.zapperToolsDescription; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../nodes/Zapper/resources/index.ts"],"names":[],"mappings":";;;AAAA,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA"}
|