@inboxapp/n8n-nodes-inboxapp 0.1.2 → 0.2.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 +57 -45
- package/dist/credentials/InboxAppApi.credentials.js +2 -2
- package/dist/credentials/InboxAppApi.credentials.js.map +1 -1
- package/dist/nodes/InboxApp/InboxApp.node.js +3 -2
- package/dist/nodes/InboxApp/InboxApp.node.js.map +1 -1
- package/dist/nodes/InboxApp/InboxApp.node.json +3 -7
- package/dist/nodes/InboxApp/openapi.json +11616 -1
- package/dist/nodes/InboxApp/properties.json +2008 -829
- package/dist/package.json +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,43 +1,41 @@
|
|
|
1
1
|
# n8n-nodes-inboxapp
|
|
2
2
|
|
|
3
|
-
[n8n](https://n8n.io/) community node for [InboxApp](https://inboxapp.com)
|
|
3
|
+
[n8n](https://n8n.io/) community node for [InboxApp](https://inboxapp.com), the Social Selling CRM.
|
|
4
4
|
|
|
5
5
|
Automate your DM outreach, manage conversations, and build sales pipelines directly from n8n workflows.
|
|
6
6
|
|
|
7
7
|
 
|
|
8
8
|
|
|
9
|
+
This node uses the [InboxApp API v2](https://docs.inboxapp.com/v2/developer-api).
|
|
10
|
+
|
|
9
11
|
## Platform Support
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|----------|--------|
|
|
13
|
-
| **X (Twitter)** | ✅ Fully supported |
|
|
14
|
-
| **Instagram** | 🔜 Coming soon |
|
|
15
|
-
| **LinkedIn** | 🔜 Coming soon |
|
|
13
|
+
Every platform uses the same resources. X (Twitter) is available to every team, and a team may have others enabled. **Platforms → Platforms List** returns the platforms your team can use and what each one supports.
|
|
16
14
|
|
|
17
15
|
## What You Can Do
|
|
18
16
|
|
|
19
17
|
### 💬 Send & Manage DMs
|
|
20
|
-
- **Send direct messages** to
|
|
21
|
-
- **
|
|
22
|
-
- **List conversations**
|
|
23
|
-
- **
|
|
24
|
-
- **
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
- **
|
|
29
|
-
- **
|
|
30
|
-
- **
|
|
18
|
+
- **Send direct messages** to a thread, a contact, or a platform user through your connected accounts
|
|
19
|
+
- **Send safely** with an idempotency key, so a retried run never sends twice
|
|
20
|
+
- **List conversations** with filters for folder, account, contact, tag, status and assignee
|
|
21
|
+
- **Edit, unsend and react to messages**, and read a message's edit history
|
|
22
|
+
- **Archive, assign and mark threads** as unread
|
|
23
|
+
|
|
24
|
+
### 👥 Manage Contacts
|
|
25
|
+
- **Find contacts** by platform ID or username
|
|
26
|
+
- **Update contacts**: status, notes, valuation and default assignee
|
|
27
|
+
- **Add and remove tags** on a contact
|
|
28
|
+
- **Expand related resources**, such as a thread's contact and profile, in the same call
|
|
31
29
|
|
|
32
30
|
### 🏷️ Organize with Tags & Statuses
|
|
33
|
-
- **Create, update, and delete tags** to label your
|
|
34
|
-
- **Manage
|
|
31
|
+
- **Create, update, and delete tags** to label your contacts
|
|
32
|
+
- **Manage statuses** to build your own sales pipeline stages
|
|
35
33
|
- **Assign colors** to tags and statuses for visual organization
|
|
36
34
|
|
|
37
35
|
### 👤 Team & Accounts
|
|
38
36
|
- **View team info** and members
|
|
39
|
-
- **List connected
|
|
40
|
-
- **
|
|
37
|
+
- **List connected accounts** linked to your workspace
|
|
38
|
+
- **Replay events** across your workspace
|
|
41
39
|
|
|
42
40
|
## Getting Started
|
|
43
41
|
|
|
@@ -76,69 +74,83 @@ Here are some common workflows to get you started:
|
|
|
76
74
|
#### Send a DM to a New Lead
|
|
77
75
|
|
|
78
76
|
```
|
|
79
|
-
Trigger → InboxApp (
|
|
77
|
+
Trigger → InboxApp (Messages Send)
|
|
80
78
|
```
|
|
81
79
|
|
|
82
|
-
1. Add an **InboxApp** node → select **
|
|
83
|
-
2.
|
|
84
|
-
3.
|
|
85
|
-
4.
|
|
86
|
-
|
|
80
|
+
1. Add an **InboxApp** node → select **Messages → Messages Send**
|
|
81
|
+
2. Set **Target** to the person's platform ID: `{ "type": "profile", "accountLinkId": "…", "platform": "twitter", "platformId": "…" }`
|
|
82
|
+
3. Write your message
|
|
83
|
+
4. Under **Additional Fields**, set **Idempotency Key** to a value unique to this lead, so a retried run never sends twice
|
|
84
|
+
|
|
85
|
+
**Target** also takes an existing thread, `{ "type": "thread", "threadId": "…" }`, or a contact, `{ "type": "contact", "accountLinkId": "…", "contactId": "…" }`.
|
|
87
86
|
|
|
88
87
|
#### Auto-Reply to New Conversations
|
|
89
88
|
|
|
90
89
|
```
|
|
91
|
-
Schedule Trigger → InboxApp (List
|
|
90
|
+
Schedule Trigger → InboxApp (Threads List, Folder: No Reply) → InboxApp (Messages Send)
|
|
92
91
|
```
|
|
93
92
|
|
|
94
|
-
#### Sync
|
|
93
|
+
#### Sync Contacts to Your CRM
|
|
95
94
|
|
|
96
95
|
```
|
|
97
|
-
Schedule Trigger → InboxApp (
|
|
96
|
+
Schedule Trigger → InboxApp (Threads List, Expand: contact,profile) → HTTP Request (CRM API)
|
|
98
97
|
```
|
|
99
98
|
|
|
100
|
-
#### Tag
|
|
99
|
+
#### Tag Contacts Based on Keywords
|
|
101
100
|
|
|
102
101
|
```
|
|
103
|
-
Schedule Trigger → InboxApp (List
|
|
102
|
+
Schedule Trigger → InboxApp (Threads List) → IF (keyword match) → InboxApp (Contacts Add Tag)
|
|
104
103
|
```
|
|
105
104
|
|
|
106
105
|
## Available Operations
|
|
107
106
|
|
|
108
107
|
| Resource | Operations |
|
|
109
108
|
|----------|-----------|
|
|
110
|
-
| **
|
|
111
|
-
| **
|
|
112
|
-
| **
|
|
109
|
+
| **Platforms** | List |
|
|
110
|
+
| **Threads** | List, Get, Update, Delete, Typing |
|
|
111
|
+
| **Messages** | List, Get, Send, Edit, Unsend, History, React, Unreact, Attachment |
|
|
112
|
+
| **Contacts** | List, Get, Update, Add Tag, Remove Tag |
|
|
113
113
|
| **Tags** | List, Create, Get, Update, Delete |
|
|
114
114
|
| **Statuses** | List, Create, Get, Update, Delete |
|
|
115
|
-
| **Account Links** | List |
|
|
116
|
-
| **
|
|
117
|
-
| **Team** | Get Info |
|
|
115
|
+
| **Account Links** | List, Get |
|
|
116
|
+
| **Team** | Get, List Members, Get Member |
|
|
118
117
|
| **Events** | List |
|
|
119
118
|
| **Colors** | List (for tags & statuses) |
|
|
120
119
|
|
|
120
|
+
List operations return `{ data, nextCursor }`. To read the next page, pass `nextCursor` as **Cursor** under **Additional Fields**, with the same filters.
|
|
121
|
+
|
|
121
122
|
## Example: DM Outreach Workflow
|
|
122
123
|
|
|
123
124
|
A complete outreach workflow might look like:
|
|
124
125
|
|
|
125
126
|
1. **Trigger** — New row in Google Sheets (your lead list)
|
|
126
|
-
2. **InboxApp:
|
|
127
|
-
3. **InboxApp:
|
|
128
|
-
4. **
|
|
129
|
-
5. **
|
|
130
|
-
6. **InboxApp: Send Message** — Send follow-up if no reply
|
|
127
|
+
2. **InboxApp: Messages Send** — Send your personalized outreach DM to the lead's platform ID
|
|
128
|
+
3. **InboxApp: Contacts Add Tag** — Tag the contact as "Outreach - Week 1"
|
|
129
|
+
4. **Wait** — Pause for follow-up timing
|
|
130
|
+
5. **InboxApp: Messages Send** — Send a follow-up to the thread if there is no reply
|
|
131
131
|
|
|
132
132
|
This replaces hours of manual DMing with a fully automated pipeline.
|
|
133
133
|
|
|
134
|
+
## Upgrading from API v1
|
|
135
|
+
|
|
136
|
+
Earlier versions of this node called API v1. The same API key works on v2, but operations and fields changed, so existing workflows need their InboxApp nodes set up again:
|
|
137
|
+
|
|
138
|
+
- **Prospects** are now **Contacts**. Look one up with **Contacts List**, filtered by platform and platform ID or username.
|
|
139
|
+
- **Threads Lookup** and **Lookup by Username** are gone. Use **Contacts List**, then **Threads List** filtered by contact.
|
|
140
|
+
- **Threads Create** and **Quick Send** are gone. **Messages Send** takes a thread, contact or profile target.
|
|
141
|
+
- **Members** moved under **Team**.
|
|
142
|
+
- Thread `done` is now `archived`, and list operations return `{ data, nextCursor }`.
|
|
143
|
+
|
|
144
|
+
See the [migration guide](https://docs.inboxapp.com/v2/migrating-from-v1) for every change.
|
|
145
|
+
|
|
134
146
|
## API Docs
|
|
135
147
|
|
|
136
|
-
Full API documentation: [docs.inboxapp.com](https://docs.inboxapp.com)
|
|
148
|
+
Full API documentation: [docs.inboxapp.com/v2/developer-api](https://docs.inboxapp.com/v2/developer-api)
|
|
137
149
|
|
|
138
150
|
## Links
|
|
139
151
|
|
|
140
152
|
- 🌐 [InboxApp](https://inboxapp.com)
|
|
141
|
-
- 📖 [API Documentation](https://docs.inboxapp.com)
|
|
153
|
+
- 📖 [API Documentation](https://docs.inboxapp.com/v2/developer-api)
|
|
142
154
|
- 🐛 [Report Issues](https://github.com/inboxhq/n8n-nodes-inboxapp/issues)
|
|
143
155
|
- 💬 [n8n Community](https://community.n8n.io/)
|
|
144
156
|
|
|
@@ -6,7 +6,7 @@ class InboxAppApi {
|
|
|
6
6
|
this.name = 'inboxAppApi';
|
|
7
7
|
this.displayName = 'InboxApp API';
|
|
8
8
|
this.icon = 'file:icons/inboxapp.svg';
|
|
9
|
-
this.documentationUrl = 'https://docs.inboxapp.com/api
|
|
9
|
+
this.documentationUrl = 'https://docs.inboxapp.com/v2/developer-api';
|
|
10
10
|
this.properties = [
|
|
11
11
|
{
|
|
12
12
|
displayName: 'API Key',
|
|
@@ -27,7 +27,7 @@ class InboxAppApi {
|
|
|
27
27
|
};
|
|
28
28
|
this.test = {
|
|
29
29
|
request: {
|
|
30
|
-
baseURL: 'https://inboxapp.com/api/
|
|
30
|
+
baseURL: 'https://inboxapp.com/api/v2',
|
|
31
31
|
url: '/team',
|
|
32
32
|
method: 'GET',
|
|
33
33
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InboxAppApi.credentials.js","sourceRoot":"","sources":["../../credentials/InboxAppApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,WAAW;IAAxB;QACC,SAAI,GAAG,aAAa,CAAC;QAErB,gBAAW,GAAG,cAAc,CAAC;QAE7B,SAAI,GAAS,yBAAyB,CAAC;QAEvC,qBAAgB,GAAG,
|
|
1
|
+
{"version":3,"file":"InboxAppApi.credentials.js","sourceRoot":"","sources":["../../credentials/InboxAppApi.credentials.ts"],"names":[],"mappings":";;;AAQA,MAAa,WAAW;IAAxB;QACC,SAAI,GAAG,aAAa,CAAC;QAErB,gBAAW,GAAG,cAAc,CAAC;QAE7B,SAAI,GAAS,yBAAyB,CAAC;QAEvC,qBAAgB,GAAG,4CAA4C,CAAC;QAEhE,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;gBACX,QAAQ,EAAE,IAAI;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,6BAA6B;gBACtC,GAAG,EAAE,OAAO;gBACZ,MAAM,EAAE,KAAK;aACb;SACD,CAAC;IACH,CAAC;CAAA;AApCD,kCAoCC"}
|
|
@@ -14,7 +14,7 @@ class InboxApp {
|
|
|
14
14
|
group: ['output'],
|
|
15
15
|
version: 1,
|
|
16
16
|
subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
|
|
17
|
-
description: 'Manage
|
|
17
|
+
description: 'Manage conversations, contacts, threads, and messages with InboxApp',
|
|
18
18
|
defaults: {
|
|
19
19
|
name: 'InboxApp',
|
|
20
20
|
},
|
|
@@ -32,7 +32,8 @@ class InboxApp {
|
|
|
32
32
|
Accept: 'application/json',
|
|
33
33
|
'Content-Type': 'application/json',
|
|
34
34
|
},
|
|
35
|
-
baseURL: 'https://inboxapp.com/api/
|
|
35
|
+
baseURL: 'https://inboxapp.com/api/v2',
|
|
36
|
+
arrayFormat: 'repeat',
|
|
36
37
|
},
|
|
37
38
|
properties: properties_json_1.default,
|
|
38
39
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InboxApp.node.js","sourceRoot":"","sources":["../../../nodes/InboxApp/InboxApp.node.ts"],"names":[],"mappings":";;;;;;AACA,wEAA2C;AAE3C,MAAa,QAAQ;IAArB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,mBAAmB;YACzB,KAAK,EAAE,CAAC,QAAQ,CAAC;YACjB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"InboxApp.node.js","sourceRoot":"","sources":["../../../nodes/InboxApp/InboxApp.node.ts"],"names":[],"mappings":";;;;;;AACA,wEAA2C;AAE3C,MAAa,QAAQ;IAArB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,mBAAmB;YACzB,KAAK,EAAE,CAAC,QAAQ,CAAC;YACjB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE;gBACT,IAAI,EAAE,UAAU;aAChB;YACD,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAC3B,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,eAAe,EAAE;gBAChB,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;gBACD,OAAO,EAAE,6BAA6B;gBACtC,WAAW,EAAE,QAAQ;aACrB;YACD,UAAU,EAAE,yBAA0C;SACtD,CAAC;IACH,CAAC;CAAA;AA/BD,4BA+BC"}
|
|
@@ -3,20 +3,16 @@
|
|
|
3
3
|
"nodeVersion": "1.0",
|
|
4
4
|
"codexVersion": "1.0",
|
|
5
5
|
"categories": ["Sales", "Communication"],
|
|
6
|
-
"
|
|
7
|
-
"Sales": ["CRM"],
|
|
8
|
-
"Communication": ["Social Media"]
|
|
9
|
-
},
|
|
10
|
-
"alias": ["inbox", "twitter", "x", "dm", "prospect", "thread", "message"],
|
|
6
|
+
"alias": ["inbox", "twitter", "x", "dm", "contact", "thread", "message"],
|
|
11
7
|
"resources": {
|
|
12
8
|
"credentialDocumentation": [
|
|
13
9
|
{
|
|
14
|
-
"url": "https://docs.inboxapp.com/api
|
|
10
|
+
"url": "https://docs.inboxapp.com/v2/developer-api"
|
|
15
11
|
}
|
|
16
12
|
],
|
|
17
13
|
"primaryDocumentation": [
|
|
18
14
|
{
|
|
19
|
-
"url": "https://docs.inboxapp.com/api
|
|
15
|
+
"url": "https://docs.inboxapp.com/v2/developer-api"
|
|
20
16
|
}
|
|
21
17
|
]
|
|
22
18
|
}
|