n8n-nodes-aimfox 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.
Files changed (88) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +116 -0
  3. package/dist/credentials/AimfoxApi.credentials.d.ts +8 -0
  4. package/dist/credentials/AimfoxApi.credentials.js +29 -0
  5. package/dist/credentials/AimfoxApi.credentials.js.map +1 -0
  6. package/dist/credentials/AimfoxOAuth2Api.credentials.d.ts +8 -0
  7. package/dist/credentials/AimfoxOAuth2Api.credentials.js +69 -0
  8. package/dist/credentials/AimfoxOAuth2Api.credentials.js.map +1 -0
  9. package/dist/credentials/CityWeatherApi.credentials.d.ts +8 -0
  10. package/dist/credentials/CityWeatherApi.credentials.js +28 -0
  11. package/dist/credentials/CityWeatherApi.credentials.js.map +1 -0
  12. package/dist/nodes/Aimfox/Aimfox.node.d.ts +4 -0
  13. package/dist/nodes/Aimfox/Aimfox.node.js +38 -0
  14. package/dist/nodes/Aimfox/Aimfox.node.js.map +1 -0
  15. package/dist/nodes/Aimfox/Aimfox.node.json +23 -0
  16. package/dist/nodes/Aimfox/aimfox.svg +3 -0
  17. package/dist/nodes/Aimfox/properties/account/operations.d.ts +2 -0
  18. package/dist/nodes/Aimfox/properties/account/operations.js +33 -0
  19. package/dist/nodes/Aimfox/properties/account/operations.js.map +1 -0
  20. package/dist/nodes/Aimfox/properties/blacklist/fields.d.ts +2 -0
  21. package/dist/nodes/Aimfox/properties/blacklist/fields.js +21 -0
  22. package/dist/nodes/Aimfox/properties/blacklist/fields.js.map +1 -0
  23. package/dist/nodes/Aimfox/properties/blacklist/operations.d.ts +2 -0
  24. package/dist/nodes/Aimfox/properties/blacklist/operations.js +63 -0
  25. package/dist/nodes/Aimfox/properties/blacklist/operations.js.map +1 -0
  26. package/dist/nodes/Aimfox/properties/campaign/fields.d.ts +2 -0
  27. package/dist/nodes/Aimfox/properties/campaign/fields.js +82 -0
  28. package/dist/nodes/Aimfox/properties/campaign/fields.js.map +1 -0
  29. package/dist/nodes/Aimfox/properties/campaign/operations.d.ts +2 -0
  30. package/dist/nodes/Aimfox/properties/campaign/operations.js +126 -0
  31. package/dist/nodes/Aimfox/properties/campaign/operations.js.map +1 -0
  32. package/dist/nodes/Aimfox/properties/conversation/fields.d.ts +2 -0
  33. package/dist/nodes/Aimfox/properties/conversation/fields.js +72 -0
  34. package/dist/nodes/Aimfox/properties/conversation/fields.js.map +1 -0
  35. package/dist/nodes/Aimfox/properties/conversation/operations.d.ts +2 -0
  36. package/dist/nodes/Aimfox/properties/conversation/operations.js +115 -0
  37. package/dist/nodes/Aimfox/properties/conversation/operations.js.map +1 -0
  38. package/dist/nodes/Aimfox/properties/index.d.ts +2 -0
  39. package/dist/nodes/Aimfox/properties/index.js +72 -0
  40. package/dist/nodes/Aimfox/properties/index.js.map +1 -0
  41. package/dist/nodes/Aimfox/properties/label/fields.d.ts +2 -0
  42. package/dist/nodes/Aimfox/properties/label/fields.js +58 -0
  43. package/dist/nodes/Aimfox/properties/label/fields.js.map +1 -0
  44. package/dist/nodes/Aimfox/properties/label/operations.d.ts +2 -0
  45. package/dist/nodes/Aimfox/properties/label/operations.js +52 -0
  46. package/dist/nodes/Aimfox/properties/label/operations.js.map +1 -0
  47. package/dist/nodes/Aimfox/properties/lead/fields.d.ts +2 -0
  48. package/dist/nodes/Aimfox/properties/lead/fields.js +21 -0
  49. package/dist/nodes/Aimfox/properties/lead/fields.js.map +1 -0
  50. package/dist/nodes/Aimfox/properties/lead/operations.d.ts +2 -0
  51. package/dist/nodes/Aimfox/properties/lead/operations.js +96 -0
  52. package/dist/nodes/Aimfox/properties/lead/operations.js.map +1 -0
  53. package/dist/nodes/Aimfox/properties/note/fields.d.ts +2 -0
  54. package/dist/nodes/Aimfox/properties/note/fields.js +21 -0
  55. package/dist/nodes/Aimfox/properties/note/fields.js.map +1 -0
  56. package/dist/nodes/Aimfox/properties/template/fields.d.ts +2 -0
  57. package/dist/nodes/Aimfox/properties/template/fields.js +99 -0
  58. package/dist/nodes/Aimfox/properties/template/fields.js.map +1 -0
  59. package/dist/nodes/Aimfox/properties/template/operations.d.ts +2 -0
  60. package/dist/nodes/Aimfox/properties/template/operations.js +85 -0
  61. package/dist/nodes/Aimfox/properties/template/operations.js.map +1 -0
  62. package/dist/nodes/Aimfox/properties/workspace/fields.d.ts +2 -0
  63. package/dist/nodes/Aimfox/properties/workspace/fields.js +41 -0
  64. package/dist/nodes/Aimfox/properties/workspace/fields.js.map +1 -0
  65. package/dist/nodes/AimfoxTrigger/AimfoxTrigger.node.d.ts +12 -0
  66. package/dist/nodes/AimfoxTrigger/AimfoxTrigger.node.js +131 -0
  67. package/dist/nodes/AimfoxTrigger/AimfoxTrigger.node.js.map +1 -0
  68. package/dist/nodes/AimfoxTrigger/AimfoxTrigger.node.json +17 -0
  69. package/dist/nodes/AimfoxTrigger/GenericFunctions.d.ts +2 -0
  70. package/dist/nodes/AimfoxTrigger/GenericFunctions.js +31 -0
  71. package/dist/nodes/AimfoxTrigger/GenericFunctions.js.map +1 -0
  72. package/dist/nodes/AimfoxTrigger/aimfox.svg +3 -0
  73. package/dist/nodes/AimfoxTrigger/properties/index.d.ts +2 -0
  74. package/dist/nodes/AimfoxTrigger/properties/index.js +58 -0
  75. package/dist/nodes/AimfoxTrigger/properties/index.js.map +1 -0
  76. package/dist/nodes/AimfoxTrigger/properties/workspace/fields.d.ts +2 -0
  77. package/dist/nodes/AimfoxTrigger/properties/workspace/fields.js +41 -0
  78. package/dist/nodes/AimfoxTrigger/properties/workspace/fields.js.map +1 -0
  79. package/dist/nodes/CityWeather/CityWeather.node.d.ts +4 -0
  80. package/dist/nodes/CityWeather/CityWeather.node.js +892 -0
  81. package/dist/nodes/CityWeather/CityWeather.node.js.map +1 -0
  82. package/dist/nodes/CityWeather/CityWeather.node.json +23 -0
  83. package/dist/nodes/CityWeather/aimfox.svg +3 -0
  84. package/dist/nodes/CityWeather/openweather.svg +3 -0
  85. package/dist/package.json +51 -0
  86. package/dist/tsconfig.tsbuildinfo +1 -0
  87. package/index.js +0 -0
  88. package/package.json +51 -0
