n8n-nodes-evo-go 1.0.1
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.md +19 -0
- package/README.md +337 -0
- package/dist/credentials/EvoGoApi.credentials.d.ts +12 -0
- package/dist/credentials/EvoGoApi.credentials.js +29 -0
- package/dist/credentials/EvoGoApi.credentials.js.map +1 -0
- package/dist/credentials/evo-go.dark.svg +27 -0
- package/dist/credentials/evo-go.svg +27 -0
- package/dist/icons/github.dark.svg +3 -0
- package/dist/icons/github.svg +3 -0
- package/dist/nodes/EvoGo/EvoGo.node.d.ts +4 -0
- package/dist/nodes/EvoGo/EvoGo.node.js +4230 -0
- package/dist/nodes/EvoGo/EvoGo.node.js.map +1 -0
- package/dist/nodes/EvoGo/EvoGo.node.json +13 -0
- package/dist/nodes/EvoGo/evo-go.dark.svg +32 -0
- package/dist/nodes/EvoGo/evo-go.svg +32 -0
- package/dist/package.json +46 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +55 -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,337 @@
|
|
|
1
|
+
# n8n-nodes-evo-go
|
|
2
|
+
|
|
3
|
+
This is an n8n community node for **EvoGo** integration. Use EvoGo in your n8n workflows.
|
|
4
|
+
|
|
5
|
+
EvoGo provides automation and integration features for your workflows.
|
|
6
|
+
|
|
7
|
+
[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/reference/license/) workflow automation platform.
|
|
8
|
+
|
|
9
|
+
[Installation](#installation)
|
|
10
|
+
[Credentials](#credentials)
|
|
11
|
+
[Operations](#operations)
|
|
12
|
+
[Compatibility](#compatibility)
|
|
13
|
+
[Resources](#resources)
|
|
14
|
+
[Version history](#version-history)
|
|
15
|
+
|
|
16
|
+
## Installation
|
|
17
|
+
|
|
18
|
+
Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
|
|
19
|
+
|
|
20
|
+
## Credentials
|
|
21
|
+
|
|
22
|
+
The EvoGo node uses **EvoGo API** credentials with:
|
|
23
|
+
|
|
24
|
+
- **Base URL** – API base URL (e.g. `https://api.evogo.com`)
|
|
25
|
+
|
|
26
|
+
**ApiKey • Global** is a node field (shown after Operation), sent in the `apikey` header.
|
|
27
|
+
|
|
28
|
+
When saving credentials, n8n validates the connection with a `GET` request to `{{baseUrl}}/health`.
|
|
29
|
+
|
|
30
|
+
## Operations
|
|
31
|
+
|
|
32
|
+
### Resource: Instance
|
|
33
|
+
|
|
34
|
+
- **Create Instance**: Creates a new instance in EvoGo
|
|
35
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
36
|
+
- **Instance Name** (required): Instance name
|
|
37
|
+
- **Token** (required): Instance token
|
|
38
|
+
- **Instance ID** (optional): Instance ID
|
|
39
|
+
- Sends `POST` to `{{baseUrl}}/instance/create` with header `apikey: {{adminApiKey}}`
|
|
40
|
+
|
|
41
|
+
- **Fetch All Instances**: Get all instances from EvoGo
|
|
42
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
43
|
+
- Sends `GET` to `{{baseUrl}}/instance/all` with header `apikey: {{adminApiKey}}`
|
|
44
|
+
|
|
45
|
+
- **Fetch Instance**: Get a single instance by ID from EvoGo
|
|
46
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
47
|
+
- **Instance ID** (required): Instance ID to fetch
|
|
48
|
+
- Sends `GET` to `{{baseUrl}}/instance/info/{{instanceId}}` with header `apikey: {{adminApiKey}}`
|
|
49
|
+
|
|
50
|
+
- **Delete Instance**: Delete an instance from EvoGo
|
|
51
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
52
|
+
- **Instance ID** (required): Instance ID to delete
|
|
53
|
+
- Sends `DELETE` to `{{baseUrl}}/instance/delete/{{instanceId}}` with header `apikey: {{adminApiKey}}`
|
|
54
|
+
|
|
55
|
+
- **Delete Proxy**: Delete proxy for an instance from EvoGo
|
|
56
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
57
|
+
- **Instance ID** (required): Instance ID for the proxy to delete
|
|
58
|
+
- Sends `DELETE` to `{{baseUrl}}/instance/proxy/{{instanceId}}` with header `apikey: {{adminApiKey}}`
|
|
59
|
+
|
|
60
|
+
- **Instance Connect**: Connect an instance to EvoGo
|
|
61
|
+
- **ApiKey • Instance** (required): Instance API key sent in the `apikey` header
|
|
62
|
+
- **Subscribe** (optional): Events to subscribe to - MESSAGE, READ_RECEIPT, PRESENCE, etc. or ALL (default: ALL)
|
|
63
|
+
- **Additional Fields** (optional): Webhook URL, WebSocket, RabbitMQ, NATS enable/disable
|
|
64
|
+
- Sends `POST` to `{{baseUrl}}/instance/connect` with header `apikey: {{instanceApiKey}}`
|
|
65
|
+
|
|
66
|
+
- **Get Logs**: Get logs for an instance
|
|
67
|
+
- **ApiKey • Global** (required): API key sent in the `apikey` header
|
|
68
|
+
- **Instance ID** (required): Instance ID to get logs from
|
|
69
|
+
- **Start Date** (optional): Start date filter (date picker)
|
|
70
|
+
- **End Date** (optional): End date filter (date picker)
|
|
71
|
+
- **Level** (optional): Log levels to filter - DEBUG, WARN, ERROR, INFO (multi-select, all selected by default)
|
|
72
|
+
- **Limit** (optional): Max log entries to return (default: 50)
|
|
73
|
+
- Sends `GET` to `{{baseUrl}}/instance/logs/{{instanceId}}?start_date=...&end_date=...&level=...&limit=...`
|
|
74
|
+
|
|
75
|
+
### Resource: Send Message
|
|
76
|
+
|
|
77
|
+
All Send Message operations use **ApiKey • Instance** (required), sent in the `apikey` header.
|
|
78
|
+
|
|
79
|
+
- **Send Text**: Send a text message to a phone number
|
|
80
|
+
- **Number** (required), **Text** (required), **Delay (Ms)** (optional), **Additional Fields** (Mentions, Reply)
|
|
81
|
+
- Sends `POST` to `{{baseUrl}}/send/text`
|
|
82
|
+
|
|
83
|
+
- **Send Link**: Send a message with link preview
|
|
84
|
+
- **Number** (required), **Text** (required), **Delay (Ms)** (optional), **Additional Fields** (Mentions, Reply)
|
|
85
|
+
- Sends `POST` to `{{baseUrl}}/send/link`
|
|
86
|
+
|
|
87
|
+
- **Send Media URL**: Send image, video or document from URL
|
|
88
|
+
- **Number** (required), **Media URL** (required), **Caption**, **Filename**, **Type** (image/video/document), **Delay (Ms)** (optional), **Additional Fields**
|
|
89
|
+
- Sends `POST` to `{{baseUrl}}/send/media`
|
|
90
|
+
|
|
91
|
+
- **Send Poll**: Send a poll to a phone number
|
|
92
|
+
- **Number** (required), **Question** (required), **Max Answer**, **Options** (array), **Delay (Ms)** (optional), **Additional Fields**
|
|
93
|
+
- Sends `POST` to `{{baseUrl}}/send/poll`
|
|
94
|
+
|
|
95
|
+
- **Send Sticker**: Send a sticker from URL
|
|
96
|
+
- **Number** (required), **Sticker URL** (required), **Delay (Ms)** (optional), **Additional Fields**
|
|
97
|
+
- Sends `POST` to `{{baseUrl}}/send/sticker`
|
|
98
|
+
|
|
99
|
+
- **Send Location**: Send a location to a phone number
|
|
100
|
+
- **Number** (required), **Name** (required), **Address**, **Latitude** (required), **Longitude** (required), **Delay (Ms)** (optional), **Additional Fields**
|
|
101
|
+
- Sends `POST` to `{{baseUrl}}/send/location`
|
|
102
|
+
|
|
103
|
+
- **Send Contact**: Send a contact (vcard) to a phone number
|
|
104
|
+
- **Number** (required), **Full Name** (required), **Organization**, **Phone** (required), **Delay (Ms)** (optional), **Additional Fields**
|
|
105
|
+
- Sends `POST` to `{{baseUrl}}/send/contact`
|
|
106
|
+
|
|
107
|
+
- **Send Button**: Send a message with buttons (PIX, reply, copy, URL, call)
|
|
108
|
+
- **Number** (required), **Title** (required), **Description**, **Footer**, **Buttons** (required: add buttons, choose Type — PIX, Reply, Copy, URL, Call — and fill the fields for each type), **Delay (Ms)** (optional), **Additional Fields**
|
|
109
|
+
- Sends `POST` to `{{baseUrl}}/send/button`
|
|
110
|
+
|
|
111
|
+
- **Send List**: Send a message with sections and rows (list)
|
|
112
|
+
- **Number** (required), **Title** (required), **Button Text** (required), **Description**, **Footer Text**, **Sections** (with rows: title, description, rowId), **Delay (Ms)** (optional), **Additional Fields**
|
|
113
|
+
- Sends `POST` to `{{baseUrl}}/send/list`
|
|
114
|
+
|
|
115
|
+
- **Send Status**: Publish a status/story (text, image, video or audio)
|
|
116
|
+
- **Type** (text/image/video/audio), **Content** (required), **Caption** (for image/video), **Background Color**, **Font** (for text), **Send to All Contacts**, **Status JID List** (when not all contacts). No number or mentions/reply.
|
|
117
|
+
- Sends `POST` to `{{baseUrl}}/send/status`
|
|
118
|
+
|
|
119
|
+
### Resource: User
|
|
120
|
+
|
|
121
|
+
All User operations use **ApiKey • Instance** (required), sent in the `apikey` header.
|
|
122
|
+
|
|
123
|
+
- **User Info**: Get info for one or more numbers
|
|
124
|
+
- **Numbers** (required: phone numbers with country code, separated by commas)
|
|
125
|
+
- Sends `POST` to `{{baseUrl}}/user/info`
|
|
126
|
+
|
|
127
|
+
- **Check User**: Check if one or more numbers exist
|
|
128
|
+
- **Numbers** (required: phone numbers separated by commas)
|
|
129
|
+
- Sends `POST` to `{{baseUrl}}/user/check`
|
|
130
|
+
|
|
131
|
+
- **Get Avatar**: Get avatar for a number
|
|
132
|
+
- **Number** (required), **Preview** (optional, default false)
|
|
133
|
+
- Sends `POST` to `{{baseUrl}}/user/avatar`
|
|
134
|
+
|
|
135
|
+
- **Get Contacts**: Get all contacts
|
|
136
|
+
- No parameters. Sends `GET` to `{{baseUrl}}/user/contacts`
|
|
137
|
+
|
|
138
|
+
- **Get Privacy Settings**: Get privacy settings
|
|
139
|
+
- No parameters. Sends `GET` to `{{baseUrl}}/user/privacy`
|
|
140
|
+
|
|
141
|
+
- **Block Contact**: Block a number
|
|
142
|
+
- **Number** (required). Sends `POST` to `{{baseUrl}}/user/block`
|
|
143
|
+
|
|
144
|
+
- **UnBlock Contact**: Unblock a number
|
|
145
|
+
- **Number** (required). Sends `POST` to `{{baseUrl}}/user/unblock`
|
|
146
|
+
|
|
147
|
+
- **Block List**: Get list of blocked numbers
|
|
148
|
+
- No parameters. Sends `GET` to `{{baseUrl}}/user/blocklist`
|
|
149
|
+
|
|
150
|
+
- **Set Profile Picture**: Set profile picture from image URL
|
|
151
|
+
- **Image URL** (required). Sends `POST` to `{{baseUrl}}/user/profile`
|
|
152
|
+
|
|
153
|
+
### Resource: Message
|
|
154
|
+
|
|
155
|
+
All Message operations use **ApiKey • Instance** (required), sent in the `apikey` header.
|
|
156
|
+
|
|
157
|
+
- **React to Message**: Send a reaction (emoji) to a message
|
|
158
|
+
- **Number** (required), **Message ID** (required), **Reaction** (required, emoji). Sends `POST` to `{{baseUrl}}/message/react`
|
|
159
|
+
|
|
160
|
+
- **Send Presence**: Send typing/recording presence
|
|
161
|
+
- **Number** (required), **State** (composing/paused), **Is Audio** (boolean). Sends `POST` to `{{baseUrl}}/message/presence`
|
|
162
|
+
|
|
163
|
+
- **Mark as Read**: Mark one or more messages as read
|
|
164
|
+
- **Number** (required), **Message IDs** (required, separated by commas). Sends `POST` to `{{baseUrl}}/message/markread`
|
|
165
|
+
|
|
166
|
+
- **Download Media**: Download media by URL, directPath or mediaKey
|
|
167
|
+
- **Media Type**: Image, Video, Document ou Audio (imageMessage, videoMessage, documentMessage, audioMessage)
|
|
168
|
+
- **Source**: URL, Direct Path ou Media Key
|
|
169
|
+
- Se **URL**: campo **URL** (obrigatório)
|
|
170
|
+
- Se **Direct Path**: campo **Direct Path** (obrigatório)
|
|
171
|
+
- Se **Media Key**: **Media Key** (obrigatório), **File Enc SHA256**, **File SHA256**, **File Length**
|
|
172
|
+
- **Mimetype** (opcional) em qualquer caso
|
|
173
|
+
- Envia `POST` para `{{baseUrl}}/message/downloadmedia`
|
|
174
|
+
|
|
175
|
+
- **Get Message Status**: Get status of a message
|
|
176
|
+
- **Message ID** (required). Sends `POST` to `{{baseUrl}}/message/status`
|
|
177
|
+
|
|
178
|
+
- **Delete Message**: Delete a message from chat
|
|
179
|
+
- **Chat** (required, JID), **Message ID** (required). Sends `POST` to `{{baseUrl}}/message/delete`
|
|
180
|
+
|
|
181
|
+
- **Edit Message**: Edit message text
|
|
182
|
+
- **Chat** (required, JID), **Message ID** (required), **Message** (required, new text). Sends `POST` to `{{baseUrl}}/message/edit`
|
|
183
|
+
|
|
184
|
+
### Resource: Chat
|
|
185
|
+
|
|
186
|
+
Uso de **ApiKey • Instance** para todas as operações.
|
|
187
|
+
|
|
188
|
+
- **Pin Chat**: Fixar chat no topo
|
|
189
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/pin`
|
|
190
|
+
|
|
191
|
+
- **UnPin Chat**: Desfixar chat
|
|
192
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unpin`
|
|
193
|
+
|
|
194
|
+
- **Archive Chat**: Arquivar chat
|
|
195
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/archive`
|
|
196
|
+
|
|
197
|
+
- **Unarchive Chat**: Desarquivar chat
|
|
198
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unarchive`
|
|
199
|
+
|
|
200
|
+
- **Mute Chat**: Silenciar chat
|
|
201
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/mute`
|
|
202
|
+
|
|
203
|
+
- **Unmute Chat**: Dessilenciar chat
|
|
204
|
+
- **Chat** (obrigatório, JID). Envia `POST` para `{{baseUrl}}/chat/unmute`
|
|
205
|
+
|
|
206
|
+
- **History Sync Request**: Solicitar sincronização de histórico
|
|
207
|
+
- **Chat** (obrigatório, JID do grupo/contato), **ID** (obrigatório, ID da mensagem), **Is From Me** (boolean), **Is Group** (boolean), **Timestamp** (obrigatório), **Count** (número). Envia `POST` para `{{baseUrl}}/chat/history-sync`
|
|
208
|
+
|
|
209
|
+
### Resource: Group
|
|
210
|
+
|
|
211
|
+
Uso de **ApiKey • Instance** para todas as operações.
|
|
212
|
+
|
|
213
|
+
- **List Groups**: Listar grupos. Sem parâmetros. Envia `GET` para `{{baseUrl}}/group/list`
|
|
214
|
+
|
|
215
|
+
- **Get Group Info**: Obter informações do grupo
|
|
216
|
+
- **Group JID** (obrigatório). Envia `POST` para `{{baseUrl}}/group/info`
|
|
217
|
+
|
|
218
|
+
- **Get Group Invite Link**: Obter link de convite do grupo
|
|
219
|
+
- **Group JID** (obrigatório). Envia `POST` para `{{baseUrl}}/group/invitelink`
|
|
220
|
+
|
|
221
|
+
- **Set Group Picture**: Definir foto do grupo (URL)
|
|
222
|
+
- **Group JID** (obrigatório), **Image** (obrigatório, URL). Envia `POST` para `{{baseUrl}}/group/photo`
|
|
223
|
+
|
|
224
|
+
- **Set Group Name**: Definir nome do grupo
|
|
225
|
+
- **Group JID** (obrigatório), **Name** (obrigatório). Envia `POST` para `{{baseUrl}}/group/name`
|
|
226
|
+
|
|
227
|
+
- **Create Group**: Criar grupo
|
|
228
|
+
- **Group Name** (obrigatório), **Participants** (obrigatório, números separados por vírgula). Envia `POST` para `{{baseUrl}}/group/create`
|
|
229
|
+
|
|
230
|
+
- **Update Participant**: Adicionar, remover, promover ou rebaixar participantes
|
|
231
|
+
- **Group JID** (obrigatório), **Participants** (obrigatório, números separados por vírgula), **Action** (add, remove, promote, demote). Envia `POST` para `{{baseUrl}}/group/participant`
|
|
232
|
+
|
|
233
|
+
- **Get My Groups**: Listar meus grupos. Sem parâmetros. Envia `GET` para `{{baseUrl}}/group/myall`
|
|
234
|
+
|
|
235
|
+
- **Join Group Link**: Entrar em grupo por link
|
|
236
|
+
- **Code** (obrigatório, código do link de convite). Envia `POST` para `{{baseUrl}}/group/join`
|
|
237
|
+
|
|
238
|
+
### Resource: Community
|
|
239
|
+
|
|
240
|
+
Uso de **ApiKey • Instance** para todas as operações.
|
|
241
|
+
|
|
242
|
+
- **Create Community**: Criar community
|
|
243
|
+
- **Community Name** (obrigatório). Envia `POST` para `{{baseUrl}}/community/create`
|
|
244
|
+
|
|
245
|
+
- **Add Group to Community**: Adicionar grupo à community
|
|
246
|
+
- **Community JID** (obrigatório), **Group JID** (obrigatório, um ou mais JIDs separados por vírgula). Envia `POST` para `{{baseUrl}}/community/add`
|
|
247
|
+
|
|
248
|
+
- **Remove Group from Community**: Remover grupo da community
|
|
249
|
+
- **Community JID** (obrigatório), **Group JID** (obrigatório, um ou mais JIDs separados por vírgula). Envia `POST` para `{{baseUrl}}/community/remove`
|
|
250
|
+
|
|
251
|
+
### Resource: Label
|
|
252
|
+
|
|
253
|
+
Uso de **ApiKey • Instance** para todas as operações.
|
|
254
|
+
|
|
255
|
+
- **Add Label on Chat**: Adicionar label em chat
|
|
256
|
+
- **JID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/label/chat`
|
|
257
|
+
|
|
258
|
+
- **Remove Label on Chat**: Remover label de chat
|
|
259
|
+
- **JID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/unlabel/chat`
|
|
260
|
+
|
|
261
|
+
- **Add Label on Message**: Adicionar label em mensagem
|
|
262
|
+
- **JID** (obrigatório), **Message ID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/label/message`
|
|
263
|
+
|
|
264
|
+
- **Remove Label on Message**: Remover label de mensagem
|
|
265
|
+
- **JID** (obrigatório), **Message ID** (obrigatório), **Label ID** (obrigatório). Envia `POST` para `{{baseUrl}}/unlabel/message`
|
|
266
|
+
|
|
267
|
+
- **Edit Label**: Editar label (nome, cor, deleted)
|
|
268
|
+
- **Label ID** (obrigatório), **Name**, **Color** (número), **Deleted** (boolean). Envia `POST` para `{{baseUrl}}/label/edit`
|
|
269
|
+
|
|
270
|
+
- **List Labels**: Listar labels. Sem parâmetros. Envia `GET` para `{{baseUrl}}/label/list`
|
|
271
|
+
|
|
272
|
+
### Resource: Newsletter
|
|
273
|
+
|
|
274
|
+
Uso de **ApiKey • Instance** para todas as operações.
|
|
275
|
+
|
|
276
|
+
- **Create Newsletter**: Criar newsletter
|
|
277
|
+
- **Name** (obrigatório), **Description** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/create`
|
|
278
|
+
|
|
279
|
+
- **List Newsletters**: Listar newsletters. Sem parâmetros. Envia `GET` para `{{baseUrl}}/newsletter/list`
|
|
280
|
+
|
|
281
|
+
- **Get Newsletter Info**: Obter informações do newsletter
|
|
282
|
+
- **JID** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/info`
|
|
283
|
+
|
|
284
|
+
- **Get Newsletter Link**: Obter link do newsletter
|
|
285
|
+
- **Key** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/link`
|
|
286
|
+
|
|
287
|
+
- **Subscribe on Newsletter**: Inscrever-se em newsletter
|
|
288
|
+
- **JID** (obrigatório). Envia `POST` para `{{baseUrl}}/newsletter/subscribe`
|
|
289
|
+
|
|
290
|
+
- **Get Newsletter Messages**: Obter mensagens do newsletter
|
|
291
|
+
- **JID** (obrigatório), **Count** (número, default 1). Envia `POST` para `{{baseUrl}}/newsletter/messages`
|
|
292
|
+
|
|
293
|
+
## Compatibility
|
|
294
|
+
|
|
295
|
+
- **Minimum n8n version**: 1.0
|
|
296
|
+
- Tested with n8n 1.x
|
|
297
|
+
|
|
298
|
+
## Development
|
|
299
|
+
|
|
300
|
+
### Timeout when starting (`npm run dev`)
|
|
301
|
+
|
|
302
|
+
If `npm run dev` fails with "n8n startup timeout after 120 seconds" (common on Windows on first run), use external mode:
|
|
303
|
+
|
|
304
|
+
**Terminal 1** – link the node and watch:
|
|
305
|
+
```bash
|
|
306
|
+
npm run dev:external
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
**Terminal 2** – start n8n manually:
|
|
310
|
+
```powershell
|
|
311
|
+
$env:N8N_USER_FOLDER = "$env:USERPROFILE\.n8n-node-cli"
|
|
312
|
+
$env:N8N_DEV_RELOAD = "true"
|
|
313
|
+
cd $env:N8N_USER_FOLDER
|
|
314
|
+
npx -y n8n@latest
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
Open n8n at http://localhost:5678.
|
|
318
|
+
|
|
319
|
+
### Alternative: pre-install n8n
|
|
320
|
+
|
|
321
|
+
To try to avoid the timeout next time:
|
|
322
|
+
```powershell
|
|
323
|
+
cd $env:USERPROFILE\.n8n-node-cli
|
|
324
|
+
npx -y n8n@latest --version
|
|
325
|
+
```
|
|
326
|
+
This downloads n8n in advance; then `npm run dev` tends to start faster.
|
|
327
|
+
|
|
328
|
+
## Resources
|
|
329
|
+
|
|
330
|
+
* [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
|
|
331
|
+
* [Project repository](https://github.com/Administrador/n8n-nodes-evo-go)
|
|
332
|
+
|
|
333
|
+
## Version history
|
|
334
|
+
|
|
335
|
+
### 0.1.0
|
|
336
|
+
- Initial EvoGo node release
|
|
337
|
+
- Basic node with Instance resource and Create Instance operation
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
|
|
2
|
+
export declare class EvoGoApi implements ICredentialType {
|
|
3
|
+
name: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
icon: {
|
|
6
|
+
readonly light: "file:evo-go.svg";
|
|
7
|
+
readonly dark: "file:evo-go.dark.svg";
|
|
8
|
+
};
|
|
9
|
+
documentationUrl: string;
|
|
10
|
+
properties: INodeProperties[];
|
|
11
|
+
test: ICredentialTestRequest;
|
|
12
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EvoGoApi = void 0;
|
|
4
|
+
class EvoGoApi {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.name = 'evoGoApi';
|
|
7
|
+
this.displayName = 'EvoGo API';
|
|
8
|
+
this.icon = { light: 'file:evo-go.svg', dark: 'file:evo-go.dark.svg' };
|
|
9
|
+
this.documentationUrl = 'https://github.com/Administrador/n8n-nodes-evo-go';
|
|
10
|
+
this.properties = [
|
|
11
|
+
{
|
|
12
|
+
displayName: 'Base URL',
|
|
13
|
+
name: 'baseUrl',
|
|
14
|
+
type: 'string',
|
|
15
|
+
default: '',
|
|
16
|
+
placeholder: 'https://api.evogo.com',
|
|
17
|
+
description: 'EvoGo API base URL (e.g. https://api.evogo.com). The connection test validates via the root /server/ok.',
|
|
18
|
+
},
|
|
19
|
+
];
|
|
20
|
+
this.test = {
|
|
21
|
+
request: {
|
|
22
|
+
baseURL: '={{$credentials?.baseUrl}}',
|
|
23
|
+
url: '/server/ok',
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.EvoGoApi = EvoGoApi;
|
|
29
|
+
//# sourceMappingURL=EvoGoApi.credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EvoGoApi.credentials.js","sourceRoot":"","sources":["../../credentials/EvoGoApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,QAAQ;IAArB;QACC,SAAI,GAAG,UAAU,CAAC;QAElB,gBAAW,GAAG,WAAW,CAAC;QAE1B,SAAI,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,sBAAsB,EAAW,CAAC;QAE3E,qBAAgB,GAAG,mDAAmD,CAAC;QAEvE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,uBAAuB;gBACpC,WAAW,EAAE,yGAAyG;aACtH;SACD,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EAAE,4BAA4B;gBACrC,GAAG,EAAE,YAAY;aACjB;SACD,CAAC;IACH,CAAC;CAAA;AA1BD,4BA0BC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg id="Camada_2" data-name="Camada 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 463.19 365.61">
|
|
3
|
+
<defs>
|
|
4
|
+
<style>
|
|
5
|
+
.cls-1 { fill: #fff; }
|
|
6
|
+
.cls-2 { fill: #00ffa7; }
|
|
7
|
+
</style>
|
|
8
|
+
</defs>
|
|
9
|
+
<g id="Camada_1-2" data-name="Camada 1">
|
|
10
|
+
<g>
|
|
11
|
+
<g>
|
|
12
|
+
<path class="cls-2" d="M283.07,174.1v115.94c0,51.76-27.95,75.57-78.16,75.57-26.4,0-52.02-6.47-68.32-19.15l16.05-28.99c11.9,9.58,31.32,15.79,49.17,15.79,28.47,0,40.89-12.94,40.89-38.04v-5.95c-10.61,11.65-25.88,17.34-44,17.34-38.56,0-69.62-26.66-69.62-67.29s31.06-67.29,69.62-67.29c19.41,0,35.46,6.47,46.07,19.93v-17.86h38.3ZM243.21,239.32c0-20.45-15.27-34.16-36.49-34.16s-36.75,13.72-36.75,34.16,15.53,34.16,36.75,34.16,36.49-13.72,36.49-34.16Z"/>
|
|
13
|
+
<path class="cls-2" d="M310.24,243.72c0-41.93,32.35-71.69,76.61-71.69s76.35,29.76,76.35,71.69-32.09,71.69-76.35,71.69-76.61-29.76-76.61-71.69ZM422.3,243.72c0-24.07-15.27-38.56-35.46-38.56s-35.71,14.49-35.71,38.56,15.53,38.56,35.71,38.56,35.46-14.49,35.46-38.56Z"/>
|
|
14
|
+
</g>
|
|
15
|
+
<g>
|
|
16
|
+
<path class="cls-2" d="M66.15,237.31v30.64h30.64v-30.64h-30.64Z"/>
|
|
17
|
+
<path class="cls-2" d="M15.29,176.58v40.8h40.8v-40.8H15.29Z"/>
|
|
18
|
+
<path class="cls-2" d="M86.63,182.67v20.43h20.43v-20.43h-20.43Z"/>
|
|
19
|
+
</g>
|
|
20
|
+
<g>
|
|
21
|
+
<path class="cls-1" d="M99.42,107.51c5.58-2.18,10.77-5.53,15.63-10.22l21.43,23.22c-13.06,14.96-32.15,22.44-57.27,22.44-15.69,0-29.53-3.07-41.53-9.15-12.06-6.08-21.32-14.57-27.85-25.4C3.29,97.57,0,85.24,0,71.51s3.24-25.84,9.66-36.79c6.48-10.94,15.29-19.43,26.57-25.57C47.5,3.07,60.17,0,74.3,0c13.23,0,25.29,2.79,36.12,8.37,10.83,5.58,19.48,13.68,25.96,24.28,6.48,10.61,9.66,23.11,9.66,37.57l-102.71,19.87c2.9,6.87,7.54,12.06,13.79,15.46,6.25,3.46,13.95,5.14,23.11,5.14,7.2,0,13.62-1.06,19.2-3.24v.06ZM49.51,40.3c-6.36,6.53-9.71,15.57-10.05,27.07l67.6-13.17c-1.9-7.2-5.75-13.01-11.61-17.3-5.86-4.3-12.89-6.47-21.16-6.47-10.16,0-18.42,3.29-24.78,9.82v.06Z"/>
|
|
22
|
+
<path class="cls-1" d="M308.35,2.12l-58.61,138.82h-41.53L149.88,2.12h41.53l38.46,94.45L269.61,2.12h38.74Z"/>
|
|
23
|
+
<path class="cls-1" d="M347.7,133.86c-11.61-6.08-20.71-14.57-27.24-25.4-6.53-10.83-9.82-23.17-9.82-36.9s3.24-26.07,9.82-36.9c6.53-10.83,15.63-19.31,27.24-25.4C359.31,3.18,372.43.11,387.06.11s27.69,3.07,39.24,9.15c11.5,6.08,20.54,14.57,27.07,25.4,6.53,10.83,9.83,23.17,9.83,36.9s-3.3,26.07-9.83,36.9c-6.53,10.83-15.57,19.31-27.07,25.4-11.56,6.08-24.62,9.15-39.24,9.15s-27.74-3.07-39.35-9.15ZM412.45,99.53c6.64-6.98,9.94-16.3,9.94-28.02s-3.3-21.04-9.94-28.02c-6.64-6.98-15.07-10.44-25.4-10.44s-18.87,3.46-25.57,10.44c-6.7,6.98-10.05,16.3-10.05,28.02s3.35,21.04,10.05,28.02c6.7,6.98,15.24,10.44,25.57,10.44s18.81-3.46,25.4-10.44Z"/>
|
|
24
|
+
</g>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg id="Camada_2" data-name="Camada 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 463.19 365.61">
|
|
3
|
+
<defs>
|
|
4
|
+
<style>
|
|
5
|
+
.cls-1 { fill: #333; }
|
|
6
|
+
.cls-2 { fill: #00ffa7; }
|
|
7
|
+
</style>
|
|
8
|
+
</defs>
|
|
9
|
+
<g id="Camada_1-2" data-name="Camada 1">
|
|
10
|
+
<g>
|
|
11
|
+
<g>
|
|
12
|
+
<path class="cls-2" d="M283.07,174.1v115.94c0,51.76-27.95,75.57-78.16,75.57-26.4,0-52.02-6.47-68.32-19.15l16.05-28.99c11.9,9.58,31.32,15.79,49.17,15.79,28.47,0,40.89-12.94,40.89-38.04v-5.95c-10.61,11.65-25.88,17.34-44,17.34-38.56,0-69.62-26.66-69.62-67.29s31.06-67.29,69.62-67.29c19.41,0,35.46,6.47,46.07,19.93v-17.86h38.3ZM243.21,239.32c0-20.45-15.27-34.16-36.49-34.16s-36.75,13.72-36.75,34.16,15.53,34.16,36.75,34.16,36.49-13.72,36.49-34.16Z"/>
|
|
13
|
+
<path class="cls-2" d="M310.24,243.72c0-41.93,32.35-71.69,76.61-71.69s76.35,29.76,76.35,71.69-32.09,71.69-76.35,71.69-76.61-29.76-76.61-71.69ZM422.3,243.72c0-24.07-15.27-38.56-35.46-38.56s-35.71,14.49-35.71,38.56,15.53,38.56,35.71,38.56,35.46-14.49,35.46-38.56Z"/>
|
|
14
|
+
</g>
|
|
15
|
+
<g>
|
|
16
|
+
<path class="cls-2" d="M66.15,237.31v30.64h30.64v-30.64h-30.64Z"/>
|
|
17
|
+
<path class="cls-2" d="M15.29,176.58v40.8h40.8v-40.8H15.29Z"/>
|
|
18
|
+
<path class="cls-2" d="M86.63,182.67v20.43h20.43v-20.43h-20.43Z"/>
|
|
19
|
+
</g>
|
|
20
|
+
<g>
|
|
21
|
+
<path class="cls-1" d="M99.42,107.51c5.58-2.18,10.77-5.53,15.63-10.22l21.43,23.22c-13.06,14.96-32.15,22.44-57.27,22.44-15.69,0-29.53-3.07-41.53-9.15-12.06-6.08-21.32-14.57-27.85-25.4C3.29,97.57,0,85.24,0,71.51s3.24-25.84,9.66-36.79c6.48-10.94,15.29-19.43,26.57-25.57C47.5,3.07,60.17,0,74.3,0c13.23,0,25.29,2.79,36.12,8.37,10.83,5.58,19.48,13.68,25.96,24.28,6.48,10.61,9.66,23.11,9.66,37.57l-102.71,19.87c2.9,6.87,7.54,12.06,13.79,15.46,6.25,3.46,13.95,5.14,23.11,5.14,7.2,0,13.62-1.06,19.2-3.24v.06ZM49.51,40.3c-6.36,6.53-9.71,15.57-10.05,27.07l67.6-13.17c-1.9-7.2-5.75-13.01-11.61-17.3-5.86-4.3-12.89-6.47-21.16-6.47-10.16,0-18.42,3.29-24.78,9.82v.06Z"/>
|
|
22
|
+
<path class="cls-1" d="M308.35,2.12l-58.61,138.82h-41.53L149.88,2.12h41.53l38.46,94.45L269.61,2.12h38.74Z"/>
|
|
23
|
+
<path class="cls-1" d="M347.7,133.86c-11.61-6.08-20.71-14.57-27.24-25.4-6.53-10.83-9.82-23.17-9.82-36.9s3.24-26.07,9.82-36.9c6.53-10.83,15.63-19.31,27.24-25.4C359.31,3.18,372.43.11,387.06.11s27.69,3.07,39.24,9.15c11.5,6.08,20.54,14.57,27.07,25.4,6.53,10.83,9.83,23.17,9.83,36.9s-3.3,26.07-9.83,36.9c-6.53,10.83-15.57,19.31-27.07,25.4-11.56,6.08-24.62,9.15-39.24,9.15s-27.74-3.07-39.35-9.15ZM412.45,99.53c6.64-6.98,9.94-16.3,9.94-28.02s-3.3-21.04-9.94-28.02c-6.64-6.98-15.07-10.44-25.4-10.44s-18.87,3.46-25.57,10.44c-6.7,6.98-10.05,16.3-10.05,28.02s3.35,21.04,10.05,28.02c6.7,6.98,15.24,10.44,25.57,10.44s18.81-3.46,25.4-10.44Z"/>
|
|
24
|
+
</g>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0165 0C8.94791 0 0 9.01388 0 20.1653C0 29.0792 5.73324 36.6246 13.6868 39.2952C14.6812 39.496 15.0454 38.8613 15.0454 38.3274C15.0454 37.8599 15.0126 36.2575 15.0126 34.5879C9.4445 35.79 8.28498 32.1841 8.28498 32.1841C7.39015 29.847 6.06429 29.2463 6.06429 29.2463C4.24185 28.011 6.19704 28.011 6.19704 28.011C8.21861 28.1446 9.27938 30.081 9.27938 30.081C11.0686 33.1522 13.9518 32.2844 15.1118 31.7502C15.2773 30.4481 15.8079 29.5467 16.3713 29.046C11.9303 28.5785 7.25781 26.8425 7.25781 19.0967C7.25781 16.8932 8.05267 15.0905 9.31216 13.6884C9.11344 13.1877 8.41732 11.1174 9.51128 8.34644C9.51128 8.34644 11.2014 7.81217 15.0122 10.4164C16.6438 9.97495 18.3263 9.7504 20.0165 9.74851C21.7067 9.74851 23.4295 9.98246 25.0205 10.4164C28.8317 7.81217 30.5218 8.34644 30.5218 8.34644C31.6158 11.1174 30.9192 13.1877 30.7205 13.6884C32.0132 15.0905 32.7753 16.8932 32.7753 19.0967C32.7753 26.8425 28.1028 28.5449 23.6287 29.046C24.358 29.6802 24.9873 30.882 24.9873 32.7851C24.9873 35.4893 24.9545 37.6596 24.9545 38.327C24.9545 38.8613 25.3192 39.496 26.3132 39.2956C34.2667 36.6242 39.9999 29.0792 39.9999 20.1653C40.0327 9.01388 31.052 0 20.0165 0Z" fill="white"/>
|
|
3
|
+
</svg>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0165 0C8.94791 0 0 9.01388 0 20.1653C0 29.0792 5.73324 36.6246 13.6868 39.2952C14.6812 39.496 15.0454 38.8613 15.0454 38.3274C15.0454 37.8599 15.0126 36.2575 15.0126 34.5879C9.4445 35.79 8.28498 32.1841 8.28498 32.1841C7.39015 29.847 6.06429 29.2463 6.06429 29.2463C4.24185 28.011 6.19704 28.011 6.19704 28.011C8.21861 28.1446 9.27938 30.081 9.27938 30.081C11.0686 33.1522 13.9518 32.2844 15.1118 31.7502C15.2773 30.4481 15.8079 29.5467 16.3713 29.046C11.9303 28.5785 7.25781 26.8425 7.25781 19.0967C7.25781 16.8932 8.05267 15.0905 9.31216 13.6884C9.11344 13.1877 8.41732 11.1174 9.51128 8.34644C9.51128 8.34644 11.2014 7.81217 15.0122 10.4164C16.6438 9.97495 18.3263 9.7504 20.0165 9.74851C21.7067 9.74851 23.4295 9.98246 25.0205 10.4164C28.8317 7.81217 30.5218 8.34644 30.5218 8.34644C31.6158 11.1174 30.9192 13.1877 30.7205 13.6884C32.0132 15.0905 32.7753 16.8932 32.7753 19.0967C32.7753 26.8425 28.1028 28.5449 23.6287 29.046C24.358 29.6802 24.9873 30.882 24.9873 32.7851C24.9873 35.4893 24.9545 37.6596 24.9545 38.327C24.9545 38.8613 25.3192 39.496 26.3132 39.2956C34.2667 36.6242 39.9999 29.0792 39.9999 20.1653C40.0327 9.01388 31.052 0 20.0165 0Z" fill="#24292F"/>
|
|
3
|
+
</svg>
|