59 |
60 | Your support helps us continue developing and maintaining the Evolution API. Thank you for considering a donation!
61 |
62 | Also, don't forget that you can contribute to our project on GitHub. Check out our repository: [Evolution API on GitHub](https://github.com/EvolutionAPI/evolution-api). Whether it's code contributions, feature suggestions, or bug reports, every bit of help counts!
63 |
64 | Stay tuned for more updates and enhancements in the future!
65 |
--------------------------------------------------------------------------------
/blog/authors.yml:
--------------------------------------------------------------------------------
1 | adson:
2 | name: Adson Cicilioti
3 | title: Marketer and Dev Enthusiast
4 | url: https://github.com/AdsonCicilioti
5 | image_url: https://avatars.githubusercontent.com/u/6278398?v=4
6 |
7 | matheus:
8 | name: Matheus Maiberg
9 | title: Growth Hacking Specialist
10 | url: https://groufy.com.br
11 | image_url: https://avatars.githubusercontent.com/u/119268809?v=4
12 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Environment Variables.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: variables
3 | title: Environment variables
4 | hide_title: false
5 | hide_table_of_contents: false
6 | sidebar_label: Environment variables
7 | sidebar_position: 6
8 | pagination_label: Variables
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Variables configuration
11 | # image: https://i.imgur.com/mErPwqL.png
12 | slug: /variables
13 | last_update:
14 | date: 12/12/2023
15 | author: matheus
16 | keywords:
17 | - Environment
18 | - Variables
19 | - Configuration
20 | ---
21 |
22 | ```bash
23 | # Server URL - Set your application url
24 |
25 | SERVER_URL=API-DOMAIN
26 |
27 | # Cors - \* for all or set separate by commas - ex.: 'yourdomain1.com, yourdomain2.com'
28 |
29 | CORS_ORIGIN=\*
30 | CORS_METHODS=POST,GET,PUT,DELETE
31 | CORS_CREDENTIALS=true
32 |
33 | # Determine the logs to be displayed
34 |
35 | LOG_LEVEL=ERROR,WARN,DEBUG,INFO,LOG,VERBOSE,DARK,WEBHOOKS
36 | LOG_COLOR=true
37 |
38 | # Log Baileys - "fatal" | "error" | "warn" | "info" | "debug" | "trace"
39 |
40 | LOG_BAILEYS=error
41 |
42 | # Determine how long the instance should be deleted from memory in case of no connection.
43 |
44 | # Default time: 5 minutes
45 |
46 | # If you don't even want an expiration, enter the value false
47 |
48 | DEL_INSTANCE=false
49 |
50 | # Temporary data storage
51 |
52 | STORE_MESSAGES=true
53 | STORE_MESSAGE_UP=true
54 | STORE_CONTACTS=true
55 | STORE_CHATS=true
56 |
57 | # Set Store Interval in Seconds (7200 = 2h)
58 |
59 | CLEAN_STORE_CLEANING_INTERVAL=7200
60 | CLEAN_STORE_MESSAGES=true
61 | CLEAN_STORE_MESSAGE_UP=true
62 | CLEAN_STORE_CONTACTS=true
63 | CLEAN_STORE_CHATS=true
64 |
65 | # Permanent data storage
66 |
67 | DATABASE_ENABLED=false
68 | DATABASE_CONNECTION_URI=mongodb://root:root@mongodb:27017/?authSource=admin&readPreference=primary&ssl=false&directConnection=true
69 | DATABASE_CONNECTION_DB_PREFIX_NAME=evdocker
70 |
71 | # Choose the data you want to save in the application's database or store
72 |
73 | DATABASE_SAVE_DATA_INSTANCE=false
74 | DATABASE_SAVE_DATA_NEW_MESSAGE=false
75 | DATABASE_SAVE_MESSAGE_UPDATE=false
76 | DATABASE_SAVE_DATA_CONTACTS=false
77 | DATABASE_SAVE_DATA_CHATS=false
78 |
79 | REDIS_ENABLED=false
80 | REDIS_URI=redis://redis:6379
81 | REDIS_PREFIX_KEY=evdocker
82 |
83 | RABBITMQ_ENABLED=false
84 | RABBITMQ_URI=amqp://guest:guest@rabbitmq:5672
85 |
86 | WEBSOCKET_ENABLED=false
87 |
88 | # Global Webhook Settings
89 |
90 | # Each instance's Webhook URL and events will be requested at the time it is created
91 |
92 | ## Define a global webhook that will listen for enabled events from all instances
93 |
94 | WEBHOOK_GLOBAL_URL=
95 | WEBHOOK_GLOBAL_ENABLED=false
96 |
97 | # With this option activated, you work with a url per webhook event, respecting the global url and the name of each event
98 |
99 | WEBHOOK_GLOBAL_WEBHOOK_BY_EVENTS=false
100 |
101 | ## Set the events you want to hear
102 |
103 | WEBHOOK_EVENTS_APPLICATION_STARTUP=false
104 | WEBHOOK_EVENTS_QRCODE_UPDATED=true
105 | WEBHOOK_EVENTS_MESSAGES_SET=true
106 | WEBHOOK_EVENTS_MESSAGES_UPSERT=true
107 | WEBHOOK_EVENTS_MESSAGES_UPDATE=true
108 | WEBHOOK_EVENTS_MESSAGES_DELETE=true
109 | WEBHOOK_EVENTS_SEND_MESSAGE=true
110 | WEBHOOK_EVENTS_CONTACTS_SET=true
111 | WEBHOOK_EVENTS_CONTACTS_UPSERT=true
112 | WEBHOOK_EVENTS_CONTACTS_UPDATE=true
113 | WEBHOOK_EVENTS_PRESENCE_UPDATE=true
114 | WEBHOOK_EVENTS_CHATS_SET=true
115 | WEBHOOK_EVENTS_CHATS_UPSERT=true
116 | WEBHOOK_EVENTS_CHATS_UPDATE=true
117 | WEBHOOK_EVENTS_CHATS_DELETE=true
118 | WEBHOOK_EVENTS_GROUPS_UPSERT=true
119 | WEBHOOK_EVENTS_GROUPS_UPDATE=true
120 | WEBHOOK_EVENTS_GROUP_PARTICIPANTS_UPDATE=true
121 | WEBHOOK_EVENTS_CONNECTION_UPDATE=true
122 | WEBHOOK_EVENTS_CALL=true
123 |
124 | # This event fires every time a new token is requested via the refresh route
125 |
126 | WEBHOOK_EVENTS_NEW_JWT_TOKEN=false
127 |
128 | # Name that will be displayed on smartphone connection
129 |
130 | CONFIG_SESSION_PHONE_CLIENT=Evolution API
131 |
132 | # Browser Name = chrome | firefox | edge | opera | safari
133 |
134 | CONFIG_SESSION_PHONE_NAME=chrome
135 |
136 | # Set qrcode display limit
137 |
138 | QRCODE_LIMIT=30
139 | QRCODE_COLOR=#198754
140 |
141 | # Defines an authentication type for the api
142 |
143 | # We recommend using the apikey because it will allow you to use a custom token,
144 |
145 | # if you use jwt, a random token will be generated and may be expired and you will have to generate a new token
146 |
147 | # jwt or 'apikey'
148 |
149 | AUTHENTICATION_TYPE=apikey
150 |
151 | ## Define a global apikey to access all instances.
152 |
153 | ### OBS: This key must be inserted in the request header to create an instance.
154 |
155 | AUTHENTICATION_API_KEY=GLOBAL-API-KEY
156 | AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=true
157 |
158 | ## Set the secret key to encrypt and decrypt your token and its expiration time
159 |
160 | # seconds - 3600s ===1h | zero (0) - never expires
161 |
162 | AUTHENTICATION_JWT_EXPIRIN_IN=0
163 | AUTHENTICATION_JWT_SECRET='L=0YWt]b2w[WF>#>:&E`'
164 | ```
165 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Installation/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "position": 2,
3 | "label": "Installation",
4 | "collapsible": true,
5 | "collapsed": false,
6 | "className": "Installation",
7 | "link": {
8 | "type": "generated-index",
9 | "title": "Installation"
10 | },
11 | "customProps": {
12 | "description": "Self-host Evolution in your own environment."
13 | }
14 | }
--------------------------------------------------------------------------------
/docs/01-Get Started/Introduction.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: introduction
3 | title: Introduction
4 | hide_title: false
5 | hide_table_of_contents: false
6 | sidebar_label: Introduction
7 | sidebar_position: 1
8 | pagination_label: Introduction
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Start exploring Evolution API
11 | # image: https://i.imgur.com/mErPwqL.png
12 | slug: /introduction
13 | last_update:
14 | date: 12/12/2023
15 | author: matheus
16 | keywords:
17 | - Introduction
18 | ---
19 |
20 | This is a **COMPLETELY FREE** project, aiming to support small shopkeepers, entrepreneurs, self-employed professionals, and people with limited purchasing power. The goal is to enhance local or digital businesses with a WhatsApp™ messaging solution via API.
21 |
22 | ## Domain
23 |
24 | All requests should use the domain or the IP of your Evolution API instance.
25 |
26 | For most users is recommended using a subdomain to keep the main domain free for your dashboards or website.
27 |
28 | ```plaintext
29 |
30 | http://localhost:8080/
31 |
32 |
33 | http://123.123.12.123:8080/
34 |
35 |
36 | https://api.yoursite.com/
37 | ```
38 |
39 | Every call has an an endpoint that is the final part of your url, every action like `send a message` or `fetch an instance` has an different endpoint.
40 |
41 | ## RESTful methods
42 |
43 | Evolution API supports various RESTful methods to interact with your data, providing a flexible way to handle different types of requests. The primary methods used are POST, GET, and DELETE.
44 |
45 | #### POST Method
46 |
47 | The POST method is used to create new data on the server. In the context of the Evolution API, it's typically used to create new entries or send data to the server.
48 |
49 | Example usage with Evolution API:
50 |
51 | ```rest
52 | POST /your-endpoint
53 | ```
54 |
55 | #### GET Method
56 |
57 | The GET method retrieves data from the server. It's used for fetching records or data sets from your Evolution API instance.
58 |
59 | Example usage with Evolution API:
60 |
61 | ```rest
62 | GET /your-endpoint
63 | ```
64 |
65 | #### DELETE Method
66 |
67 | The DELETE method is used to remove data from the server. This method allows you to delete specific entries or data from your Evolution API instance.
68 |
69 | Example usage with Evolution API:
70 |
71 | ```rest
72 | DELETE /your-endpoint
73 | ```
74 |
75 | ## Authentication
76 |
77 | To consume our API REST is necessary to include the `apikey` in the headers, this is the api key that authenticate the calls and secure your api to keep malicious people of using your WhatsApp api.
78 |
79 | Every request has to send the `apikey` in the headers of the request.
80 |
81 | If you don send the parameter or in the case of an invalid `apikey` the response of the request will be and HTTP STATUS 401 like this:
82 |
83 | ```json showLineNumbers
84 | {
85 | "status": 401,
86 | "error": "Unauthorized",
87 | "response": {
88 | "message": "Unauthorized"
89 | }
90 | }
91 | ```
92 |
93 | ### Request response status
94 |
95 | It is always prudent that you evaluate the response code for a call made to the Evolution API. By default, we follow the HTTP specification. You can refer to this link to understand the returned codes.
96 |
97 | In summary, some of the codes you will find in the vast majority of API calls are:
98 |
99 | #### 200 OK
100 |
101 | Indicates that the call was successful
102 |
103 | #### 401 Unauthorized
104 |
105 | Check your API token if it is being sent in the header as described here. Also check that it is an API v2 token, as tokens issued only for API v1 do not work in this version.
106 |
107 | #### 422 Unprocessable Entity
108 |
109 | We are unable to process the entity sent in your request. Check the endpoint documentation and response body to understand the errors that are causing it.
110 |
111 | #### 429 Too Many Requests
112 |
113 | Your requests are not being accepted due to the Request Limit.
114 |
115 | #### 500 Internal Server Error
116 |
117 | Some error has occurred within our system. Contact our team specifying the code of your request that is in the headers of your response so that we can understand the problem and provide a solution.
118 |
119 | ## Content-Type of requests
120 |
121 | API data submission and collection is done using json.
122 |
123 | So in both your request and response, the content-type will always be application/json.
124 |
125 | ## Objective
126 |
127 | The content of this documentation is designed to be easy to understand and implement, even for users who are not familiar with technical procedures or systems. Efforts have been made to be as didactic as possible, anticipating potential errors and suggesting likely solutions.
128 |
129 | ## Community Support
130 |
131 | For any inquiries, join our dedicated Discord Channel for individuals interested in Evolution-API. Visit [Evolution-API Discord](https://evolution-api.com/discord) for support and community discussions.
132 |
133 | ## Important Recommendations
134 |
135 | Before starting the installation, **please read all recommendation before installation**:
136 |
137 | 1. This script is based on the **DEBIAN distribution, version 11 LTS 64bits**.
138 | 2. Tests were not conducted on other distributions, versions, or VPSs other than Hetzner.
139 | 3. A clean VPS was used for testing, without any other apps or services installed, to avoid conflicts unrelated to the Evolution API.
140 | 4. **Local installation is not recommended**, regardless of the operating system.
141 | 5. **Avoid installations without using a reverse proxy**. Direct access through IP + Port (e.g., `http://0.0.0.0:8080`) is discouraged.
142 | 6. While some users have successfully installed in various scenarios (other providers, local installation, Windows installation, usage and access without reverse proxy), these may require additional steps like port forwarding, additional apps, or specific settings not covered in this tutorial.
143 | 7. Any installation method deviating from this tutorial is **AT THE USER'S OWN DISCRETION AND RESPONSIBILITY**.
144 |
145 | ### License
146 |
147 | This application is protected under the **GNU V3 Use License**.
148 |
149 | ## Overview
150 |
151 | - The GNU User License V3 ensures that this application is distributed under the terms of the GNU General Public License Version 3.
152 | - This means you have the rights to use, modify, and distribute this application under the terms outlined in the license.
153 | - The GNU V3 Use License promotes the freedom to share and change software, ensuring user access to the source code and the right to exercise their rights.
154 |
155 | **Please read the [GNU General Public License Version 3](https://www.gnu.org/licenses/gpl-3.0.html) carefully to understand your rights and obligations when using this application.**
156 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Optional resources/MongoDB.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: mongodb
3 | title: MongoDB
4 | hide_title: true
5 | hide_table_of_contents: false
6 | sidebar_label: MongoDB
7 | sidebar_position: 1
8 | pagination_label: MongoDB
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Setup an MongoBD database in your environment with Evolution API.
11 | keywords:
12 | - Optional Resources
13 | - MongoDB
14 | - Database
15 | # image: https://i.imgur.com/mErPwqL.png
16 | slug: /mongodb
17 | last_update:
18 | date: 12/19/2023
19 | author: matheus
20 | ---
21 |
22 | ## Setup a MongoDB database
23 |
24 | MongoDB, a NoSQL database, is known for high performance and scalability. It's ideal for handling large data volumes in the Evolution API.
25 |
26 | Set the MongoDB environment variables in the `.env` for Docker or the `dev-env.yml` for NPM file as follows:
27 |
28 | ```yaml title=".env or dev-env.yml" showLineNumbers
29 | # Set to true to enable MongoDB.
30 | DATABASE_ENABLED=true
31 | # Your MongoDB connection string.
32 | DATABASE_CONNECTION_URI=mongodb://user:password@database_URL/?authSource=admin&readPreference=primary&ssl=false&directConnection=true
33 | # Prefix for your database name.
34 | DATABASE_CONNECTION_DB_PREFIX_NAME=evo
35 | ```
36 |
37 | ## Data migration
38 |
39 | Switching from local storage to MongoDB will not automatically transfer your WhatsApp instances that are currently synchronized with the original local storage.
40 |
41 | :::tip Beta: Data Migration
42 |
43 | Make sure that you already have an MongoDB instance running with a database created.
44 |
45 | :::
46 |
47 | ## Migrate your data in NPM or NVM
48 |
49 | Stop the PM2 execution:
50 |
51 | **Flush and Stop**: Clears all logs from PM2, useful for troubleshooting after the update and temporarily stops the Evolution API to safely apply updates.
52 |
53 | ```bash title="CLI"
54 | # Clear all PM2 logs
55 | pm2 flush
56 |
57 | # Stop the current Evolution API process
58 | pm2 stop ApiEvolution
59 | ```
60 |
61 | **Evolution API directory**: access your directory installation with the following command:
62 |
63 | ```bash
64 | cd evolution-api
65 | ```
66 |
67 | **Migrate command**: Run the migration command in the installation directory:
68 |
69 | ```bash title="/evolution-api/"
70 | npx evolution-manager api migrate-to-mongo
71 | ```
72 |
73 | Follow the script steps and migrate specific WhatsApp instances or all your instances.
74 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Optional resources/Redis.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: redis
3 | title: Redis
4 | hide_title: true
5 | hide_table_of_contents: false
6 | sidebar_label: Redis
7 | sidebar_position: 4
8 | pagination_label: Redis
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Setup an Redis in your environment with Evolution API.
11 | keywords:
12 | - Optional Resources
13 | - Redis
14 | - Database
15 | # image: https://i.imgur.com/mErPwqL.png
16 | # slug: /myDoc
17 | last_update:
18 | date: 12/19/2023
19 | author: matheus
20 | ---
21 |
22 | ## Setup Redis Cache
23 |
24 | :::warning Deprecation of Redis
25 |
26 | Redis will be deprecated in future versions of Evolution API, we do not recommend Redis installation anymore.
27 |
28 | :::
29 |
30 | Redis is an in-memory data structure store, used as a database, cache, and message broker. It supports data structures such as strings, hashes, lists, sets, and more. Incorporating Redis can significantly improve the performance of Evolution API by enabling faster data access and efficient caching.
31 |
32 | Set the Redis environment variables in the `.env` for Docker or the `dev-env.yml` for NPM file as follows:
33 |
34 | ```yaml title=".env or dev-env.yml" showLineNumbers
35 | # Set to true to enable Redis.
36 | REDIS_ENABLED=false
37 | # Your Redis server URI.
38 | REDIS_URI=redis://redis:6379
39 | # Prefix key for Redis data.
40 | REDIS_PREFIX_KEY=evo
41 | ```
42 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Optional resources/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "position": 3,
3 | "label": "Optional resources",
4 | "collapsible": true,
5 | "collapsed": false,
6 | "className": "Resources",
7 | "link": {
8 | "type": "generated-index",
9 | "title": "Optional resources"
10 | },
11 | "customProps": {
12 | "description": "Resources that can be useful in your environment to extend Evolution functionalities."
13 | }
14 | }
--------------------------------------------------------------------------------
/docs/01-Get Started/Release notes.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: release-notes
3 | title: Release notes
4 | hide_title: false
5 | hide_table_of_contents: false
6 | sidebar_label: Release notes
7 | sidebar_position: 7
8 | pagination_label: Releases
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Latest releases of Evolution API
11 | # image: https://i.imgur.com/mErPwqL.png
12 | slug: /release-notes
13 | last_update:
14 | date: 12/12/2023
15 | author: matheus
16 | keywords:
17 | - Updates
18 | - Releases
19 | - Versions
20 | ---
21 |
22 | New features and bug fixes for Evolution API.
23 |
24 | You can also view the Releases in the [GitHub repository](https://github.com/EvolutionAPI/evolution-api/releases).
25 |
26 | ## How to update Evolution API
27 |
28 | The steps to update your Evolution depend on which platform you use. Refer to the documentation for your Evolution:
29 |
30 | - Upgrade & Update
31 |
32 | - [Docker](/docs/01-Get%20Started/Update.md/#update-with-docker-cli)
33 |
34 | - [Portainer](/docs/01-Get%20Started/Update.md/#update-with-portainer)
35 |
36 | - [NPM](/docs/01-Get%20Started/Update.md/#update-with-npm)
37 |
38 | ## Tags
39 |
40 | ### Docker
41 |
42 | There is two main tags used in Docker, `latest` and `homolog`.
43 |
44 | - **Latest**: this image contains the most stable version, recommended in most cases.
45 | - **Homolog**: test and feature implementation, also referred as next version. This version may be not stable and is not recommended for production environments.
46 |
47 | ### Github
48 |
49 | There is two main branches/tags used in github, `main` and `homolog`.
50 |
51 | - **main**: most stable version, recommended in most cases.
52 | - **Homolog**: Test and feature implementation, also referred as next version. This version may be not stable and is not recommended for production environments.
53 |
54 | ## Versions nomenclature
55 |
56 | Evolution uses semantic versioning. All version numbers are in the format MAJOR.MINOR.PATCH. Version numbers increment as follows:
57 |
58 | - **Major** version when making incompatible changes which potentially require user action.
59 | - **Minor** version when adding functionality in a backward-compatible manner.
60 | - **Patch** version when making backward-compatible bug fixes.
61 |
62 | :::info
63 |
64 | This is the `latest` version, the most stable as of right now. We recommend uses of the `latest` version instead of `homolog` for stability reasons.
65 |
66 | :::
67 |
68 | import UpdatesComponent from '@site/src/components/UpdatesComponent';
69 |
70 |
71 |
--------------------------------------------------------------------------------
/docs/01-Get Started/Update.md:
--------------------------------------------------------------------------------
1 | ---
2 | id: Updates
3 | title: Updates
4 | hide_title: false
5 | hide_table_of_contents: false
6 | sidebar_label: Updates
7 | sidebar_position: 8
8 | pagination_label: Updates
9 | # custom_edit_url: https://github.com/facebook/docusaurus/edit/main/docs/api-doc-markdown.md
10 | description: Update your Evolution API instances
11 | # image: https://i.imgur.com/mErPwqL.png
12 | slug: /update
13 | last_update:
14 | date: 12/12/2023
15 | author: matheus
16 | keywords:
17 | - Updates
18 | ---
19 |
20 | Keeping your Evolution API instance up-to-date is crucial for security, performance, and accessing new features. The update method depends on how you initially installed the API. This guide covers the steps for updating your Evolution API using Docker Compose and NPM.
21 |
22 | :::warning
23 |
24 | Before updating Evolution make sure that all the integrated apps are really working with Evolution, update at your own risk.
25 |
26 | :::
27 |
28 | ## Update with Docker
29 |
30 | If you initially set up your Evolution API using Docker, follow these steps to update:
31 |
32 | ### Update with Docker CLI
33 |
34 | If your Evolution API was initially installed using Docker Compose via the command line interface (CLI), and not through Portainer or any other container management tool, follow these steps to update it:
35 |
36 | 1. **Navigate to Docker Compose Directory**: Open a terminal and go to the directory where your Docker Compose file (`docker-compose.yml`) is located.
37 |
38 | 2. **Pull the Latest Image**: Update the Evolution API image to the latest version by running the following command:
39 |
40 | ```bash title="CLI"
41 | docker-compose pull atendai/evolution-api:latest
42 | ```
43 |
44 | 3. **Stop and Restart the Containers**: After pulling the latest image, stop the current containers and restart them. This can be done using the following command:
45 |
46 | ```bash title="CLI"
47 | docker-compose down && docker-compose up -d
48 |
49 | ```
50 |
51 | ## Update with Portainer
52 |
53 | If you're using Portainer for container management, follow these steps to update your Evolution API:
54 |
55 | 1. **Access Portainer Dashboard**: Open your Portainer dashboard in a web browser.
56 |
57 | 2. **Navigate to Your Containers**: Go to the 'Stacks' section where your Evolution API container is listed.
58 |
59 |
60 |
61 | 3. **Update the Compose**:
62 | - Locate the `image` field in your Docker Compose configuration.
63 |
64 | ```yaml title="https://portainer.yourdomain.com/#!/1/docker/stacks/evolution" showLineNumbers
65 | # ... (other services and configurations)
66 |
67 | evolution_api:
68 | # Update the Evolution API image version here
69 | # Use 'atendai/evolution-api:latest' for the latest version
70 | # Or specify a specific version like 'atendai/evolutionapi:v1.6.0'
71 | # highlight-next-line
72 | image: atendai/evolution-api:v1.x.x
73 | networks:
74 | - your_network
75 |
76 | # ... (rest of the Docker Compose configuration)
77 | ```
78 |
79 | - Update the value to `atendai/evolution-api:latest` for the latest version, or use `atendai/evolutionapi:v1.x.x` for a specific version.
80 | - After making the changes, click the 'Deploy' button at the end of the edit compose window.
81 |
82 |
83 |
84 | 4. **Verify the Update**: After recreating the container, check to ensure Evolution API is running the latest version. This can typically be verified through the API's version endpoint or logs.
85 |
86 | :::note Production Environment Recommendation
87 | For production environments, it's advisable to specify a particular version of the Evolution API (e.g., `atendai/evolution-api:v1.x.x`) rather than using `latest`.
88 |
89 | This practice ensures stability and predictability, as it protects your production environment from potential issues arising from unexpected changes in the latest version.
90 | :::
91 |
92 | By following these steps, you can ensure your Evolution API is always up to date using Portainer.
93 |
94 | ## Update with NPM
95 |
96 | Updating your Evolution API installation via NPM involves several steps to ensure a smooth transition to the new version. Here's a step-by-step guide:
97 |
98 | 1. **Flush and Stop**: Clears all logs from PM2, useful for troubleshooting after the update and temporarily stops the Evolution API to safely apply updates.
99 |
100 | ```bash title="CLI"
101 | # Clear all PM2 logs
102 | pm2 flush
103 |
104 | # Stop the current Evolution API process
105 | pm2 stop ApiEvolution
106 | ```
107 |
108 | 2. **Reset local repository and pull the latest updates**: Ensures your local codebase is in sync with the latest commit and downloads the latest updates from the repository. Optionally, switch to a specific version if not using the latest. It's recommended for production environments.
109 |
110 | ```bash title="CLI"
111 | # Reset your local repository to the latest commit
112 | git reset --hard HEAD
113 |
114 | # Pull the latest updates from the repository
115 | git pull
116 |
117 | # For a specific version, use either 'git checkout main' for the latest,
118 | # or 'git checkout 1.x.x' for a specific version. Example:
119 | # highlight-next-line
120 | git checkout 1.x.x
121 | ```
122 |
123 | 3. **Clean Installation**: Removes existing `node_modules` to prevent potential conflicts with new dependencies and installs the required Node.js dependencies for the updated version.
124 |
125 |
126 | ```bash title="CLI"
127 | # Remove the current node_modules directory to ensure clean installation
128 | rm -rf node_modules
129 |
130 | # Install dependencies with NPM
131 | npm i
132 |
133 | # Restart the Evolution API with the updated version
134 | pm2 start ApiEvolution
135 |
136 | # Optionally, view the PM2 logs for the Evolution API
137 | pm2 log ApiEvolution
138 | ```
139 |
--------------------------------------------------------------------------------
/docs/01-Get Started/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "position": 1,
3 | "label": "Get Started",
4 | "collapsible": true,
5 | "collapsed": false,
6 | "className": "get-started",
7 | "link": {
8 | "type": "generated-index",
9 | "title": "Get Started"
10 | },
11 | "customProps": {
12 | "description": "Start exploring EvolutionAPI"
13 | }
14 | }
--------------------------------------------------------------------------------
/docs/01-Get Started/_updates.js:
--------------------------------------------------------------------------------
1 | export const updates = [
2 | {
3 | version: "1.7.0",
4 | description: "Added support to oficial WhatsApp integration, new update message endpoint, labels and more.",
5 | releaseDate: "2024-03-11",
6 | features: [
7 | "Added update message endpoint",
8 | "Add translate capabilities to QRMessages in CW",
9 | "Join in Group by Invite Code",
10 | "Read messages from whatsapp in chatwoot",
11 | "Add support to use use redis in cacheservice",
12 | "Add support for labels",
13 | "Command to clearcache from chatwoot inbox",
14 | "Whatsapp Cloud API Oficial support",
15 | ],
16 | fixes: [
17 | "Proxy configuration improvements",
18 | "Correction in sending lists",
19 | "Adjust in webhook_base64",
20 | "Correction in typebot text formatting",
21 | "Correction in chatwoot text formatting and render list message",
22 | "Only use a axios request to get file mimetype if necessary",
23 | "When possible use the original file extension",
24 | "When receiving a file from whatsapp, use the original filename in chatwoot if possible",
25 | "Remove message ids cache in chatwoot to use chatwoot's api itself",
26 | "Adjusts the quoted message, now has contextInfo in the message Raw",
27 | "Collecting responses with text or numbers in Typebot",
28 | "Added sendList endpoint to swagger documentation",
29 | "Implemented a function to synchronize message deletions on WhatsApp, automatically reflecting in Chatwoot.",
30 | "Improvement on numbers validation",
31 | "Fix polls in message sending",
32 | "Sending status message",
33 | "Message 'connection successfully' spamming",
34 | "Invalidate the conversation cache if reopen_conversation is false and the conversation was resolved",
35 | "Fix looping when deleting a message in chatwoot",
36 | "When receiving a file from whatsapp, use the original filename in chatwoot if possible",
37 | "Correction in the sendList Function",
38 | "Implement contact upsert in messaging-history.set",
39 | "Improve proxy error handling",
40 | "Refactor fetching participants for group in WhatsApp service",
41 | "Fixed problem where the typebot final keyword did not work",
42 | "Typebot's wait now pauses the flow and composing is defined by the delay_message parameter in set typebot",
43 | "Composing over 20s now loops until finished"
44 | ],
45 | integrations: [
46 | "Chatwoot: v3.5.2",
47 | "Typebot: v2.23.0"
48 | ],
49 | commits: "",
50 | },
51 | {
52 | version: "1.6.1",
53 | description: "This is a minor fix update. Version 1.6.1 introduces fixes for message handling, Typebot integration, media sharing, text formatting in Chatwoot, and instance management. It also adds customization options and resolves reconnection issues with MongoDB.",
54 | releaseDate: "2023-12-15",
55 | features: [
56 | "Added AWS SQS Integration",
57 | "Added support for new typebot API",
58 | "Added endpoint sendPresence",
59 | "New Instance Manager",
60 | "Added auto_create to the chatwoot set to create the inbox automatically or not",
61 | "Added reply, delete and message reaction in chatwoot v3.3.1"
62 | ],
63 | fixes: [
64 | "Fixed Lid Messages",
65 | "Fixed the pairing code",
66 | "Adjusts in typebot",
67 | "Fixed sending variables to typebot",
68 | "Fixed sending variables from typebot",
69 | "Options to disable docs and manager",
70 | "Correction sending s3/minio media to chatwoot and typebot",
71 | "Fixed chatwoot Bold, Italic and Underline formatting using Regex",
72 | "Include instance Id field in the instance configuration",
73 | "Fix the problem when disconnecting the instance and connecting again using mongodb",
74 | "Fixed the problem with typebot closing at the end of the flow, now this is optional with the TYPEBOT_KEEP_OPEN variable",
75 | "Added the sign_delimiter property to the Chatwoot configuration, allowing you to set a different delimiter for the signature. Default when not defined \n",
76 | ],
77 | integrations: [
78 | "Chatwoot: v3.3.1",
79 | "Typebot: v2.20.0"
80 | ],
81 | commits: "",
82 | }, {
83 | version: "1.6.0",
84 | description: "New Instance manager available on endpoint /manager and support for reply messages in Chatwoot, better error handling and more...",
85 | releaseDate: "2023-10-12",
86 | features: [
87 | "Adjusting function cleaningStoreFiles to remove itens from missing…",
88 | "Handle optional chaining for 'settings.msg_call', this change prevent…",
89 | "Handle erros in Typebot",
90 | "Add session creation for typebot service",
91 | "Add sendPresence",
92 | "Add Manager",
93 | ],
94 | fixes: [
95 | "Removed await from webhook when sending a message",
96 | "messages not received: error handling when updating contact",
97 | "workaround to manage param data as an array in mongodb",
98 | "chatwoot find",
99 | "only create if is paused",
100 | "size of group participants",
101 | ],
102 | integrations: [
103 | "Chatwoot: v3.3.1",
104 | "Typebot: v2.19.0"
105 | ],
106 | commits: "",
107 | },
108 | {
109 | version: "1.5.4",
110 | description: "Baileys logger typing issue resolved and resolved duplicated messages problems in Chatwoot",
111 | releaseDate: "2023-10-12",
112 | features: [
113 |
114 | ],
115 | fixes: [
116 |
117 | ],
118 | integrations: [
119 |
120 | ],
121 | commits: "",
122 | }
123 | ]
124 |
125 |
--------------------------------------------------------------------------------
/docs/02-Configuration/Availiable rersources.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 2
3 | description: Available resources that Evolution API covers at now.
4 | ---
5 |
6 | # Available Resources
7 |
8 | ## MESSAGING & GROUP FEATURES
9 |
10 | ### Messages (Individual or Group)
11 |
12 |
13 | | Feature | Availability | Description |
14 | |-:|:-:|-|
15 | | Send Text | ✅ | (Plain, bold, italic, strikethrough, monospaced text and emojis) |
16 | | Send Media | ✅ | (Vídeo, image and document) |
17 | | Send Narrated Audio | ✅ | (Working fine in Android and iOS) |
18 | | Send Location | ✅ | (With name and description of the place) |
19 | | Send Contact | ✅ | (With Name, Company, Phone, Email and Url) |
20 | | Send Reaction | ✅ | (Send any emoji for reaction) |
21 | | Send Link Preview | ✅ | (Searching for SEO information) 🆕 |
22 | | Send Reply | ✅ | (Mark messages in reply) 🆕 |
23 | | Send Mention | ✅ | (Individual, some or all members) 🆕 |
24 | | Send Poll Message | ✅ | (Send and receive votes from a poll) 🆕 |
25 | | Send Status/Storie | ✅ | (Text, linkpreview, vídeo, image and waveform) 🆕 |
26 | | Send Sticker | ✅ | (Static Image) 🆕 |
27 | | Send List (Homolog) | ✅ | (Testing) |
28 | | Send Buttons (Deprecated) | ❌ | (Only works on Cloud API) |
29 |
30 | ### Profile
31 |
32 | | Feature | Availability | Description |
33 | | -----------------: | :----------: | ----------------------------------------- |
34 | | Update Name | ✅ | (Change the connected profile name) |
35 | | Update Picture | ✅ | (Change the connected profile picture) 🆕 |
36 | | Update Status | ✅ | (Change the connected profile status) 🆕 |
37 | | And many others... | | |
38 |
39 | ### Group
40 |
41 | | Feature | Availability | Description |
42 | | -----------------: | :----------: | -------------------------------------- |
43 | | Create Group | ✅ | (New groups) |
44 | | Update Picture | ✅ | (Change group picture) |
45 | | Update Subject | ✅ | (Change group name) 🆕 |
46 | | Update Description | ✅ | (Change group description) 🆕 |
47 | | Fetch All Groups | ✅ | (Fetch all groups and participants) 🆕 |
48 | | And many others... | | |
49 |
--------------------------------------------------------------------------------
/docs/02-Configuration/Postman collection.md:
--------------------------------------------------------------------------------
1 | # Postman Variables
2 |
3 | All Evolution API events are updated first on postman.
4 |
5 | :::info
6 | Check out all available Rest API endpoints from EvolutionAPI:
7 | [Postman/EvolutionAPI](https://www.postman.com/agenciadgcode/workspace/evolution-api/overview)
8 |
9 | :::
10 |
--------------------------------------------------------------------------------
/docs/02-Configuration/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "label": "Configuration"
3 | }
--------------------------------------------------------------------------------
/docs/03-Instance contoller/01-instance-connect.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 1
3 | ---
4 |
5 | # Instance Connect
6 |
7 | | Method | Endpoint |
8 | | ------ | ----------------------------------------- |
9 | | GET | [baseUrl]/instance/connect[instance] |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | {
21 | "code": "[code]",
22 | "base64": "[base64]
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/02-fetch-instances.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 2
3 | ---
4 |
5 | # Fetch Instances
6 |
7 | | Method | Endpoint |
8 | | ------ | ----------------------------------- |
9 | | GET | [baseUrl]/instance/fetchInstances |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | [
21 | {
22 | "instance": {
23 | "instanceName": "[instance]",
24 | "owner": "[remoteJid]",
25 | "profileName": "[pushName]",
26 | "profilePictureUrl": "[profilePictureUrl]",
27 | "profileStatus": "[profileStatus]",
28 | "status": "open",
29 | "apikey": "[apikey]"
30 | }
31 | },
32 | {
33 | "instance": {
34 | "instanceName": "[instance]",
35 | "status": "connecting",
36 | "apikey": "[apikey]"
37 | }
38 | }
39 | ]
40 | ```
41 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/03-restart-instance.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 3
3 | ---
4 |
5 | # Restart Instance
6 |
7 | | Method | Endpoint |
8 | | ------ | ----------------------------------------- |
9 | | PUT | [baseUrl]/instance/restart/[instance] |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | {
21 | "state": "[state]",
22 | "statusReason": [statusCode]
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/04-connection-status.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 4
3 | ---
4 |
5 | # Connection Status
6 |
7 | | Method | Endpoint |
8 | | ------ | ------------------------------------------------- |
9 | | GET | [baseUrl]/instance/connectionState/[instance] |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | {
21 | "state": "[state]",
22 | "statusReason": [statusCode]
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/05-logout-instance.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 5
3 | ---
4 |
5 | # Logout Instance
6 |
7 | | Method | Endpoint |
8 | | ------ | ---------------------------------------- |
9 | | DELETE | [baseUrl]/instance/logout/[instance] |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | {
21 | "error": "[error]",
22 | "message": "[message]"
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/06-delete-instance.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 6
3 | ---
4 |
5 | # Delete Instance
6 |
7 | | Method | Endpoint |
8 | | ------ | ---------------------------------------- |
9 | | DELETE | [baseUrl]/instance/delete/[instance] |
10 |
11 | ### Data to be sent in the Request
12 |
13 | ```json title=Payload
14 | This request has no payload.
15 | ```
16 |
17 | ### Data returned from the Request
18 |
19 | ```json title=Result
20 | {
21 | "error": "[error]",
22 | "message": "[message]"
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/docs/03-Instance contoller/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "label": "Instance Controller"
3 | }
--------------------------------------------------------------------------------
/docs/05-Endpoints/00-send-plain-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 0
3 | ---
4 |
5 | # Send Plain Text
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ----------------------------------------- |
13 | | POST | [baseUrl]/message/sendText/[instance] |
14 |
15 | Send text messages using the same features as your device or web.
16 |
17 | ### Data to be sent in the Request
18 |
19 | ```json title=Payload
20 | {
21 | "number": "[remoteJid]",
22 | "options": {
23 | "delay": 1200,
24 | "presence": "composing"
25 | },
26 | "textMessage": {
27 | "text": "Plain text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
28 | }
29 | }
30 | ```
31 |
32 | ### Data returned from the Request
33 |
34 | ```json title=Result
35 | {
36 | "key": {
37 | "remoteJid": "[remoteJid]",
38 | "fromMe": true,
39 | "id": "BAE5B8BC84A484E3"
40 | },
41 | "message": {
42 | "extendedTextMessage": {
43 | "text": "Plain text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
44 | }
45 | },
46 | "messageTimestamp": "1689604487",
47 | "status": "PENDING"
48 | }
49 | ```
50 |
51 | ### Explanation of Parameters
52 |
53 |
54 | Parameter | Type | Description
55 | --|--|--
56 | remoteJid | Required | Enter the remoteJid or groupJid to whom the message will be sent.
_remoteJid = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
**groupJid** = Accepts the group identifier in hash format for new groups, or remoteJid + "-" + timestamp for old groups. In this cases, it is mandatory to inform the @g.us ending.
Ex: 120363024158769234@g.us or 5511911111111-1111111111@g.us_
57 | options.delay | Optional | Time in milliseconds that the message must wait until it is sent, showing the presence information configured in the next item.
58 | options.presence | Optional | The "composing" content will make the message "typing" appear in the WhatsApp™ top menu, during the time defined in the previous item.
59 | textMessage.text | Required | Inform the text of the message you want to send, being able to use the same resources you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
_To break a line, enter "\n" in the message._
Check the example in the payload for better understanding.
60 |
61 | :::note Note:
62 | Every message sent by the Evolution API initially has the status PENDING.
63 |
64 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
65 | :::
66 |
67 | :::danger Warning:
68 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
69 |
70 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
71 | :::
72 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/01-send-reply-quote-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 1
3 | ---
4 |
5 | # Send Reply Quote Text
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ----------------------------------------- |
13 | | POST | [baseUrl]/message/sendText/[instance] |
14 |
15 | Send a message quoting a previous message in the reply.
16 |
17 | It works both for incoming messages and for quoting your own outgoing messages if you want to remind the recipient of a previously discussed subject.
18 |
19 | ### Data to be sent in the Request
20 |
21 | ```json title=Payload
22 | {
23 | "number": "[remoteJid]",
24 | "options": {
25 | "delay": 1200,
26 | "presence": "composing",
27 | "quoted": {
28 | "key": {
29 | "remoteJid": "[remoteJid]@s.whatsapp.net",
30 | "fromMe": true,
31 | "id": "BAE5766236A2AEFF",
32 | "participant": ""
33 | },
34 | "message": {
35 | "conversation": "Plain text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
36 | }
37 | }
38 | },
39 | "textMessage": {
40 | "text": "Reply quote text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
41 | }
42 | }
43 | ```
44 |
45 | ### Data returned from the Request
46 |
47 | ```json title=Result
48 | {
49 | "key": {
50 | "remoteJid": "[remoteJid]@s.whatsapp.net",
51 | "fromMe": true,
52 | "id": "BAE5FA1CB273B533"
53 | },
54 | "message": {
55 | "extendedTextMessage": {
56 | "text": "Reply quote text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏",
57 | "contextInfo": {
58 | "stanzaId": "BAE5766236A2AEFF",
59 | "participant": "[remoteJid]@s.whatsapp.net",
60 | "quotedMessage": {
61 | "conversation": "Plain text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
62 | }
63 | }
64 | }
65 | },
66 | "messageTimestamp": "1689608179",
67 | "status": "PENDING"
68 | }
69 | ```
70 |
71 | ### Explanation of Parameters
72 |
73 |
74 | Parameter | Type | Description
75 | -|-|-
76 | remoteJid | Required | Enter the remoteJid or groupJid to whom the message will be sent.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
**groupJid** = Accepts the group identifier in hash format for new groups, or remoteJid + "-" + timestamp for old groups. In this case, it is mandatory to inform the @g.us ending.
Ex: 120363024158769234@g.us or 5511911111111-1111111111@g.us
77 | options.delay | Optional | Time in milliseconds that the message must wait until it is sent, showing the presence information configured in the next item.
78 | options.presence | Optional | The "composing" content will make the message "typing" appear in the WhatsApp™ top menu, during the time defined in the previous item.
79 | options.quoted.key.remoteJid | Required | Take this information from the remoteJid in the key of the object of the message to be quoted.
80 | options.quoted.key.fromMe | Required | Take this information from the remoteJid in the key of the object of the message to be quoted.
81 | options.quoted.key.id | Required | Take this information from the remoteJid in the key of the object of the message to be quoted.
82 | options.quoted.key.participant | Required | Take this information from the remoteJid in the key of the object of the message to be quoted.
83 | options.quoted.message.conversation | Required | Take this information from the remoteJid in the key of the object of the message to be quoted.
84 | textMessage.text | Required | Inform the text of the message you want to send, being able to use the same resources you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
_To break a line, enter "\n" in the message._
Check the example in the payload for better understanding.
85 |
86 | :::note Note:
87 | Every message sent by the Evolution API initially has the status PENDING.
88 |
89 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
90 | :::
91 |
92 | :::danger Warning:
93 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
94 |
95 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
96 | :::
97 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/02-send-mention-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 2
3 | ---
4 |
5 | # Send Mention Text
6 |
7 | :::note Instructions:
8 |
9 | Swap the existing content between [ ] for whatever matches your scenario or need.
10 | :::
11 |
12 | | Method | Endpoint |
13 | | ------ | ----------------------------------------- |
14 | | POST | [baseUrl]/message/sendText/[instance] |
15 |
16 | Send a message in a group, mentioning one or several participants, without the need to include @name in the message content.
17 |
18 | :::info Note:
19 | Use this feature sparingly, as in a group where participants have chosen to mute notifications, they will still be notified and tagged with the @.
20 |
21 | Excessive use in a group with many members in this condition may cause dissatisfaction and result in an effect contrary to the desired one.
22 | :::
23 |
24 | ### Data to be sent in the Request
25 |
26 | ```json title=Payload
27 | {
28 | "number": "[groupJid]",
29 | "options": {
30 | "delay": 1200,
31 | "presence": "composing",
32 | "mentions": {
33 | "everyOne": false,
34 | "mentioned": ["[remoteJid]"]
35 | }
36 | },
37 | "textMessage": {
38 | "text": "Mention text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
39 | }
40 | }
41 | ```
42 |
43 | ### Data returned from the Request
44 |
45 | ```json title=Result
46 | {
47 | "key": {
48 | "remoteJid": "[groupJid]",
49 | "fromMe": true,
50 | "id": "BAE500F92531D3E2"
51 | },
52 | "message": {
53 | "extendedTextMessage": {
54 | "text": "Mention text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏",
55 | "contextInfo": {
56 | "mentionedJid": ["[remoteJid]@s.whatsapp.net"]
57 | }
58 | }
59 | },
60 | "messageTimestamp": "1689620558",
61 | "status": "PENDING",
62 | "participant": "[sender]@s.whatsapp.net"
63 | }
64 | ```
65 |
66 | ### Explanation of Parameters
67 |
68 |
69 | Parameter | Type | Description
70 | --- | --- | ---
71 | number | Required | Enter the groupJid to whom the message will be sent.
**groupJid** = Accepts the group identifier in hash format for new groups, or remoteJid + "-" + timestamp for old groups. In this case, it is mandatory to inform the @g.us ending.
Ex: 120363024158769234@g.us or 5511911111111-1111111111@g.us
72 | options.delay | Optional | Time in milliseconds that the message must wait until it is sent, showing the presence information configured in the next item.
73 | options.presence | Optional | The "composing" content will make the message "typing" appear in the WhatsApp™ top menu, during the time defined in the previous item.
74 | options.mentions.everyOne | Required | To mention one or more participants, enter "false".
Accepted values are "true" or "false".
To mention all, it will be explained in the next item.
75 | options.mentions.mentioned | Required | Enter the remoteJid of one or more participants that will be mentioned in the group.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
If you want to inform more than one participant, just separate the contacts with commas, as in the example below:
- 551191111111, - 5511922222222, - 5511933333333
76 | textMessage.text | Required | Inform the text of the message you want to send, being able to use the same resources you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
To break a line, enter "\n" in the message.
_Check the example in the payload for better understanding._
77 |
78 | :::note Note:
79 | Every message sent by the Evolution API initially has the status PENDING.
80 |
81 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
82 | :::
83 |
84 | :::danger Warning:
85 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
86 |
87 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
88 | :::
89 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/03-send-ghost-mention-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 3
3 | ---
4 |
5 | # Send Ghost Mention Text
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ----------------------------------------- |
13 | | POST | [baseUrl]/message/sendText/[instance] |
14 |
15 | Send a message in a group, mentioning ALL participants, without the need to include @name in the message content.
16 |
17 | :::info Note:
18 | Use this feature sparingly, as in a group where participants have chosen to mute notifications, they will still be notified and tagged with the @.
19 |
20 | Excessive use in a group with many members in this condition may cause dissatisfaction and result in an effect contrary to the desired one.
21 | :::
22 |
23 | ### Data to be sent in the Request
24 |
25 | ```json title=Payload
26 | {
27 | "number": "[groupJid]",
28 | "options": {
29 | "delay": 1200,
30 | "presence": "composing",
31 | "mentions": {
32 | "everyOne": true
33 | }
34 | },
35 | "textMessage": {
36 | "text": "Ghost mention text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏"
37 | }
38 | }
39 | ```
40 |
41 | ### Data returned from the Request
42 |
43 | ```json title=Result
44 | {
45 | "key": {
46 | "remoteJid": "[groupJid]",
47 | "fromMe": true,
48 | "id": "BAE59EF61E567741"
49 | },
50 | "message": {
51 | "extendedTextMessage": {
52 | "text": "Ghost mention text message, sent with the _Evolution-API_ 🚀.\n\nHere you can send texts in *bold*, _italic_, ~strikethrough~ and `monospaced`.\n\nYou can also use any available emoticon on WhatsApp, like these examples below:\n\n😉🤣🤩🤝👏👍🙏",
53 | "contextInfo": {
54 | "mentionedJid": [
55 | "[remoteJid]1@s.whatsapp.net",
56 | "[remoteJid]2@s.whatsapp.net",
57 | "[remoteJid]3@s.whatsapp.net",
58 | "[remoteJid]4@s.whatsapp.net",
59 | "[remoteJid]5@s.whatsapp.net"
60 | ]
61 | }
62 | }
63 | },
64 | "messageTimestamp": "1689617824",
65 | "status": "PENDING",
66 | "participant": "[sender]@s.whatsapp.net"
67 | }
68 | ```
69 |
70 | ### Explanation of Parameters
71 |
72 |
73 | Parameter | Type | Description
74 | -|-|-
75 | number | Required | Enter the groupJid to whom the message will be sent.
**groupJid** = Accepts the group identifier in hash format for new groups, or remoteJid + "-" + timestamp for old groups. In this case, it is mandatory to inform the @g.us ending.
Ex: 120363024158769234@g.us or 5511911111111-1111111111@g.us
76 | options.delay | Optional | Time in milliseconds that the message must wait until it is sent, showing the presence information configured in the next item.
77 | options.presence | Optional | The "composing" content will make the message "typing" appear in the WhatsApp™ top menu, during the time defined in the previous item.
78 | options.mentions.everyOne | Required | To mention ALL participants, enter "true".
Accepted values are "true" or "false".
To name one or more, it was explained in the previous item.
79 | textMessage.text | Required | Inform the text of the message you want to send, being able to use the same resources you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
To break a line, enter "\n" in the message.
_Check the example in the payload for better understanding._
80 |
81 | :::note Note:
82 | Every message sent by the Evolution API initially has the status PENDING.
83 |
84 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
85 | :::
86 |
87 | :::danger Warning:
88 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
89 |
90 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
91 | :::
92 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/04-send-status_stories-text_url.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 4
3 | ---
4 |
5 | # Send Status/Stories Text/Url
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ------------------------------------------- |
13 | | POST | [baseUrl]/message/sendStatus/[instance] |
14 |
15 | Send a text or url (clickable) Status/Stories to one, some or all contacts in your list.
16 |
17 | ### Data to be sent in the Request
18 |
19 | ```json title=Payload
20 | {
21 | "statusMessage": {
22 | "type": "text",
23 | "content": "Hi, how are you today? 😉👍\n\nSee more in\n\nhttps://evolution-api.com/",
24 | "backgroundColor": "#008000",
25 | "font": 1,
26 | "allContacts": false,
27 | "statusJidList": ["[remoteJid]@s.whatsapp.net"]
28 | }
29 | }
30 | ```
31 |
32 | ### Data returned from the Request
33 |
34 | ```json title=Result
35 | {
36 | "key": {
37 | "remoteJid": "status@broadcast",
38 | "fromMe": true,
39 | "id": "BAE59F76997142F0"
40 | },
41 | "message": {
42 | "extendedTextMessage": {
43 | "text": "Hi, how are you today? 😉👍\n\nSee more in\n\nhttps://evolution-api.com/",
44 | "matchedText": "https://evolution-api.com/",
45 | "canonicalUrl": "https://evolution-api.com/opensource-whatsapp-api/",
46 | "title": "OpenSource WhatsApp API – Evolution API",
47 | "backgroundArgb": 4278222848,
48 | "font": "SERIF",
49 | "previewType": "NONE",
50 | "thumbnailDirectPath": "/o1/v/t62.7118-24/f1/m230/up-oil-image-bae65e3e-9813-4686-99a5-53ab5e2336c7?ccb=9-4&oh=01_AdRENApzu4pB-Y6VDbbGWfD6w91B1rmxgveUJH_cCmt0Hg&oe=64DCEF1B",
51 | "thumbnailSha256": "QcKPDG2Bk+d3fPceiuS1cnGuBNgv/8hHM4UgcwYMtKk=",
52 | "thumbnailEncSha256": "UpEq8UfeJuT2/0A2nS7vEEIUZzIi+SmOydvvWQthzAs=",
53 | "mediaKey": "KXuIeKYSqsHVD8uxEoHnQPjXuADqTVCtfuI35zbmVxc=",
54 | "mediaKeyTimestamp": "1689621677",
55 | "thumbnailHeight": 0,
56 | "thumbnailWidth": 0
57 | }
58 | },
59 | "messageTimestamp": "1689621677",
60 | "status": "PENDING",
61 | "participant": "[sender]@s.whatsapp.net"
62 | }
63 | ```
64 |
65 | ### Explanation of Parameters
66 |
67 |
68 | Parameter | Type | Description
69 | -|-|-
70 | statusMessage.type | Required | Inform text, to send text messages or clickable url's.
71 | statusMessage.content | Required | Inform the text of the message you want to send, being able to use the same resources you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
To break a line, enter "\n" in the message.
_Check the example in the payload for better understanding._
72 | statusMessage.backgroundColor | Required | Enter the color you want for the status/stories background, using the Hex Color Code.
Examples:
#FFFFFF = White #0000FF = Blue #008000 = Green #FFFF00 = Yellow #FF0000 = Red #800080 = Purple #808080 = Gray #FFC0CB = Pink
73 | statusMessage.font | Required | Choose the font type to be used.
Accept the options below:
1 = SERIF 2 = NORICAN_REGULAR 3 = BRYNDAN_WRITE 4 = BEBASNEUE_REGULAR 5 = OSWALD_HEAVY
74 | statusMessage.allContacts | Required | To send to ALL contacts, type "true".
Accepted values are "true" or "false".
If "false" is informed, the "statusJidList" becomes required.
75 | statusMessage.statusJidList | Optional | Enter the remoteJid of one or more contacts you want to send status/stories.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
If you want to send it to more than one contact, just separate them with commas, as shown in the example below:
551191111111, 5511922222222, 5511933333333
76 |
77 | :::note Note:
78 | Every message sent by the Evolution API initially has the status PENDING.
79 |
80 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
81 | :::
82 |
83 | :::danger Warning:
84 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
85 |
86 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
87 | :::
88 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/05-send-status-stories-image_video.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 5
3 | ---
4 |
5 | # Send Status Stories Image/Video
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ------------------------------------------- |
13 | | POST | [baseUrl]/message/sendStatus/[instance] |
14 |
15 | Send a image or video Status/Stories to one, some or all contacts in your list.
16 |
17 | ### Data to be sent in the Request
18 |
19 | ```json title=Payload
20 | {
21 | "statusMessage": {
22 | "type": "image",
23 | "content": "https://evolution-api.com/files/evolution-api.jpg",
24 | "caption": "This is my status/storie image. 📷",
25 | "allContacts": false,
26 | "statusJidList": ["[remoteJid]@s.whatsapp.net"]
27 | }
28 | }
29 | ```
30 |
31 | ### Data returned from the Request
32 |
33 | ```json title=Result
34 | {
35 | "key": {
36 | "remoteJid": "status@broadcast",
37 | "fromMe": true,
38 | "id": "BAE5689FDB7A25B6"
39 | },
40 | "message": {
41 | "imageMessage": {
42 | "url": "https://mmg.whatsapp.net/o1/v/t62.7118-24/f1/m231/up-oil-image-155d5601-7e78-4b9f-b...",
43 | "mimetype": "image/jpeg",
44 | "caption": "This is my status/storie image. 📷",
45 | "fileSha256": "8VXLU/xZb6avXAocU65TB8PYu2hqBYA7GR1SKNcF8rs=",
46 | "fileLength": "54005",
47 | "height": 482,
48 | "width": 1728,
49 | "mediaKey": "xVG4qXCr6dgG0P6v/c76p+2W26QDdWWjfsu6KaNZqsQ=",
50 | "fileEncSha256": "DGtpcQDfi6D8z1HIn/CRHCW0jIMXtB6mkswbbpC+Sok=",
51 | "directPath": "/o1/v/t62.7118-24/f1/m231/up-oil-image-155d5601-7e78-4b9f-bb7b-c432147ee35...",
52 | "mediaKeyTimestamp": "1689623202",
53 | "jpegThumbnail": "/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19..."
54 | }
55 | },
56 | "messageTimestamp": "1689623202",
57 | "status": "PENDING",
58 | "participant": "[sender]@s.whatsapp.net"
59 | }
60 | ```
61 |
62 | ### Explanation of Parameters
63 |
64 |
65 | Parameter | Type | Description
66 | ---|---|---
67 | statusMessage.type | Required | Inform image or video to send medias.
68 | statusMessage.content | Required | Enter the public url of the image or video.
We recommend a hosting service that does not block API access.
69 | statusMessage.caption | Optional | Inform the caption text of the media you want to send, being able to use the same resources that you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
To break a line, enter "\n" in the message.
Check the example in the payload for better understanding.
70 | statusMessage.allContacts | Required | To send to ALL contacts, type "true".
Accepted values are "true" or "false".
If "false" is informed, the "statusJidList" becomes required.
71 | statusMessage.statusJidList | Optional | Enter the remoteJid of one or more contacts you want to send status/stories.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
If you want to send it to more than one contact, just separate them with commas, as shown in the example below:
551191111111, 5511922222222, 5511933333333
72 |
73 | :::note Note:
74 | Every message sent by the Evolution API initially has the status PENDING.
75 |
76 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
77 | :::
78 |
79 | :::danger Warning:
80 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
81 |
82 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
83 | :::
84 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/06-send-status_stories-audio.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 6
3 | ---
4 |
5 | # Send Status/Stories Audio
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ------------------------------------------- |
13 | | POST | [baseUrl]/message/sendStatus/[instance] |
14 |
15 | Send a audio Status/Stories to one, some or all contacts in your list.
16 |
17 | ### Data to be sent in the Request
18 |
19 | ```json title=Payload
20 | {
21 | "statusMessage": {
22 | "type": "audio",
23 | "content": "https://evolution-api.com/files/narratedaudio.mp3",
24 | "allContacts": false
25 | "statusJidList": [
26 | "[remoteJid]@s.whatsapp.net"
27 | ]
28 | }
29 | }
30 | ```
31 |
32 | ### Data returned from the Request
33 |
34 | ```json title=Result
35 | {
36 | "key": {
37 | "remoteJid": "status@broadcast",
38 | "fromMe": true,
39 | "id": "BAE5B0FC8A8EA66F"
40 | },
41 | "message": {
42 | "audioMessage": {
43 | "url": "https://mmg.whatsapp.net/v/t62.7114-24/28510574_1291945264794607_9192703486876771390_n.enc?ccb=11-4&oh=01_AdQIRJtm58sVzCQUneKp1a0-WGw8fIZtjyUm1rqP5xA-QQ&oe=64DD2832&mms3=true",
44 | "mimetype": "audio/mp4",
45 | "fileSha256": "9gAg85yo8szE2mFn9ZO4wG+P3wilP3txBR7uPVjvRj4=",
46 | "fileLength": "326006",
47 | "seconds": 19,
48 | "ptt": true,
49 | "mediaKey": "F8BinfCyJuCDTBB9jnLNSgWxjvyxH1clqSVOmPwtqBY=",
50 | "fileEncSha256": "r8veVXB8gf87qjNRhjeDWlAkrdL1fvNgcapy5lh9N04=",
51 | "directPath": "/v/t62.7114-24/28510574_1291945264794607_9192703486876771390_n.enc?ccb=11-4&oh=01_AdQIRJtm58sVzCQUneKp1a0-WGw8fIZtjyUm1rqP5xA-QQ&oe=64DD2832",
52 | "mediaKeyTimestamp": "1689624384"
53 | }
54 | },
55 | "messageTimestamp": "1689624384",
56 | "status": "PENDING",
57 | "participant": "[sender]@s.whatsapp.net"
58 | }
59 | ```
60 |
61 | ### Explanation of Parameters
62 |
63 |
64 | Parameter | Type | Description
65 | -|-|-
66 | statusMessage.type | Required | Inform audio to send Waveform.
67 | statusMessage.content | Required | Enter the public url of the audio.
We recommend a hosting service that does not block API access.
68 | statusMessage.allContacts | Required | To send to ALL contacts, type "true".
Accepted values are "true" or "false".
If "false" is informed, the "statusJidList" becomes required.
69 | statusMessage.statusJidList | Optional | Enter the remoteJid of one or more contacts you want to send status/stories.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
If you want to send it to more than one contact, just separate them with commas, as shown in the example below:
551191111111, 5511922222222, 5511933333333
70 |
71 | :::note Note:
72 | Every message sent by the Evolution API initially has the status PENDING.
73 |
74 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
75 | :::
76 |
77 | :::danger Warning:
78 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
79 |
80 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
81 | :::
82 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/07-send-image-media-url.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 7
3 | ---
4 |
5 | # Send Image Media Url
6 |
7 | :::note Instructions:
8 | Swap the existing content between [ ] for whatever matches your scenario or need.
9 | :::
10 |
11 | | Method | Endpoint |
12 | | ------ | ------------------------------------------ |
13 | | POST | [baseUrl]/message/sendMedia/[instance] |
14 |
15 | Send images directly from the internet, in JPG and PNG formats.
16 |
17 | ### Data to be sent in the Request
18 |
19 | ```json title=Payload
20 | {
21 | "number": "[remoteJid]",
22 | "options": {
23 | "delay": 1200,
24 | "presence": "composing"
25 | },
26 | "mediaMessage": {
27 | "mediatype": "image",
28 | "caption": "This is an example JPG image file sent by Evolution-API via URL.",
29 | "media": "https://evolution-api.com/files/evolution-api.jpg"
30 | }
31 | }
32 | ```
33 |
34 | ### Data returned from the Request
35 |
36 | ```json title=Result
37 | {
38 | "key": {
39 | "remoteJid": "[remoteJid]",
40 | "fromMe": true,
41 | "id": "BAE51614A82384B8"
42 | },
43 | "message": {
44 | "imageMessage": {
45 | "url": "https://mmg.whatsapp.net/o1/v/t62.7118-24/f1/m230/up-oil-image-807ef642-4b4b-4ed9-...",
46 | "mimetype": "image/jpeg",
47 | "caption": "This is an example JPG image file sent by Evolution-API via URL.",
48 | "fileSha256": "8VXLU/xZb6avXAocU65TB8PYu2hqBYA7GR1SKNcF8rs=",
49 | "fileLength": "54005",
50 | "height": 482,
51 | "width": 1728,
52 | "mediaKey": "y6cbe1XoK0o9muPFcwY48tE6+dtapdE3m7BmSCGIZUY=",
53 | "fileEncSha256": "2Qp8gKmnazumKDIYvotqNdFmkzCEQwHVQ3AM3sEdFeE=",
54 | "directPath": "/o1/v/t62.7118-24/f1/m230/up-oil-image-807ef642-4b4b-4ed9-b9b8-c9cc855796...",
55 | "mediaKeyTimestamp": "1689625686",
56 | "jpegThumbnail": "/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV1...",
57 | "contextInfo": {}
58 | }
59 | },
60 | "messageTimestamp": "1689625687",
61 | "status": "PENDING"
62 | }
63 | ```
64 |
65 | ### Explanation of Parameters
66 |
67 |
68 | Parameter | Type | Description
69 | -|-|-
70 | number | Required | Enter the remoteJid or groupJid to whom the message will be sent.
**remoteJid** = Number in DDI + DDD + Number format, with or without the @s.whatsapp.net ending.
Ex: 5511911111111 or 5511911111111@s.whatsapp.net
**groupJid** = Accepts the group identifier in hash format for new groups, or remoteJid + "-" + timestamp for old groups. In this cases, it is mandatory to inform the @g.us ending.
Ex: 120363024158769234@g.us or 5511911111111-1111111111@g.us
71 | options.delay | Optional | Time in milliseconds that the message must wait until it is sent, showing the presence information configured in the next item.
72 | options.presence| Optional | The "composing" content will make the message "typing" appear in the WhatsApp™ top menu, during the time defined in the previous item.
73 | mediaMessage.mediaType | Required | Inform "image".
74 | mediaMessage.caption | Optional | Inform the caption text of the media you want to send, being able to use the same resources that you would use in the app or on the web, which are:
- Emojis - Bold, enter \*yourtext\* - Italics, between \_yourtext\_ - Scratched, come in \~yourtext\~ - Monospace between \```yourtext\```
_To break a line, enter "\n" in the message._
Check the example in the payload for better understanding.
75 | mediaMessage.media | Required | Enter the public url of the image.
We recommend a hosting service that does not block API access.
76 |
77 | :::note Note:
78 | Every message sent by the Evolution API initially has the status PENDING.
79 |
80 | This indicates that the sending was successful and the message is waiting for the following statuses, which will be sent to the MESSAGES_UPDATE Webhook.
81 | :::
82 |
83 | :::danger Warning:
84 | It is extremely necessary that the payload obey the rules for creating a JSON file, considering the correct arrangement of items, formatting, square brackets, braces and commas, etc.
85 |
86 | Before consuming the endpoint, if you have questions about the JSON formatting, go to https://jsonlint.com/ and validate.
87 | :::
88 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/2022-12-12-update-v1.16.0.md:
--------------------------------------------------------------------------------
1 | ---
2 | slug: evolution-update-v1.6.0
3 | title: "Evolution API's v1.6.0 Update: Streamlining Customer Engagement with Advanced Integrations and Enhanced Features"
4 | authors: [matheus]
5 | tags: [updates]
6 | ---
7 |
8 | ## New times are comming to Evolution
9 |
10 | We are excited to announce the release of Evolution API v1.6.0. This update introduces a range of new features and enhancements, focusing on improving customer engagement and streamlining communication processes. Below is a detailed overview of what's new and what has been improved.
11 |
12 | ## It's Been a Busy Month
13 |
14 | The Evolution team has worked tirelessly over the past month to bring these significant updates to life. Our focus has been on enhancing the overall user experience while incorporating valuable feedback from our community. This version represents not just our commitment to technical excellence but also our dedication to adapting and evolving in response to our users' needs.
15 |
16 | Key areas of our work this month included:
17 |
18 | - **Integrating Cutting-Edge Technologies**: We've dedicated substantial efforts to integrate advanced technologies like AWS SQS and the new Typebot API, ensuring our platform remains at the forefront of innovation.
19 | - **Streamlining Communication Processes**: Understanding the importance of efficient communication, we've introduced new endpoints and features to make interactions smoother and more intuitive.
20 | - **Enhancing Stability and Reliability**: A significant portion of our work focused on addressing various bugs and enhancing the stability of our platform. These improvements are crucial for a seamless user experience.
21 | - **Expanding Functionalities in Chatwoot**: We've made considerable enhancements in Chatwoot, introducing new features and capabilities to enrich customer engagement.
22 |
23 | All these efforts are a testament to our team's hard work and commitment to providing the best possible solutions to our users. We're excited about these new changes and confident they will make a positive impact on your experience with Evolution API.
24 |
25 | ### New Features
26 |
27 | - **AWS SQS Integration**: Enhanced messaging capabilities with Amazon Simple Queue Service integration.
28 | - **Typebot API Support**: We now support the new Typebot API, offering more options for bot integration.
29 | - **New Endpoint 'sendPresence'**: A new endpoint for real-time presence updates.
30 | - **Instance Manager**: A tool for managing and monitoring your Evolution API instances more effectively with a built-in front-end in the api.
31 | - **Auto-create in Chatwoot**: Option to automatically create inboxes in Chatwoot, simplifying the setup process.
32 | - **Enhanced Chatwoot Features**: Added support for reply, delete, and message reactions in Chatwoot v3.3.1.
33 |
34 | ### Fixes and Improvements
35 |
36 | - **Proxy and Session Start Adjustments**: Improvements in proxy handling and session start for Typebot.
37 | - **Media Handling Enhancements**: Added a 'mimetype' field when sending media for better compatibility.
38 | - **Message Handling Improvements**: Adjustments in message upsert validations and enhanced error handling in Chatwoot.
39 | - **MongoDB and Webhook Updates**: Various fixes in MongoDB usage and improved webhook response times.
40 | - **Chatwoot Compatibility and Stability Fixes**: Numerous fixes to enhance the stability and compatibility of Chatwoot, including QR code generation and CSAT issues.
41 |
42 | ## Conclusion
43 |
44 | The v1.6.0 update is a significant step forward in our ongoing efforts to provide a robust and efficient API for customer engagement. We believe these improvements and new features will greatly enhance your experience and capabilities in managing customer interactions.
45 |
46 | For any queries or support, feel free to reach out to our team. We are always here to help!
47 |
48 | ---
49 |
50 | #### Keep the project alive
51 |
52 | We appreciate any support you can provide to keep our project thriving. If you would like to make a contribution, you can do so through our "Buy Me a Coffee" page. Simply click on the QR code below, and it will take you to our donation page.
53 |
54 |
59 |
60 | Your support helps us continue developing and maintaining the Evolution API. Thank you for considering a donation!
61 |
62 | Also, don't forget that you can contribute to our project on GitHub. Check out our repository: [Evolution API on GitHub](https://github.com/EvolutionAPI/evolution-api). Whether it's code contributions, feature suggestions, or bug reports, every bit of help counts!
63 |
64 | Stay tuned for more updates and enhancements in the future!
65 |
--------------------------------------------------------------------------------
/docs/05-Endpoints/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "label": "Send Messages"
3 | }
--------------------------------------------------------------------------------
/docs/06-Integrations/00-set-chatwoot.md:
--------------------------------------------------------------------------------
1 | # Set ChatWoot
2 |
3 | :::info Instructions:
4 | Swap the existing content between [ ] for whatever matches your scenario or need.
5 | :::
6 |
7 | | Method | Endpoint |
8 | | ------ | ------------------------------------- |
9 | | POST | [baseUrl]/chatwoot/set/[instance] |
10 |
11 | ## Set Instance from ChatWoot™
12 |
13 | In this option it is possible to associate an instance already created to make the connection with ChatWoot™, automatically generating the Inbox and the Contact for the Bot EvolutionAPI.
14 |
15 | If the QrCode option is selected as "true", a message with the QrCode will already be created in the conversation to be read by your device.
16 |
17 | It is also possible to mark as "true" the option to automatically sign messages with the Attendant's name.
18 |
19 | ### Data to be sent in the Request
20 |
21 | ```json title=Payload
22 | {
23 | "enabled": true,
24 | "account_id": 1,
25 | "token": "token",
26 | "url": "https://app.chatwoot.com",
27 | "sign_msg": true
28 | }
29 | ```
30 |
31 | ### Data returned from the Request
32 |
33 | ```json title=Result
34 | {
35 | "instance": {
36 | "instanceName": "[instance]",
37 | "status": "created"
38 | },
39 | "hash": {
40 | "apikey": "[apikey]"
41 | },
42 | "webhook": "[webhook]",
43 | "events": [
44 | "QRCODE_UPDATED",
45 | "MESSAGES_UPSERT",
46 | "MESSAGES_UPDATE",
47 | "SEND_MESSAGE",
48 | "CONNECTION_UPDATE"
49 | ],
50 | "chatwoot": {
51 | "enabled": true,
52 | "account_id": [account_id],
53 | "token": "[token]",
54 | "url": "[url]",
55 | "sign_msg": false,
56 | "name_inbox": "[name_inbox]",
57 | "webhook_url": "[webhook_url]"
58 | }
59 | }
60 | ```
61 |
62 | ### Explanation of Parameters
63 |
64 |
65 | Parameter | Type | Description
66 | --- | --- | ---
67 | enabled | Required | Does it generate the QRCode automatically?
_Accepted values are "true" or "false"._
68 | account_id | Optional | Your ChatWoot Account ID.
_Enter only if you are joining ChatWoot™._
69 | token | Optional | Your Access Token, which must be obtained from your ChatWoot™ installation.
_Only inform if you are installing with ChatWoot™._
70 | url | Optional | Installation URL of your ChatWoot™.
_Enter only if you are joining ChatWoot™._
71 | sign_msg | Optional | Do you want messages to be signed with the Attendant's name?
Valores aceitos são "true" ou "false".
73 | url | Opcional | URL de Webhook para receber dados de eventos.
_Insira a URL para criar ou alterar o Webhook, ou deixe em branco ("") se desejar parar de usá-lo._
74 | webhook_by_events | Opcional | Deseja gerar uma URL de Webhook específica para cada um de seus eventos?
Valores aceitos são "true" ou "false".
_Se você não informou o parâmetro de URL, não é necessário informar este parâmetro._
75 | events | Opcional | Lista de eventos a serem processados.
_Se você não deseja usar alguns desses eventos, basta removê-los da lista.
Os caracteres de comentário (//) foram colocados apenas para facilitar a compreensão e devem ser removidos antes de consumir o endpoint.
Se você não informou o parâmetro de URL, não é necessário informar este parâmetro._
76 |
77 |
78 |
79 | :::danger Aviso:
80 |
81 | É extremamente necessário que a carga obedeça às regras de criação de um arquivo JSON, considerando a disposição correta de itens, formatação, colchetes, chaves e vírgulas, etc.
82 |
83 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, acesse https://jsonlint.com/ e valide.
84 | :::
85 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/04-Webhooks/01-find-webhook.md:
--------------------------------------------------------------------------------
1 | # Encontrar Webhook
2 |
3 | | Método | Endpoint |
4 | | ------ | ------------------------------------- |
5 | | GET | [baseUrl]/webhook/find/[instance] |
6 |
7 | ### Dados a serem enviados na solicitação:
8 |
9 | ```json title=Payload
10 | Esta solicitação não possui carga útil.
11 | ```
12 |
13 | ### Dados retornados da solicitação:
14 |
15 | ```json title=Result
16 | {
17 | "enabled": true,
18 | "url": "[url]",
19 | "webhookByEvents": false,
20 | "events": [
21 | [events]
22 | ]
23 | }
24 | ```
25 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/04-Webhooks/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "label": "Webhooks"
3 | }
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/00-send-plain-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 0
3 | ---
4 |
5 | # Enviar Texto Simples
6 |
7 | :::note Instruções:
8 | Substitua o conteúdo existente entre [ ] pelo que corresponde ao seu cenário ou necessidade.
9 | :::
10 |
11 | | Método | Endpoint |
12 | | ------ | ----------------------------------------- |
13 | | POST | [baseUrl]/message/sendText/[instance] |
14 |
15 | Envie mensagens de texto usando as mesmas funcionalidades do seu dispositivo ou da web.
16 |
17 | ### Dados a serem enviados na solicitação
18 |
19 | ```json title=Payload
20 | {
21 | "number": "[remoteJid]",
22 | "options": {
23 | "delay": 1200,
24 | "presence": "composing"
25 | },
26 | "textMessage": {
27 | "text": "Esta é uma mensagem de texto simples, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoji disponível no WhatsApp, como os exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
28 | }
29 | }
30 | ```
31 |
32 | ### Dados retornados da Solicitação
33 |
34 | ```json title=Result
35 | {
36 | "key": {
37 | "remoteJid": "[remoteJid]",
38 | "fromMe": true,
39 | "id": "BAE5B8BC84A484E3"
40 | },
41 | "message": {
42 | "extendedTextMessage": {
43 | "text": "Esta é uma mensagem de texto simples, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoji disponível no WhatsApp, como os exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
44 | }
45 | },
46 | "messageTimestamp": "1689604487",
47 | "status": "PENDING"
48 | }
49 | ```
50 |
51 | ### Explicação dos Parâmetros
52 |
53 |
54 | Parâmetro | Tipo | Descrição
55 | --|--|--
56 | remoteJid | Obrigatório | Insira o remoteJid ou groupJid para quem a mensagem será enviada.
_remoteJid = Número no formato DDI + DDD + número, com ou sem o final @s.whatsapp.net.
Exemplo: 5511911111111 ou 5511911111111@s.whatsapp.net
**groupJid** = Aceita o identificador de grupo no formato de hash para novos grupos, ou remoteJid + "-" + timestamp para grupos antigos. Nesses casos, é obrigatório informar o final @g.us.
Exemplo: 120363024158769234@g.us ou 5511911111111-1111111111@g.us_
57 | options.delay | Opcional | Tempo em milissegundos que a mensagem deve esperar antes de ser enviada, mostrando as informações de presença configuradas no item seguinte.
58 | options.presence | Opcional | O conteúdo "composing" fará com que a mensagem "digitando" apareça no menu superior do WhatsApp™, durante o tempo definido no item anterior.
59 | textMessage.text | Obrigatório | Informe o texto da mensagem que deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, entre \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, entre \~seutexto\~ - Monoespaçado, entre \```seutexto\```
_Para quebrar uma linha, insira "\n" na mensagem._
Confira o exemplo no payload para melhor compreensão.
60 |
61 | :::note Nota:
62 | Toda mensagem enviada pela Evolution API inicialmente possui o status PENDENTE.
63 |
64 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
65 | :::
66 |
67 | :::danger Aviso:
68 | É extremamente necessário que o payload siga as regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
69 |
70 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
71 | :::
72 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/01-send-reply-quote-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 1
3 | ---
4 |
5 | # Enviar uma Mensagem de Citação de Texto
6 |
7 | :::note Instruções:
8 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
9 | :::
10 |
11 | | Método | Endpoint |
12 | | ------ | ----------------------------------------- |
13 | | POST | [baseUrl]/message/sendText/[instance] |
14 |
15 | Envie uma mensagem citando uma mensagem anterior na resposta.
16 |
17 | Isso funciona tanto para mensagens recebidas quanto para citar suas próprias mensagens enviadas se você quiser lembrar o destinatário de um assunto discutido anteriormente.
18 |
19 | ### Dados a serem enviados na solicitação
20 |
21 | ```json title=Payload
22 | {
23 | "number": "[remoteJid]",
24 | "options": {
25 | "delay": 1200,
26 | "presence": "composing",
27 | "quoted": {
28 | "key": {
29 | "remoteJid": "[remoteJid]@s.whatsapp.net",
30 | "fromMe": true,
31 | "id": "BAE5766236A2AEFF",
32 | "participant": ""
33 | },
34 | "message": {
35 | "conversation": "Mensagem de texto com citação de resposta, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
36 | }
37 | }
38 | },
39 | "textMessage": {
40 | "text": "Mensagem de texto com citação de resposta, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
41 | }
42 | }
43 | ```
44 |
45 | ### Dados retornados da Solicitação
46 |
47 | ```json title=Result
48 | {
49 | "key": {
50 | "remoteJid": "[remoteJid]@s.whatsapp.net",
51 | "fromMe": true,
52 | "id": "BAE5FA1CB273B533"
53 | },
54 | "message": {
55 | "extendedTextMessage": {
56 | "text": "Mensagem de texto com citação de resposta, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏",
57 | "contextInfo": {
58 | "stanzaId": "BAE5766236A2AEFF",
59 | "participant": "[remoteJid]@s.whatsapp.net",
60 | "quotedMessage": {
61 | "conversation": "Mensagem de texto simples, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
62 | }
63 | }
64 | }
65 | },
66 | "messageTimestamp": "1689608179",
67 | "status": "PENDING"
68 | }
69 | ```
70 |
71 | ### Explanation of Parameters
72 |
73 | ### Explicação dos Parâmetros
74 |
75 |
76 | Parâmetro | Tipo | Descrição
77 | -|-|-
78 | remoteJid | Obrigatório | Insira o remoteJid ou groupJid para quem a mensagem será enviada.
**remoteJid** = Número no formato DDI + DDD + Número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
**groupJid** = Aceita o identificador de grupo no formato hash para novos grupos, ou remoteJid + "-" + timestamp para grupos antigos. Neste caso, é obrigatório informar o final @g.us.
Ex: 120363024158769234@g.us ou 5511911111111-1111111111@g.us
79 | options.delay | Opcional | Tempo em milissegundos que a mensagem deve esperar antes de ser enviada, mostrando as informações de presença configuradas no próximo item.
80 | options.presence | Opcional | O conteúdo "composing" fará com que a mensagem apareça como "digitando" no menu superior do WhatsApp™, durante o tempo definido no item anterior.
81 | options.quoted.key.remoteJid | Obrigatório | Pegue esta informação do remoteJid na chave do objeto da mensagem a ser citada.
82 | options.quoted.key.fromMe | Obrigatório | Pegue esta informação do remoteJid na chave do objeto da mensagem a ser citada.
83 | options.quoted.key.id | Obrigatório | Pegue esta informação do remoteJid na chave do objeto da mensagem a ser citada.
84 | options.quoted.key.participant | Obrigatório | Pegue esta informação do remoteJid na chave do objeto da mensagem a ser citada.
85 | options.quoted.message.conversation | Obrigatório | Pegue esta informação do remoteJid na chave do objeto da mensagem a ser citada.
86 | textMessage.text | Obrigatório | Informe o texto da mensagem que deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, coloque \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
_Para quebrar uma linha, insira "\n" na mensagem._
Confira o exemplo no payload para melhor entendimento.
87 |
88 | :::note Nota:
89 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
90 |
91 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
92 | :::
93 |
94 | :::danger Atenção:
95 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
96 |
97 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
98 | :::
99 |
100 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/02-send-mention-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 2
3 | ---
4 |
5 | # Enviar texto de menção
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ----------------------------------------- |
14 | | POST | [baseUrl]/message/sendText/[instance] |
15 |
16 | Envie uma mensagem em um grupo mencionando um ou vários participantes, sem a necessidade de incluir @nome no conteúdo da mensagem.
17 |
18 | :::info Nota:
19 | Use esse recurso com moderação, pois em um grupo onde os participantes escolheram silenciar notificações, eles ainda serão notificados e marcados com o @.
20 |
21 | O uso excessivo em um grupo com muitos membros nessas condições pode causar insatisfação e resultar em um efeito contrário ao desejado.
22 | :::
23 |
24 | ### Dados a serem enviados na Requisição
25 |
26 |
27 | ```json title=Payload
28 | {
29 | "number": "[groupJid]",
30 | "options": {
31 | "delay": 1200,
32 | "presence": "composing",
33 | "mentions": {
34 | "everyOne": false,
35 | "mentioned": ["[remoteJid]"]
36 | }
37 | },
38 | "textMessage": {
39 | "text": "Mencione a mensagem de texto, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
40 | }
41 | }
42 | ```
43 |
44 | ### Dados retornados da Solicitação
45 |
46 | ```json title=Result
47 | {
48 | "key": {
49 | "remoteJid": "[groupJid]",
50 | "fromMe": true,
51 | "id": "BAE500F92531D3E2"
52 | },
53 | "message": {
54 | "extendedTextMessage": {
55 | "text": "Mencione a mensagem de texto, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏",
56 | "contextInfo": {
57 | "mentionedJid": ["[remoteJid]@s.whatsapp.net"]
58 | }
59 | }
60 | },
61 | "messageTimestamp": "1689620558",
62 | "status": "PENDING",
63 | "participant": "[sender]@s.whatsapp.net"
64 | }
65 | ```
66 |
67 | ### Explicação dos parâmetros
68 |
69 |
70 | Parameter | Type | Description
71 | --- | --- | ---
72 | number | Obrigatório | Insira o groupJid para quem a mensagem será enviada.
**groupJid** = Aceita o identificador de grupo no formato hash para novos grupos, ou remoteJid + "-" + timestamp para grupos antigos. Neste caso, é obrigatório informar o final @g.us.
Ex: 120363024158769234@g.us ou 5511911111111-1111111111@g.us
73 | options.delay | Opcional | Tempo em milissegundos que a mensagem deve esperar antes de ser enviada, mostrando as informações de presença configuradas no próximo item.
74 | options.presence | Opcional | O conteúdo "composing" fará com que a mensagem apareça como "digitando" no menu superior do WhatsApp™, durante o tempo definido no item anterior.
75 | options.mentions.everyOne | Obrigatório | Para mencionar um ou mais participantes, insira "false".
Os valores aceitos são "true" ou "false".
Para mencionar todos, será explicado no próximo item.
76 | options.mentions.mentioned | Obrigatório | Insira o remoteJid de um ou mais participantes que serão mencionados no grupo.
**remoteJid** = Número no formato DDI + DDD + Número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
Se você deseja informar mais de um participante, apenas separe os contatos com vírgulas, como no exemplo abaixo:
- 551191111111, - 5511922222222, - 5511933333333
77 | textMessage.text | Obrigatório | Informe o texto da mensagem que deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, coloque \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
Para quebrar uma linha, insira "\n" na mensagem.
Confira o exemplo no payload para melhor entendimento.
78 |
79 | :::note Nota:
80 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
81 |
82 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
83 | :::
84 |
85 | :::danger Atenção:
86 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
87 |
88 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
89 | :::
90 |
91 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/03-send-ghost-mention-text.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 3
3 | ---
4 |
5 | # Enviar texto de menção fantasma
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ----------------------------------------- |
14 | | POST | [baseUrl]/message/sendText/[instance] |
15 |
16 | Envie uma mensagem em um grupo mencionando TODOS os participantes, sem a necessidade de incluir @nome no conteúdo da mensagem.
17 |
18 | :::info Nota:
19 | Use esse recurso com moderação, pois em um grupo onde os participantes escolheram silenciar notificações, eles ainda serão notificados e marcados com o @.
20 |
21 | O uso excessivo em um grupo com muitos membros nessas condições pode causar insatisfação e resultar em um efeito contrário ao desejado.
22 | :::
23 |
24 | ### Dados a serem enviados na Requisição
25 |
26 |
27 | ```json title=Payload
28 | {
29 | "number": "[groupJid]",
30 | "options": {
31 | "delay": 1200,
32 | "presence": "composing",
33 | "mentions": {
34 | "everyOne": true
35 | }
36 | },
37 | "textMessage": {
38 | "text": "Mensagem de texto de menção fantasma, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏"
39 | }
40 | }
41 | ```
42 |
43 | ### Dados retornados da Solicitação
44 |
45 | ```json title=Result
46 | {
47 | "key": {
48 | "remoteJid": "[groupJid]",
49 | "fromMe": true,
50 | "id": "BAE59EF61E567741"
51 | },
52 | "message": {
53 | "extendedTextMessage": {
54 | "text": "Mensagem de texto de menção fantasma, enviada com a _Evolution-API_ 🚀.\n\nAqui você pode enviar textos em *negrito*, _itálico_, ~riscado~ e `monoespaçado`.\n\nVocê também pode usar qualquer emoticon disponível no WhatsApp, como estes exemplos abaixo:\n\n😉🤣🤩🤝👏👍🙏",
55 | "contextInfo": {
56 | "mentionedJid": [
57 | "[remoteJid]1@s.whatsapp.net",
58 | "[remoteJid]2@s.whatsapp.net",
59 | "[remoteJid]3@s.whatsapp.net",
60 | "[remoteJid]4@s.whatsapp.net",
61 | "[remoteJid]5@s.whatsapp.net"
62 | ]
63 | }
64 | }
65 | },
66 | "messageTimestamp": "1689617824",
67 | "status": "PENDING",
68 | "participant": "[sender]@s.whatsapp.net"
69 | }
70 | ```
71 |
72 | ### Explicação dos parâmetros
73 |
74 |
75 | Parameter | Type | Description
76 | -|-|-
77 | number | Obrigatório | Insira o groupJid para quem a mensagem será enviada.
**groupJid** = Aceita o identificador de grupo no formato hash para novos grupos, ou remoteJid + "-" + timestamp para grupos antigos. Neste caso, é obrigatório informar o final @g.us.
Ex: 120363024158769234@g.us ou 5511911111111-1111111111@g.us
78 | options.delay | Opcional | Tempo em milissegundos que a mensagem deve esperar antes de ser enviada, mostrando as informações de presença configuradas no próximo item.
79 | options.presence | Opcional | O conteúdo "composing" fará com que a mensagem apareça como "digitando" no menu superior do WhatsApp™, durante o tempo definido no item anterior.
80 | options.mentions.everyOne | Obrigatório | Para mencionar TODOS os participantes, insira "true".
Os valores aceitos são "true" ou "false".
Para mencionar um ou mais, foi explicado no item anterior.
81 | textMessage.text | Obrigatório | Informe o texto da mensagem que deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, coloque \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
Para quebrar uma linha, insira "\n" na mensagem.
Confira o exemplo no payload para melhor entendimento.
82 |
83 | :::note Nota:
84 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
85 |
86 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
87 | :::
88 |
89 | :::danger Atenção:
90 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
91 |
92 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
93 | :::
94 |
95 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/04-send-status_stories-text_url.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 4
3 | ---
4 |
5 | # Enviar texto/url de status/Stories
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ------------------------------------------- |
14 | | POST | [baseUrl]/message/sendStatus/[instance] |
15 |
16 | Envie um Status/Stories de texto ou URL (clicável) para um, alguns ou todos os contatos em sua lista.
17 |
18 | ### Dados a serem enviados na Requisição
19 |
20 | ```json title=Payload
21 | {
22 | "statusMessage": {
23 | "type": "text",
24 | "content": "Olá, como você está hoje? 😉👍\n\nVeja mais em\n\nhttps://evolution-api.com/",
25 | "backgroundColor": "#008000",
26 | "font": 1,
27 | "allContacts": false,
28 | "statusJidList": ["[remoteJid]@s.whatsapp.net"]
29 | }
30 | }
31 | ```
32 |
33 | ### Dados retornados da Solicitação
34 |
35 | ```json title=Result
36 | {
37 | "key": {
38 | "remoteJid": "status@broadcast",
39 | "fromMe": true,
40 | "id": "BAE59F76997142F0"
41 | },
42 | "message": {
43 | "extendedTextMessage": {
44 | "text": "Olá, como você está hoje? 😉👍\n\nVeja mais em\n\nhttps://evolution-api.com/",
45 | "matchedText": "https://evolution-api.com/",
46 | "canonicalUrl": "https://evolution-api.com/opensource-whatsapp-api/",
47 | "title": "OpenSource WhatsApp API – Evolution API",
48 | "backgroundArgb": 4278222848,
49 | "font": "SERIF",
50 | "previewType": "NONE",
51 | "thumbnailDirectPath": "/o1/v/t62.7118-24/f1/m230/up-oil-image-bae65e3e-9813-4686-99a5-53ab5e2336c7?ccb=9-4&oh=01_AdRENApzu4pB-Y6VDbbGWfD6w91B1rmxgveUJH_cCmt0Hg&oe=64DCEF1B",
52 | "thumbnailSha256": "QcKPDG2Bk+d3fPceiuS1cnGuBNgv/8hHM4UgcwYMtKk=",
53 | "thumbnailEncSha256": "UpEq8UfeJuT2/0A2nS7vEEIUZzIi+SmOydvvWQthzAs=",
54 | "mediaKey": "KXuIeKYSqsHVD8uxEoHnQPjXuADqTVCtfuI35zbmVxc=",
55 | "mediaKeyTimestamp": "1689621677",
56 | "thumbnailHeight": 0,
57 | "thumbnailWidth": 0
58 | }
59 | },
60 | "messageTimestamp": "1689621677",
61 | "status": "PENDING",
62 | "participant": "[sender]@s.whatsapp.net"
63 | }
64 | ```
65 |
66 | ### Explicação dos parâmetros
67 |
68 |
69 | Parameter | Type | Descrição
70 | -|-|-
71 | statusMessage.type | Obrigatório | Informe "text" para enviar mensagens de texto ou "url" para URLs clicáveis.
72 | statusMessage.content | Obrigatório | Informe o texto da mensagem que deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, insira \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
Para quebrar uma linha, insira "\n" na mensagem.
Confira o exemplo no payload para melhor entendimento.
73 | statusMessage.backgroundColor | Obrigatório | Insira a cor desejada para o fundo do status/stories, usando o Código de Cor Hexadecimal.
Exemplos:
#FFFFFF = Branco #0000FF = Azul #008000 = Verde #FFFF00 = Amarelo #FF0000 = Vermelho #800080 = Roxo #808080 = Cinza #FFC0CB = Rosa
74 | statusMessage.font | Obrigatório | Escolha o tipo de fonte a ser usado.
Aceite as opções abaixo:
1 = SERIF 2 = NORICAN_REGULAR 3 = BRYNDAN_WRITE 4 = BEBASNEUE_REGULAR 5 = OSWALD_HEAVY
75 | statusMessage.allContacts | Obrigatório | Para enviar para TODOS os contatos, digite "true".
Os valores aceitos são "true" ou "false".
Se "false" for informado, "statusJidList" se torna obrigatório.
76 | statusMessage.statusJidList | Opcional | Insira o remoteJid de um ou mais contatos aos quais você deseja enviar status/stories.
**remoteJid** = Número no formato DDI + DDD + formato de número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
Se você deseja enviar para mais de um contato, apenas separe-os por vírgulas, como mostrado no exemplo abaixo:
551191111111, 5511922222222, 5511933333333
77 |
78 | :::note Nota:
79 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
80 |
81 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
82 | :::
83 |
84 | :::danger Atenção:
85 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
86 |
87 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
88 | :::
89 |
90 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/05-send-status-stories-image_video.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 5
3 | ---
4 |
5 | # Enviar Status/Stories Imagem/Video
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ------------------------------------------- |
14 | | POST | [baseUrl]/message/sendStatus/[instance] |
15 |
16 | Envie uma imagem ou vídeo no Status/Stories para um, alguns ou todos os contatos em sua lista.
17 |
18 | ### Dados a serem enviados na Requisição
19 |
20 | ```json title=Payload
21 | {
22 | "statusMessage": {
23 | "type": "image",
24 | "content": "https://evolution-api.com/files/evolution-api.jpg",
25 | "caption": "This is my status/storie image. 📷",
26 | "allContacts": false,
27 | "statusJidList": ["[remoteJid]@s.whatsapp.net"]
28 | }
29 | }
30 | ```
31 |
32 | ### Dados retornados da Solicitação
33 |
34 | ```json title=Result
35 | {
36 | "key": {
37 | "remoteJid": "status@broadcast",
38 | "fromMe": true,
39 | "id": "BAE5689FDB7A25B6"
40 | },
41 | "message": {
42 | "imageMessage": {
43 | "url": "https://mmg.whatsapp.net/o1/v/t62.7118-24/f1/m231/up-oil-image-155d5601-7e78-4b9f-b...",
44 | "mimetype": "image/jpeg",
45 | "caption": "Esta é minha imagem de status/storie. 📷",
46 | "fileSha256": "8VXLU/xZb6avXAocU65TB8PYu2hqBYA7GR1SKNcF8rs=",
47 | "fileLength": "54005",
48 | "height": 482,
49 | "width": 1728,
50 | "mediaKey": "xVG4qXCr6dgG0P6v/c76p+2W26QDdWWjfsu6KaNZqsQ=",
51 | "fileEncSha256": "DGtpcQDfi6D8z1HIn/CRHCW0jIMXtB6mkswbbpC+Sok=",
52 | "directPath": "/o1/v/t62.7118-24/f1/m231/up-oil-image-155d5601-7e78-4b9f-bb7b-c432147ee35...",
53 | "mediaKeyTimestamp": "1689623202",
54 | "jpegThumbnail": "/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19..."
55 | }
56 | },
57 | "messageTimestamp": "1689623202",
58 | "status": "PENDING",
59 | "participant": "[sender]@s.whatsapp.net"
60 | }
61 | ```
62 |
63 | ### Explicação dos parâmetros
64 |
65 |
66 | Parameter | Type | Descrição
67 | ---|---|---
68 | statusMessage.type | Obrigatório | Informe image para enviar imagens ou video para enviar vídeos.
69 | statusMessage.content | Obrigatório | Insira a URL pública da imagem ou vídeo.
Recomendamos um serviço de hospedagem que não bloqueie o acesso à API.
70 | statusMessage.caption | Opcional | Informe o texto de legenda da mídia que você deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, insira \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
Para quebrar uma linha, insira "\n" na mensagem.
Confira o exemplo no payload para melhor entendimento.
71 | statusMessage.allContacts | Obrigatório | Para enviar para TODOS os contatos, digite "true".
Os valores aceitos são "true" ou "false".
Se "false" for informado, "statusJidList" se torna obrigatório.
72 | statusMessage.statusJidList | Opcional | Insira o remoteJid de um ou mais contatos aos quais você deseja enviar status/stories.
**remoteJid** = Número no formato DDI + DDD + formato de número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
Se você deseja enviar para mais de um contato, apenas separe-os por vírgulas, como mostrado no exemplo abaixo:
551191111111, 5511922222222, 5511933333333
73 |
74 | :::note Nota:
75 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
76 |
77 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
78 | :::
79 |
80 | :::danger Atenção:
81 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
82 |
83 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
84 | :::
85 |
86 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/06-send-status_stories-audio.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 6
3 | ---
4 |
5 | # Enviar Status/Stories Audio
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ------------------------------------------- |
14 | | POST | [baseUrl]/message/sendStatus/[instance] |
15 |
16 | Envie um áudio no Status/Stories para um, alguns ou todos os contatos em sua lista.
17 |
18 | ### Dados a serem enviados na Requisição
19 |
20 |
21 | ```json title=Payload
22 | {
23 | "statusMessage": {
24 | "type": "audio",
25 | "content": "https://evolution-api.com/files/narratedaudio.mp3",
26 | "allContacts": false
27 | "statusJidList": [
28 | "[remoteJid]@s.whatsapp.net"
29 | ]
30 | }
31 | }
32 | ```
33 |
34 | ### Dados retornados da Solicitação
35 |
36 | ```json title=Result
37 | {
38 | "key": {
39 | "remoteJid": "status@broadcast",
40 | "fromMe": true,
41 | "id": "BAE5B0FC8A8EA66F"
42 | },
43 | "message": {
44 | "audioMessage": {
45 | "url": "https://mmg.whatsapp.net/v/t62.7114-24/28510574_1291945264794607_9192703486876771390_n.enc?ccb=11-4&oh=01_AdQIRJtm58sVzCQUneKp1a0-WGw8fIZtjyUm1rqP5xA-QQ&oe=64DD2832&mms3=true",
46 | "mimetype": "audio/mp4",
47 | "fileSha256": "9gAg85yo8szE2mFn9ZO4wG+P3wilP3txBR7uPVjvRj4=",
48 | "fileLength": "326006",
49 | "seconds": 19,
50 | "ptt": true,
51 | "mediaKey": "F8BinfCyJuCDTBB9jnLNSgWxjvyxH1clqSVOmPwtqBY=",
52 | "fileEncSha256": "r8veVXB8gf87qjNRhjeDWlAkrdL1fvNgcapy5lh9N04=",
53 | "directPath": "/v/t62.7114-24/28510574_1291945264794607_9192703486876771390_n.enc?ccb=11-4&oh=01_AdQIRJtm58sVzCQUneKp1a0-WGw8fIZtjyUm1rqP5xA-QQ&oe=64DD2832",
54 | "mediaKeyTimestamp": "1689624384"
55 | }
56 | },
57 | "messageTimestamp": "1689624384",
58 | "status": "PENDING",
59 | "participant": "[sender]@s.whatsapp.net"
60 | }
61 | ```
62 |
63 | ### Explicação dos parâmetros
64 |
65 |
66 | Parameter | Type | Descrição
67 | -|-|-
68 | statusMessage.type | Obrigatório | Informe audio para enviar uma forma de onda.
69 | statusMessage.content | Obrigatório | Insira a URL pública do áudio.
Recomendamos um serviço de hospedagem que não bloqueie o acesso à API.
70 | statusMessage.allContacts | Obrigatório | Para enviar para TODOS os contatos, digite "true".
Os valores aceitos são "true" ou "false".
Se "false" for informado, "statusJidList" se torna obrigatório.
71 | statusMessage.statusJidList | Opcional | Insira o remoteJid de um ou mais contatos aos quais você deseja enviar status/stories.
**remoteJid** = Número no formato DDI + DDD + formato de número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
Se você deseja enviar para mais de um contato, apenas separe-os por vírgulas, como mostrado no exemplo abaixo:
551191111111, 5511922222222, 5511933333333
72 |
73 | :::note Nota:
74 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
75 |
76 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
77 | :::
78 |
79 | :::danger Atenção:
80 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
81 |
82 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
83 | :::
84 |
85 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/07-send-image-media-url.md:
--------------------------------------------------------------------------------
1 | ---
2 | sidebar_position: 7
3 | ---
4 |
5 | # Enviar Imagem Media Url
6 |
7 | :::note Instruções:
8 |
9 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
10 | :::
11 |
12 | | Método | Endpoint |
13 | | ------ | ------------------------------------------ |
14 | | POST | [baseUrl]/message/sendMedia/[instance] |
15 |
16 | Envie imagens diretamente da internet, nos formatos JPG e PNG.
17 |
18 | ### Dados a serem enviados na Requisição
19 |
20 | ```json title=Payload
21 | {
22 | "number": "[remoteJid]",
23 | "options": {
24 | "delay": 1200,
25 | "presence": "composing"
26 | },
27 | "mediaMessage": {
28 | "mediatype": "image",
29 | "caption": "Este é um exemplo de arquivo de imagem JPG enviado pela Evolution-API via URL.",
30 | "media": "https://evolution-api.com/files/evolution-api.jpg"
31 | }
32 | }
33 | ```
34 |
35 | ### Data returned from the Request
36 |
37 | ```json title=Result
38 | {
39 | "key": {
40 | "remoteJid": "[remoteJid]",
41 | "fromMe": true,
42 | "id": "BAE51614A82384B8"
43 | },
44 | "message": {
45 | "imageMessage": {
46 | "url": "https://mmg.whatsapp.net/o1/v/t62.7118-24/f1/m230/up-oil-image-807ef642-4b4b-4ed9-...",
47 | "mimetype": "image/jpeg",
48 | "caption": "Este é um exemplo de arquivo de imagem JPG enviado pela Evolution-API via URL.",
49 | "fileSha256": "8VXLU/xZb6avXAocU65TB8PYu2hqBYA7GR1SKNcF8rs=",
50 | "fileLength": "54005",
51 | "height": 482,
52 | "width": 1728,
53 | "mediaKey": "y6cbe1XoK0o9muPFcwY48tE6+dtapdE3m7BmSCGIZUY=",
54 | "fileEncSha256": "2Qp8gKmnazumKDIYvotqNdFmkzCEQwHVQ3AM3sEdFeE=",
55 | "directPath": "/o1/v/t62.7118-24/f1/m230/up-oil-image-807ef642-4b4b-4ed9-b9b8-c9cc855796...",
56 | "mediaKeyTimestamp": "1689625686",
57 | "jpegThumbnail": "/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV1...",
58 | "contextInfo": {}
59 | }
60 | },
61 | "messageTimestamp": "1689625687",
62 | "status": "PENDING"
63 | }
64 | ```
65 |
66 | ### Explicação dos parâmetros
67 |
68 |
69 | Parameter | Type | Descrição
70 | -|-|-
71 | number | Obrigatório | Insira o remoteJid ou groupJid para quem a mensagem será enviada.
**remoteJid** = Número no formato DDI + DDD + formato de número, com ou sem o final @s.whatsapp.net.
Ex: 5511911111111 ou 5511911111111@s.whatsapp.net
**groupJid** = Aceita o identificador de grupo no formato de hash para novos grupos, ou remoteJid + "-" + timestamp para grupos antigos. Nesses casos, é obrigatório informar o final @g.us.
Ex: 120363024158769234@g.us ou 5511911111111-1111111111@g.us
72 | options.delay | Opcional | Tempo em milissegundos que a mensagem deve aguardar até ser enviada, mostrando a informação de presença configurada no próximo item.
73 | options.presence | Opcional | O conteúdo "composing" fará com que a mensagem "digitando" apareça no menu superior do WhatsApp™, durante o tempo definido no item anterior.
74 | mediaMessage.mediaType | Obrigatório | Informe "image".
75 | mediaMessage.caption | Opcional | Informe o texto de legenda da mídia que você deseja enviar, podendo usar os mesmos recursos que você usaria no aplicativo ou na web, que são:
- Emojis - Negrito, insira \*seutexto\* - Itálico, entre \_seutexto\_ - Riscado, insira \~seutexto\~ - Monoespaçado entre \```seutexto\```
_Para quebrar uma linha, insira "\n" na mensagem._
Confira o exemplo no payload para melhor entendimento.
76 | mediaMessage.media | Obrigatório | Insira a URL pública da imagem.
Recomendamos um serviço de hospedagem que não bloqueie o acesso à API.
77 |
78 | :::note Nota:
79 | Toda mensagem enviada pela Evolution API inicialmente tem o status PENDENTE.
80 |
81 | Isso indica que o envio foi bem-sucedido e a mensagem está aguardando os seguintes status, que serão enviados para o Webhook MESSAGES_UPDATE.
82 | :::
83 |
84 | :::danger Atenção:
85 | É extremamente necessário que o payload obedeça às regras para criar um arquivo JSON, considerando o arranjo correto de itens, formatação, colchetes, chaves e vírgulas, etc.
86 |
87 | Antes de consumir o endpoint, se você tiver dúvidas sobre a formatação JSON, vá para https://jsonlint.com/ e valide.
88 | :::
89 |
90 |
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/05-Endpoints/_category_.json:
--------------------------------------------------------------------------------
1 | {
2 | "label": "Enviar mensagens"
3 | }
--------------------------------------------------------------------------------
/i18n/pt/docusaurus-plugin-content-docs/current/06-Integrations/00-set-chatwoot.md:
--------------------------------------------------------------------------------
1 | # Configurar ChatWoot
2 |
3 | :::info Instruções:
4 | Substitua o conteúdo existente entre [ ] pelo que corresponder ao seu cenário ou necessidade.
5 | :::
6 |
7 | | Método | Endpoint |
8 | | ------ | ------------------------------------- |
9 | | POST | [baseUrl]/chatwoot/set/[instance] |
10 |
11 | ## Configurar Instância no ChatWoot™
12 |
13 | Nesta opção, é possível associar uma instância já criada para estabelecer a conexão com o ChatWoot™, gerando automaticamente a Caixa de Entrada (Inbox) e o Contato para o Bot EvolutionAPI.
14 |
15 | Se a opção QrCode for selecionada como "true", uma mensagem com o QrCode já será criada na conversa para ser lida pelo seu dispositivo.
16 |
17 | Também é possível marcar como "true" a opção de assinar automaticamente as mensagens com o nome do Atendente.
18 |
19 | ### Dados a serem enviados na Requisição
20 |
21 |
22 | ```json title=Payload
23 | {
24 | "enabled": true,
25 | "account_id": 1,
26 | "token": "token",
27 | "url": "https://app.chatwoot.com",
28 | "sign_msg": true
29 | }
30 | ```
31 |
32 | ### Dados retornados da Solicitação
33 |
34 | ```json title=Result
35 | {
36 | "instance": {
37 | "instanceName": "[instance]",
38 | "status": "created"
39 | },
40 | "hash": {
41 | "apikey": "[apikey]"
42 | },
43 | "webhook": "[webhook]",
44 | "events": [
45 | "QRCODE_UPDATED",
46 | "MESSAGES_UPSERT",
47 | "MESSAGES_UPDATE",
48 | "SEND_MESSAGE",
49 | "CONNECTION_UPDATE"
50 | ],
51 | "chatwoot": {
52 | "enabled": true,
53 | "account_id": [account_id],
54 | "token": "[token]",
55 | "url": "[url]",
56 | "sign_msg": false,
57 | "name_inbox": "[name_inbox]",
58 | "webhook_url": "[webhook_url]"
59 | }
60 | }
61 | ```
62 |
63 | ### Explicação dos parâmetros
64 |
65 |
66 | Parameter | Type | Description
67 | --- | --- | ---
68 | enabled | Obrigatório | Gera automaticamente o QRCode?
_Os valores aceitos são "true" ou "false"._
69 | account_id | Opcional | Seu ID de Conta no ChatWoot.
_Informe somente se você estiver se conectando ao ChatWoot™._
70 | token | Opcional | Seu Token de Acesso, que deve ser obtido a partir da sua instalação do ChatWoot™.
_Informe somente se você estiver instalando com o ChatWoot™._
71 | url | Opcional | URL de instalação do seu ChatWoot™.
_Informe somente se você estiver se conectando ao ChatWoot™._
72 | sign_msg | Opcional | Deseja que as mensagens sejam assinadas com o nome do Atendente?