package/LICENSE.md ADDED
@@ -0,0 +1,19 @@
1
+ Copyright 2022 n8n
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,116 @@
1
+ ![Banner image](https://user-images.githubusercontent.com/10284570/173569848-c624317f-42b1-45a6-ab09-f0ea3c247648.png)
2
+
3
+ # n8n-nodes-aimfox
4
+
5
+ This is an n8n community node. It lets you use Aimfox in your n8n workflows.
6
+
7
+ Aimfox is a LinkedIn automation platform that helps businesses automate their LinkedIn outreach, lead generation, and social selling activities.
8
+
9
+ [n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.
10
+
11
+ [Installation](#installation)
12
+ [Operations](#operations)
13
+ [Credentials](#credentials)
14
+ [Compatibility](#compatibility)
15
+ [Usage](#usage)
16
+ [Resources](#resources)
17
+
18
+ ## Installation
19
+
20
+ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
21
+
22
+ ## Operations
23
+
24
+ This node supports the following operations:
25
+
26
+ ### Account
27
+ - **List Accounts**: List all accounts in the workspace
28
+
29
+ ### Blacklist
30
+ - **List Blacklisted Accounts**: List all blacklisted accounts in the workspace
31
+ - **Add Profile to Blacklist**: Add profile to the blacklist using the profile URN
32
+ - **Remove Profile From Blacklist**: Remove profile from the blacklist using the profile URN
33
+
34
+ ### Campaign
35
+ - **Add Profile to Campaign**: Add profile to the selected campaign
36
+ - **Add Profile to Campaign with Custom Variables**: Add profile to the selected campaign with custom variables
37
+ - **Get Campaign**: Get a specific campaign by ID
38
+ - **List Campaigns**: List all campaigns in the workspace
39
+ - **Pause**: Pause a running campaign
40
+ - **Resume**: Resume a paused campaign
41
+
42
+ ### Conversation
43
+ - **Get Conversation**: Get a specific conversation by URN
44
+ - **Get Lead Conversation**: Get a specific lead conversation URN
45
+ - **List Conversations**: List all conversations for the selected workspace
46
+ - **Mark Conversation As Read**: Mark an existing conversation as read
47
+ - **Send Message To Conversation**: Send a message to an existing conversation
48
+ - **Start Conversation**: Start a new conversation with the lead
49
+
50
+ ### Label
51
+ - **List Labels**: List all labels for the selected workspace
52
+ - **Add Label**: Add a new label to the selected workspace
53
+
54
+ ### Lead
55
+ - **Add Label To Lead**: Add a new label to the selected lead
56
+ - **Add Note To Lead**: Add a new note to the selected lead
57
+ - **Get Lead**: Get a specific lead by ID
58
+ - **List Recent Leads**: List recent leads for the selected workspace
59
+ - **Remove Label From Lead**: Remove a label from the selected lead
60
+
61
+ ### Templates
62
+ - **List Templates**: List all templates in the selected workspace
63
+ - **Get Template**: Get a specific template by ID
64
+ - **Create Template**: Create a new template in the selected workspace
65
+ - **Remove Template**: Remove a template from the selected workspace
66
+
67
+ ## Triggers
68
+
69
+ This node supports the following triggers:
70
+ - **Account Logged In**: This event triggers when a LinkedIn profile successfully logs into the system.
71
+ - **Account Logged Out**: This event triggers when a LinkedIn profile is logged out of the system.
72
+ - **Connect Accepted**: This event triggers when a LinkedIn connection request is accepted, establishing a new connection between profiles.
73
+ - **Connect Sent**: This event triggers when a LinkedIn connection request is successfully sent.
74
+ - **Inmail Reply**: This event triggers when a user replies to a LinkedIn Inmail message, initiating a conversation.
75
+ - **Inmail**: This event triggers when a LinkedIn Inmail message is successfully sent.
76
+ - **Message Request**: This event triggers when a message request is sent.
77
+ - **Message Sent**: This event triggers when a message is successfully sent to a LinkedIn profile.
78
+ - **New Connection**: This event triggers when a new connection is acquired through Aimfox, indicating the successful addition of a LinkedIn connection.
79
+ - **New Reply**: This event triggers when a user replies to a LinkedIn message, initiating a conversation.
80
+ - **Profile Viewed**: This event triggers when a LinkedIn profile is viewed.
81
+
82
+ ## Credentials
83
+
84
+ To use this node, you need to authenticate with Aimfox using an API key.
85
+
86
+ ### Prerequisites
87
+ 1. Sign up for an Aimfox account at [https://aimfox.com](https://aimfox.com)
88
+ 2. Generate an API key from your Aimfox dashboard
89
+
90
+ ### Setup
91
+ 1. In n8n, go to **Settings** > **Credentials**
92
+ 2. Click **Create New Credential**
93
+ 3. Search for "Aimfox API" and select it
94
+ 4. Enter your Aimfox API key
95
+ 5. Click **Save**
96
+
97
+ The API key will be used to authenticate all requests to the Aimfox API with Bearer token authentication.
98
+
99
+ ## Compatibility
100
+
101
+ - Minimum n8n version: 0.198.0
102
+ - Tested with n8n versions: 0.198.0+
103
+
104
+ ## Usage
105
+
106
+ ### Basic Workflow Example
107
+ 1. Start with a **Manual Trigger** or **Schedule Trigger**
108
+ 2. Add the **Aimfox** node
109
+ 3. Select your workspace first (required for most operations)
110
+ 4. Choose your desired operation (Account, Campaign, Profile, or Workspace)
111
+ 5. Configure the specific operation parameters
112
+
113
+ ## Resources
114
+
115
+ * [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
116
+ * [Aimfox API documentation](https://docs.aimfox.com)
@@ -0,0 +1,8 @@
1
+ import { IAuthenticateGeneric, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class AimfoxApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ properties: INodeProperties[];
7
+ authenticate: IAuthenticateGeneric;
8
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AimfoxApi = void 0;
4
+ class AimfoxApi {
5
+ constructor() {
6
+ this.name = 'aimfoxApi';
7
+ this.displayName = 'Aimfox API';
8
+ this.documentationUrl = 'https://docs.aimfox.com';
9
+ this.properties = [
10
+ {
11
+ displayName: 'API Key',
12
+ name: 'apiKey',
13
+ type: 'string',
14
+ typeOptions: { password: true },
15
+ default: '',
16
+ },
17
+ ];
18
+ this.authenticate = {
19
+ type: 'generic',
20
+ properties: {
21
+ headers: {
22
+ Authorization: '={{"Bearer " + $credentials.apiKey}}'
23
+ },
24
+ },
25
+ };
26
+ }
27
+ }
28
+ exports.AimfoxApi = AimfoxApi;
29
+ //# sourceMappingURL=AimfoxApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AimfoxApi.credentials.js","sourceRoot":"","sources":["../../credentials/AimfoxApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAAtB;QACC,SAAI,GAAG,WAAW,CAAC;QACnB,gBAAW,GAAG,YAAY,CAAC;QAC3B,qBAAgB,GACf,yBAAyB,CAAC;QAC3B,eAAU,GAAsB;YAC/B;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;aACX;SACD,CAAC;QACF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,sCAAsC;iBACrD;aACD;SACD,CAAC;IACH,CAAC;CAAA;AAtBD,8BAsBC"}
@@ -0,0 +1,8 @@
1
+ import type { ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class AimfoxOAuth2Api implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ extends: string[];
7
+ properties: INodeProperties[];
8
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AimfoxOAuth2Api = void 0;
4
+ class AimfoxOAuth2Api {
5
+ constructor() {
6
+ this.name = 'aimfoxOAuth2Api';
7
+ this.displayName = 'Aimfox OAuth2 API';
8
+ this.documentationUrl = 'https://docs.n8n.io/integrations/creating-nodes/build/declarative-style-node/';
9
+ this.extends = ['oAuth2Api'];
10
+ this.properties = [
11
+ {
12
+ displayName: 'Grant Type',
13
+ name: 'grantType',
14
+ type: 'hidden',
15
+ default: 'authorizationCode',
16
+ },
17
+ {
18
+ displayName: 'Authorization URL',
19
+ name: 'authUrl',
20
+ type: 'hidden',
21
+ default: 'https://id.aimfox.com/realms/aimfox-prod/protocol/openid-connect/auth',
22
+ required: true,
23
+ },
24
+ {
25
+ displayName: 'Access Token URL',
26
+ name: 'accessTokenUrl',
27
+ type: 'hidden',
28
+ default: 'https://id.aimfox.com/realms/aimfox-prod/protocol/openid-connect/token',
29
+ required: true,
30
+ },
31
+ {
32
+ displayName: 'Client ID',
33
+ name: 'clientId',
34
+ type: 'hidden',
35
+ default: 'test-client-id',
36
+ required: true,
37
+ },
38
+ {
39
+ displayName: 'Client Secret',
40
+ name: 'clientSecret',
41
+ type: 'hidden',
42
+ default: 'test-client-secret',
43
+ required: true,
44
+ },
45
+ {
46
+ displayName: 'Scope',
47
+ name: 'scope',
48
+ type: 'hidden',
49
+ default: '',
50
+ },
51
+ {
52
+ displayName: 'Auth URI Query Parameters',
53
+ name: 'authQueryParameters',
54
+ type: 'hidden',
55
+ default: '',
56
+ description: 'For some services additional query parameters have to be set which can be defined here',
57
+ placeholder: '',
58
+ },
59
+ {
60
+ displayName: 'Authentication',
61
+ name: 'authentication',
62
+ type: 'hidden',
63
+ default: 'body',
64
+ },
65
+ ];
66
+ }
67
+ }
68
+ exports.AimfoxOAuth2Api = AimfoxOAuth2Api;
69
+ //# sourceMappingURL=AimfoxOAuth2Api.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AimfoxOAuth2Api.credentials.js","sourceRoot":"","sources":["../../credentials/AimfoxOAuth2Api.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAe;IAA5B;QACC,SAAI,GAAG,iBAAiB,CAAC;QAEzB,gBAAW,GAAG,mBAAmB,CAAC;QAElC,qBAAgB,GACf,+EAA+E,CAAC;QAEjF,YAAO,GAAG,CAAC,WAAW,CAAC,CAAC;QAExB,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,YAAY;gBACzB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,mBAAmB;aAC5B;YACD;gBACC,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,uEAAuE;gBAChF,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,kBAAkB;gBAC/B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,wEAAwE;gBACjF,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,gBAAgB;gBACzB,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,oBAAoB;gBAC7B,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,OAAO;gBACpB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;aACX;YACD;gBACC,WAAW,EAAE,2BAA2B;gBACxC,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EACV,wFAAwF;gBACzF,WAAW,EAAE,EAAE;aACf;YACD;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,MAAM;aACf;SACD,CAAC;IACH,CAAC;CAAA;AAnED,0CAmEC"}
@@ -0,0 +1,8 @@
1
+ import { IAuthenticateGeneric, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class CityWeatherApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ properties: INodeProperties[];
7
+ authenticate: IAuthenticateGeneric;
8
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CityWeatherApi = void 0;
4
+ class CityWeatherApi {
5
+ constructor() {
6
+ this.name = 'CityWeatherApi';
7
+ this.displayName = 'City Weather API';
8
+ this.documentationUrl = 'https://docs.n8n.io/integrations/creating-nodes/build/declarative-style-node/';
9
+ this.properties = [
10
+ {
11
+ displayName: 'API Key',
12
+ name: 'apiKey',
13
+ type: 'string',
14
+ default: '',
15
+ },
16
+ ];
17
+ this.authenticate = {
18
+ type: 'generic',
19
+ properties: {
20
+ qs: {
21
+ 'appid': '={{$credentials.apiKey}}'
22
+ }
23
+ },
24
+ };
25
+ }
26
+ }
27
+ exports.CityWeatherApi = CityWeatherApi;
28
+ //# sourceMappingURL=CityWeatherApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CityWeatherApi.credentials.js","sourceRoot":"","sources":["../../credentials/CityWeatherApi.credentials.ts"],"names":[],"mappings":";;;AAMA,MAAa,cAAc;IAA3B;QACC,SAAI,GAAG,gBAAgB,CAAC;QACxB,gBAAW,GAAG,kBAAkB,CAAC;QAGjC,qBAAgB,GAAG,+EAA+E,CAAC;QACnG,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;aACX;SACD,CAAC;QACF,iBAAY,GAAG;YACd,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,EAAE,EAAE;oBACH,OAAO,EAAE,0BAA0B;iBACnC;aACD;SACuB,CAAC;IAC3B,CAAC;CAAA;AAtBD,wCAsBC"}
@@ -0,0 +1,4 @@
1
+ import { INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class Aimfox implements INodeType {
3
+ description: INodeTypeDescription;
4
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Aimfox = void 0;
4
+ const properties_1 = require("./properties");
5
+ class Aimfox {
6
+ constructor() {
7
+ this.description = {
8
+ displayName: 'Aimfox',
9
+ name: 'aimfox',
10
+ icon: 'file:aimfox.svg',
11
+ group: ['transform'],
12
+ version: 1,
13
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
14
+ description: 'Interact with Aimfox application',
15
+ defaults: {
16
+ name: 'Aimfox',
17
+ },
18
+ inputs: ["main"],
19
+ outputs: ["main"],
20
+ credentials: [
21
+ {
22
+ name: 'aimfoxApi',
23
+ required: true,
24
+ },
25
+ ],
26
+ requestDefaults: {
27
+ baseURL: 'https://api.aimfox.com/api/v2',
28
+ headers: {
29
+ Accept: 'application/json',
30
+ 'Content-Type': 'application/json',
31
+ },
32
+ },
33
+ properties: properties_1.aimfoxNodeProperties,
34
+ };
35
+ }
36
+ }
37
+ exports.Aimfox = Aimfox;
38
+ //# sourceMappingURL=Aimfox.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Aimfox.node.js","sourceRoot":"","sources":["../../../nodes/Aimfox/Aimfox.node.ts"],"names":[],"mappings":";;;AACA,6CAAoD;AAEpD,MAAa,MAAM;IAAnB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,QAAQ;YACrB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE;gBACT,IAAI,EAAE,QAAQ;aACd;YACD,MAAM,EAAE,QAAyB;YACjC,OAAO,EAAE,QAAyB;YAClC,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,WAAW;oBACjB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,eAAe,EAAE;gBAChB,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;aACD;YACD,UAAU,EAAE,iCAAoB;SAChC,CAAC;IACH,CAAC;CAAA;AA7BD,wBA6BC"}
@@ -0,0 +1,23 @@
1
+ {
2
+ "node": "n8n-nodes-base.Aimfox",
3
+ "nodeVersion": "1.0",
4
+ "codexVersion": "1.0",
5
+ "categories": [
6
+ "Development"
7
+ ],
8
+ "subcategories": {
9
+ "Development": ["API"]
10
+ },
11
+ "resources": {
12
+ "credentialDocumentation": [
13
+ {
14
+ "url": "https://docs.aimfox.com"
15
+ }
16
+ ],
17
+ "primaryDocumentation": [
18
+ {
19
+ "url": "https://docs.aimfox.com"
20
+ }
21
+ ]
22
+ }
23
+ }
@@ -0,0 +1,3 @@
1
+ <svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M326.279 335.762L377.997 431.82C379.242 434.111 377.565 436.926 374.932 436.926H153.503C150.869 436.926 149.194 434.111 150.439 431.82L200.336 339.198C201.581 336.907 199.905 334.092 197.271 334.092H52.9886C49.7801 334.092 48.2957 330.131 50.6901 328.032L334.467 75.9809C337.389 73.4041 341.698 76.7921 339.83 80.2279L246.26 253.924C244.441 257.36 248.75 260.748 251.623 258.171L456.675 76.0286C459.596 73.4518 463.905 76.8398 462.037 80.2756L326.183 332.517C325.608 333.519 325.608 334.76 326.183 335.81L326.279 335.762Z" fill="#FF4D00"/>
3
+ </svg>
@@ -0,0 +1,2 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const accountOperations: INodeProperties;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.accountOperations = void 0;
4
+ exports.accountOperations = {
5
+ displayName: 'Operation',
6
+ name: 'operation',
7
+ type: 'options',
8
+ noDataExpression: true,
9
+ displayOptions: {
10
+ show: {
11
+ resource: ['account'],
12
+ },
13
+ },
14
+ options: [
15
+ {
16
+ name: 'List Accounts',
17
+ value: 'listAccounts',
18
+ action: 'List accounts',
19
+ description: 'List all accounts in the workspace',
20
+ routing: {
21
+ request: {
22
+ method: 'GET',
23
+ url: '/accounts',
24
+ headers: {
25
+ Authorization: '={{"Bearer " + $credentials.aimfoxApi.apiKey}}',
26
+ },
27
+ },
28
+ },
29
+ },
30
+ ],
31
+ default: 'listAccounts',
32
+ };
33
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../../../nodes/Aimfox/properties/account/operations.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAoB;IACjD,WAAW,EAAE,WAAW;IACxB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,SAAS;IACf,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE;QACf,IAAI,EAAE;YACL,QAAQ,EAAE,CAAC,SAAS,CAAC;SACrB;KACD;IACD,OAAO,EAAE;QACR;YACC,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,cAAc;YACrB,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,oCAAoC;YACjD,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,KAAK;oBACb,GAAG,EAAE,WAAW;oBAChB,OAAO,EAAE;wBACR,aAAa,EAAE,gDAAgD;qBAC/D;iBACD;aACD;SACD;KACD;IACD,OAAO,EAAE,cAAc;CACvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const blacklistFields: INodeProperties[];
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.blacklistFields = void 0;
4
+ exports.blacklistFields = [
5
+ {
6
+ displayName: 'Profile URN',
7
+ name: 'profileUrn',
8
+ type: 'string',
9
+ displayOptions: {
10
+ show: {
11
+ resource: ['blacklist'],
12
+ operation: ['addProfileToBlacklist', 'removeProfileFromBlacklist'],
13
+ },
14
+ },
15
+ default: '',
16
+ placeholder: 'ACoAAAK-hCcB6RvA71OCuRk-JHYpV6FFKIjbxpY',
17
+ description: 'The LinkedIn URN of the profile to add to the blacklist',
18
+ required: true,
19
+ },
20
+ ];
21
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../nodes/Aimfox/properties/blacklist/fields.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAsB;IACjD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,QAAQ;QACd,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,WAAW,CAAC;gBACvB,SAAS,EAAE,CAAC,uBAAuB,EAAE,4BAA4B,CAAC;aAClE;SACD;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,yCAAyC;QACtD,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,IAAI;KACd;CACD,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const blacklistOperations: INodeProperties;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.blacklistOperations = void 0;
4
+ exports.blacklistOperations = {
5
+ displayName: 'Operation',
6
+ name: 'operation',
7
+ type: 'options',
8
+ noDataExpression: true,
9
+ displayOptions: {
10
+ show: {
11
+ resource: ['blacklist'],
12
+ },
13
+ },
14
+ options: [
15
+ {
16
+ name: 'List Blacklisted Accounts',
17
+ value: 'listBlacklist',
18
+ action: 'List blacklist',
19
+ description: 'List all blacklisted accounts in the workspace',
20
+ routing: {
21
+ request: {
22
+ method: 'GET',
23
+ url: '/blacklist',
24
+ headers: {
25
+ Authorization: '={{"Bearer " + $credentials.aimfoxApi.apiKey}}',
26
+ },
27
+ },
28
+ },
29
+ },
30
+ {
31
+ name: 'Add Profile to Blacklist',
32
+ value: 'addProfileToBlacklist',
33
+ action: 'Add profile to blacklist',
34
+ description: 'Add profile to the blacklist using the profile URN',
35
+ routing: {
36
+ request: {
37
+ method: 'POST',
38
+ url: '=/blacklist/{{$parameter["profileUrn"]}}',
39
+ headers: {
40
+ Authorization: '={{"Bearer " + $credentials.aimfoxApi.apiKey}}',
41
+ },
42
+ },
43
+ },
44
+ },
45
+ {
46
+ name: 'Remove Profile From Blacklist',
47
+ value: 'removeProfileFromBlacklist',
48
+ action: 'Remove profile from blacklist',
49
+ description: 'Remove profile from the blacklist using the profile URN',
50
+ routing: {
51
+ request: {
52
+ method: 'DELETE',
53
+ url: '=/blacklist/{{$parameter["profileUrn"]}}',
54
+ headers: {
55
+ Authorization: '={{"Bearer " + $credentials.aimfoxApi.apiKey}}',
56
+ },
57
+ },
58
+ },
59
+ },
60
+ ],
61
+ default: 'listBlacklist',
62
+ };
63
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../../../nodes/Aimfox/properties/blacklist/operations.ts"],"names":[],"mappings":";;;AAEa,QAAA,mBAAmB,GAAoB;IACnD,WAAW,EAAE,WAAW;IACxB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,SAAS;IACf,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE;QACf,IAAI,EAAE;YACL,QAAQ,EAAE,CAAC,WAAW,CAAC;SACvB;KACD;IACD,OAAO,EAAE;QACR;YACC,IAAI,EAAE,2BAA2B;YACjC,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE,gBAAgB;YACxB,WAAW,EAAE,gDAAgD;YAC7D,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,KAAK;oBACb,GAAG,EAAE,YAAY;oBACjB,OAAO,EAAE;wBACR,aAAa,EAAE,gDAAgD;qBAC/D;iBACD;aACD;SACD;QACD;YACC,IAAI,EAAE,0BAA0B;YAChC,KAAK,EAAE,uBAAuB;YAC9B,MAAM,EAAE,0BAA0B;YAClC,WAAW,EAAE,oDAAoD;YACjE,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,0CAA0C;oBAC/C,OAAO,EAAE;wBACR,aAAa,EAAE,gDAAgD;qBAC/D;iBACD;aACD;SACD;QACD;YACC,IAAI,EAAE,+BAA+B;YACrC,KAAK,EAAE,4BAA4B;YACnC,MAAM,EAAE,+BAA+B;YACvC,WAAW,EAAE,yDAAyD;YACtE,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,MAAM,EAAE,QAAQ;oBAChB,GAAG,EAAE,0CAA0C;oBAC/C,OAAO,EAAE;wBACR,aAAa,EAAE,gDAAgD;qBAC/D;iBACD;aACD;SACD;KACD;IACD,OAAO,EAAE,eAAe;CACxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const campaignFields: INodeProperties[];
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.campaignFields = void 0;
4
+ exports.campaignFields = [
5
+ {
6
+ displayName: 'Campaign ID',
7
+ name: 'campaignId',
8
+ type: 'options',
9
+ required: true,
10
+ displayOptions: {
11
+ show: {
12
+ resource: ['campaign'],
13
+ operation: [
14
+ 'resumeCampaign',
15
+ 'pauseCampaign',
16
+ 'addProfileToCampaign',
17
+ 'getCampaign',
18
+ 'addProfileToCampaignWithCustomVariables',
19
+ ],
20
+ },
21
+ },
22
+ typeOptions: {
23
+ loadOptions: {
24
+ routing: {
25
+ request: {
26
+ method: 'GET',
27
+ url: '/campaigns',
28
+ },
29
+ output: {
30
+ postReceive: [
31
+ {
32
+ type: 'rootProperty',
33
+ properties: {
34
+ property: 'campaigns',
35
+ },
36
+ },
37
+ {
38
+ type: 'setKeyValue',
39
+ properties: {
40
+ name: '={{$responseItem.name}}',
41
+ value: '={{$responseItem.id}}',
42
+ },
43
+ },
44
+ ],
45
+ },
46
+ },
47
+ },
48
+ },
49
+ default: '',
50
+ description: 'Select the Aimfox campaign. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
51
+ },
52
+ {
53
+ displayName: 'Profile URL',
54
+ name: 'profileUrl',
55
+ type: 'string',
56
+ displayOptions: {
57
+ show: {
58
+ resource: ['campaign'],
59
+ operation: ['addProfileToCampaign', 'addProfileToCampaignWithCustomVariables'],
60
+ },
61
+ },
62
+ default: '',
63
+ placeholder: 'https://www.linkedin.com/in/john-doe-bb1869208/',
64
+ description: 'The LinkedIn URL of the profile to add to the campaign',
65
+ required: true,
66
+ },
67
+ {
68
+ displayName: 'Custom Variables (JSON)',
69
+ name: 'customVariables',
70
+ type: 'json',
71
+ required: true,
72
+ default: '',
73
+ description: 'Custom variables to send with the profile, in JSON format',
74
+ displayOptions: {
75
+ show: {
76
+ resource: ['campaign'],
77
+ operation: ['addProfileToCampaignWithCustomVariables'],
78
+ },
79
+ },
80
+ },
81
+ ];
82
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../../nodes/Aimfox/properties/campaign/fields.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAsB;IAChD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE;oBACV,gBAAgB;oBAChB,eAAe;oBACf,sBAAsB;oBACtB,aAAa;oBACb,yCAAyC;iBACzC;aACD;SACD;QACD,WAAW,EAAE;YACZ,WAAW,EAAE;gBACZ,OAAO,EAAE;oBACR,OAAO,EAAE;wBACR,MAAM,EAAE,KAAK;wBACb,GAAG,EAAE,YAAY;qBACjB;oBACD,MAAM,EAAE;wBACP,WAAW,EAAE;4BACZ;gCACC,IAAI,EAAE,cAAc;gCACpB,UAAU,EAAE;oCACX,QAAQ,EAAE,WAAW;iCACrB;6BACD;4BACD;gCACC,IAAI,EAAE,aAAa;gCACnB,UAAU,EAAE;oCACX,IAAI,EAAE,yBAAyB;oCAC/B,KAAK,EAAE,uBAAuB;iCAC9B;6BACD;yBACD;qBACD;iBACD;aACD;SACD;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EACV,6IAA6I;KAC9I;IACD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,QAAQ;QACd,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE,CAAC,sBAAsB,EAAE,yCAAyC,CAAC;aAC9E;SACD;QACD,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE,wDAAwD;QACrE,QAAQ,EAAE,IAAI;KACd;IACD;QACC,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,2DAA2D;QACxE,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE,CAAC,yCAAyC,CAAC;aACtD;SACD;KACD;CACD,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const campaignOperations: INodeProperties;