n8n-nodes-evo-go
v1.0.4
Published
Evolution Go API is a REST API developed in Go to integrate WhatsApp with applications, offering support for multiple instances and advanced messaging features.
Maintainers
Readme
n8n-nodes-evo-go
This is an n8n community node for EvoGo integration. Use EvoGo in your n8n workflows.
EvoGo provides automation and integration features for your workflows.
n8n is a fair-code licensed workflow automation platform.
Installation
Credentials
Operations
Compatibility
Resources
Version history
Installation
Follow the installation guide in the n8n community nodes documentation.
Credentials
The EvoGo node uses EvoGo API credentials with:
- Base URL – API base URL (e.g.
https://api.evogo.com)
ApiKey • Global is a node field (shown after Operation), sent in the apikey header.
When saving credentials, n8n validates the connection with a GET request to {{baseUrl}}/health.
Operations
Resource: Instance
Create Instance: Creates a new instance in EvoGo
- ApiKey • Global (required): API key sent in the
apikeyheader - Instance Name (required): Instance name
- Token (required): Instance token
- Instance ID (optional): Instance ID
- Sends
POSTto{{baseUrl}}/instance/createwith headerapikey: {{adminApiKey}}
- ApiKey • Global (required): API key sent in the
Fetch All Instances: Get all instances from EvoGo
- ApiKey • Global (required): API key sent in the
apikeyheader - Sends
GETto{{baseUrl}}/instance/allwith headerapikey: {{adminApiKey}}
- ApiKey • Global (required): API key sent in the
Fetch Instance: Get a single instance by ID from EvoGo
- ApiKey • Global (required): API key sent in the
apikeyheader - Instance ID (required): Instance ID to fetch
- Sends
GETto{{baseUrl}}/instance/info/{{instanceId}}with headerapikey: {{adminApiKey}}
- ApiKey • Global (required): API key sent in the
Delete Instance: Delete an instance from EvoGo
- ApiKey • Global (required): API key sent in the
apikeyheader - Instance ID (required): Instance ID to delete
- Sends
DELETEto{{baseUrl}}/instance/delete/{{instanceId}}with headerapikey: {{adminApiKey}}
- ApiKey • Global (required): API key sent in the
Delete Proxy: Delete proxy for an instance from EvoGo
- ApiKey • Global (required): API key sent in the
apikeyheader - Instance ID (required): Instance ID for the proxy to delete
- Sends
DELETEto{{baseUrl}}/instance/proxy/{{instanceId}}with headerapikey: {{adminApiKey}}
- ApiKey • Global (required): API key sent in the
Instance Connect: Connect an instance to EvoGo
- ApiKey • Instance (required): Instance API key sent in the
apikeyheader - Subscribe (optional): Events to subscribe to - MESSAGE, READ_RECEIPT, PRESENCE, etc. or ALL (default: ALL)
- Additional Fields (optional): Webhook URL, WebSocket, RabbitMQ, NATS enable/disable
- Sends
POSTto{{baseUrl}}/instance/connectwith headerapikey: {{instanceApiKey}}
- ApiKey • Instance (required): Instance API key sent in the
Get Logs: Get logs for an instance
- ApiKey • Global (required): API key sent in the
apikeyheader - Instance ID (required): Instance ID to get logs from
- Start Date (optional): Start date filter (date picker)
- End Date (optional): End date filter (date picker)
- Level (optional): Log levels to filter - DEBUG, WARN, ERROR, INFO (multi-select, all selected by default)
- Limit (optional): Max log entries to return (default: 50)
- Sends
GETto{{baseUrl}}/instance/logs/{{instanceId}}?start_date=...&end_date=...&level=...&limit=...
- ApiKey • Global (required): API key sent in the
Resource: Send Message
All Send Message operations use ApiKey • Instance (required), sent in the apikey header.
Send Text: Send a text message to a phone number
- Number (required), Text (required), Delay (Ms) (optional), Additional Fields (Mentions, Reply)
- Sends
POSTto{{baseUrl}}/send/text
Send Link: Send a message with link preview
- Number (required), Text (required), Delay (Ms) (optional), Additional Fields (Mentions, Reply)
- Sends
POSTto{{baseUrl}}/send/link
Send Media URL: Send image, video or document from URL
- Number (required), Media URL (required), Caption, Filename, Type (image/video/document), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/media
Send Poll: Send a poll to a phone number
- Number (required), Question (required), Max Answer, Options (array), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/poll
Send Sticker: Send a sticker from URL
- Number (required), Sticker URL (required), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/sticker
Send Location: Send a location to a phone number
- Number (required), Name (required), Address, Latitude (required), Longitude (required), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/location
Send Contact: Send a contact (vcard) to a phone number
- Number (required), Full Name (required), Organization, Phone (required), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/contact
Send Button: Send a message with buttons (PIX, reply, copy, URL, call)
- 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
- Sends
POSTto{{baseUrl}}/send/button
Send List: Send a message with sections and rows (list)
- Number (required), Title (required), Button Text (required), Description, Footer Text, Sections (with rows: title, description, rowId), Delay (Ms) (optional), Additional Fields
- Sends
POSTto{{baseUrl}}/send/list
Send Status: Publish a status/story (text, image, video or audio)
- 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.
- Sends
POSTto{{baseUrl}}/send/status
Resource: User
All User operations use ApiKey • Instance (required), sent in the apikey header.
User Info: Get info for one or more numbers
- Numbers (required: phone numbers with country code, separated by commas)
- Sends
POSTto{{baseUrl}}/user/info
Check User: Check if one or more numbers exist
- Numbers (required: phone numbers separated by commas)
- Sends
POSTto{{baseUrl}}/user/check
Get Avatar: Get avatar for a number
- Number (required), Preview (optional, default false)
- Sends
POSTto{{baseUrl}}/user/avatar
Get Contacts: Get all contacts
- No parameters. Sends
GETto{{baseUrl}}/user/contacts
- No parameters. Sends
Get Privacy Settings: Get privacy settings
- No parameters. Sends
GETto{{baseUrl}}/user/privacy
- No parameters. Sends
Block Contact: Block a number
- Number (required). Sends
POSTto{{baseUrl}}/user/block
- Number (required). Sends
UnBlock Contact: Unblock a number
- Number (required). Sends
POSTto{{baseUrl}}/user/unblock
- Number (required). Sends
Block List: Get list of blocked numbers
- No parameters. Sends
GETto{{baseUrl}}/user/blocklist
- No parameters. Sends
Set Profile Picture: Set profile picture from image URL
- Image URL (required). Sends
POSTto{{baseUrl}}/user/profile
- Image URL (required). Sends
Resource: Message
All Message operations use ApiKey • Instance (required), sent in the apikey header.
React to Message: Send a reaction (emoji) to a message
- Number (required), Message ID (required), Reaction (required, emoji). Sends
POSTto{{baseUrl}}/message/react
- Number (required), Message ID (required), Reaction (required, emoji). Sends
Send Presence: Send typing/recording presence
- Number (required), State (composing/paused), Is Audio (boolean). Sends
POSTto{{baseUrl}}/message/presence
- Number (required), State (composing/paused), Is Audio (boolean). Sends
Mark as Read: Mark one or more messages as read
- Number (required), Message IDs (required, separated by commas). Sends
POSTto{{baseUrl}}/message/markread
- Number (required), Message IDs (required, separated by commas). Sends
Download Media: Download media by URL, directPath or mediaKey
- Media Type: Image, Video, Document ou Audio (imageMessage, videoMessage, documentMessage, audioMessage)
- Source: URL, Direct Path ou Media Key
- Se URL: campo URL (obrigatório)
- Se Direct Path: campo Direct Path (obrigatório)
- Se Media Key: Media Key (obrigatório), File Enc SHA256, File SHA256, File Length
- Mimetype (opcional) em qualquer caso
- Envia
POSTpara{{baseUrl}}/message/downloadmedia
Get Message Status: Get status of a message
- Message ID (required). Sends
POSTto{{baseUrl}}/message/status
- Message ID (required). Sends
Delete Message: Delete a message from chat
- Chat (required, JID), Message ID (required). Sends
POSTto{{baseUrl}}/message/delete
- Chat (required, JID), Message ID (required). Sends
Edit Message: Edit message text
- Chat (required, JID), Message ID (required), Message (required, new text). Sends
POSTto{{baseUrl}}/message/edit
- Chat (required, JID), Message ID (required), Message (required, new text). Sends
Resource: Chat
Uso de ApiKey • Instance para todas as operações.
Pin Chat: Fixar chat no topo
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/pin
- Chat (obrigatório, JID). Envia
UnPin Chat: Desfixar chat
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/unpin
- Chat (obrigatório, JID). Envia
Archive Chat: Arquivar chat
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/archive
- Chat (obrigatório, JID). Envia
Unarchive Chat: Desarquivar chat
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/unarchive
- Chat (obrigatório, JID). Envia
Mute Chat: Silenciar chat
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/mute
- Chat (obrigatório, JID). Envia
Unmute Chat: Dessilenciar chat
- Chat (obrigatório, JID). Envia
POSTpara{{baseUrl}}/chat/unmute
- Chat (obrigatório, JID). Envia
History Sync Request: Solicitar sincronização de histórico
- 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
POSTpara{{baseUrl}}/chat/history-sync
- 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
Resource: Group
Uso de ApiKey • Instance para todas as operações.
List Groups: Listar grupos. Sem parâmetros. Envia
GETpara{{baseUrl}}/group/listGet Group Info: Obter informações do grupo
- Group JID (obrigatório). Envia
POSTpara{{baseUrl}}/group/info
- Group JID (obrigatório). Envia
Get Group Invite Link: Obter link de convite do grupo
- Group JID (obrigatório). Envia
POSTpara{{baseUrl}}/group/invitelink
- Group JID (obrigatório). Envia
Set Group Picture: Definir foto do grupo (URL)
- Group JID (obrigatório), Image (obrigatório, URL). Envia
POSTpara{{baseUrl}}/group/photo
- Group JID (obrigatório), Image (obrigatório, URL). Envia
Set Group Name: Definir nome do grupo
- Group JID (obrigatório), Name (obrigatório). Envia
POSTpara{{baseUrl}}/group/name
- Group JID (obrigatório), Name (obrigatório). Envia
Create Group: Criar grupo
- Group Name (obrigatório), Participants (obrigatório, números separados por vírgula). Envia
POSTpara{{baseUrl}}/group/create
- Group Name (obrigatório), Participants (obrigatório, números separados por vírgula). Envia
Update Participant: Adicionar, remover, promover ou rebaixar participantes
- Group JID (obrigatório), Participants (obrigatório, números separados por vírgula), Action (add, remove, promote, demote). Envia
POSTpara{{baseUrl}}/group/participant
- Group JID (obrigatório), Participants (obrigatório, números separados por vírgula), Action (add, remove, promote, demote). Envia
Get My Groups: Listar meus grupos. Sem parâmetros. Envia
GETpara{{baseUrl}}/group/myallJoin Group Link: Entrar em grupo por link
- Code (obrigatório, código do link de convite). Envia
POSTpara{{baseUrl}}/group/join
- Code (obrigatório, código do link de convite). Envia
Resource: Community
Uso de ApiKey • Instance para todas as operações.
Create Community: Criar community
- Community Name (obrigatório). Envia
POSTpara{{baseUrl}}/community/create
- Community Name (obrigatório). Envia
Add Group to Community: Adicionar grupo à community
- Community JID (obrigatório), Group JID (obrigatório, um ou mais JIDs separados por vírgula). Envia
POSTpara{{baseUrl}}/community/add
- Community JID (obrigatório), Group JID (obrigatório, um ou mais JIDs separados por vírgula). Envia
Remove Group from Community: Remover grupo da community
- Community JID (obrigatório), Group JID (obrigatório, um ou mais JIDs separados por vírgula). Envia
POSTpara{{baseUrl}}/community/remove
- Community JID (obrigatório), Group JID (obrigatório, um ou mais JIDs separados por vírgula). Envia
Resource: Label
Uso de ApiKey • Instance para todas as operações.
Add Label on Chat: Adicionar label em chat
- JID (obrigatório), Label ID (obrigatório). Envia
POSTpara{{baseUrl}}/label/chat
- JID (obrigatório), Label ID (obrigatório). Envia
Remove Label on Chat: Remover label de chat
- JID (obrigatório), Label ID (obrigatório). Envia
POSTpara{{baseUrl}}/unlabel/chat
- JID (obrigatório), Label ID (obrigatório). Envia
Add Label on Message: Adicionar label em mensagem
- JID (obrigatório), Message ID (obrigatório), Label ID (obrigatório). Envia
POSTpara{{baseUrl}}/label/message
- JID (obrigatório), Message ID (obrigatório), Label ID (obrigatório). Envia
Remove Label on Message: Remover label de mensagem
- JID (obrigatório), Message ID (obrigatório), Label ID (obrigatório). Envia
POSTpara{{baseUrl}}/unlabel/message
- JID (obrigatório), Message ID (obrigatório), Label ID (obrigatório). Envia
Edit Label: Editar label (nome, cor, deleted)
- Label ID (obrigatório), Name, Color (número), Deleted (boolean). Envia
POSTpara{{baseUrl}}/label/edit
- Label ID (obrigatório), Name, Color (número), Deleted (boolean). Envia
List Labels: Listar labels. Sem parâmetros. Envia
GETpara{{baseUrl}}/label/list
Resource: Newsletter
Uso de ApiKey • Instance para todas as operações.
Create Newsletter: Criar newsletter
- Name (obrigatório), Description (obrigatório). Envia
POSTpara{{baseUrl}}/newsletter/create
- Name (obrigatório), Description (obrigatório). Envia
List Newsletters: Listar newsletters. Sem parâmetros. Envia
GETpara{{baseUrl}}/newsletter/listGet Newsletter Info: Obter informações do newsletter
- JID (obrigatório). Envia
POSTpara{{baseUrl}}/newsletter/info
- JID (obrigatório). Envia
Get Newsletter Link: Obter link do newsletter
- Key (obrigatório). Envia
POSTpara{{baseUrl}}/newsletter/link
- Key (obrigatório). Envia
Subscribe on Newsletter: Inscrever-se em newsletter
- JID (obrigatório). Envia
POSTpara{{baseUrl}}/newsletter/subscribe
- JID (obrigatório). Envia
Get Newsletter Messages: Obter mensagens do newsletter
- JID (obrigatório), Count (número, default 1). Envia
POSTpara{{baseUrl}}/newsletter/messages
- JID (obrigatório), Count (número, default 1). Envia
Compatibility
- Minimum n8n version: 1.0
- Tested with n8n 1.x
Development
Timeout when starting (npm run dev)
If npm run dev fails with "n8n startup timeout after 120 seconds" (common on Windows on first run), use external mode:
Terminal 1 – link the node and watch:
npm run dev:externalTerminal 2 – start n8n manually:
$env:N8N_USER_FOLDER = "$env:USERPROFILE\.n8n-node-cli"
$env:N8N_DEV_RELOAD = "true"
cd $env:N8N_USER_FOLDER
npx -y n8n@latestOpen n8n at http://localhost:5678.
Alternative: pre-install n8n
To try to avoid the timeout next time:
cd $env:USERPROFILE\.n8n-node-cli
npx -y n8n@latest --versionThis downloads n8n in advance; then npm run dev tends to start faster.
Resources
Version history
0.1.0
- Initial EvoGo node release
- Basic node with Instance resource and Create Instance operation
