Adicionar ou remover participantes de grupos do WhatsApp com API

12 de agosto de 2024

Aprenda como adicionar ou remover participantes “automaticamente” de grupos do WhatsApp. Impulsione sua marca e leve suas vendas para o próximo nível.

Seguindo nossa série de artigos com dicas sobre grupos do WhatsApp com Wassenger’s API, hoje vamos mostrar como você pode aumentar suas vendas adicionando ou removendo participantes de grupos e ajudar a categorizar seus clientes em diferentes grupos para manter sua empresa atualizada e otimizada.

  • Aprenda como criar um grupo pela nossa API aqui
  • Aprenda como gerenciar grupos do WhatsApp aqui

🤩 🤖 Wassenger é uma solução completa de API para WhatsApp. Inscreva-se para um teste gratuito de 7 dias e comece em minutos!

Requisitos

  • Ter um número do WhatsApp já vinculado à plataforma e online.
  • Obter o ID único do seu número fornecido no Wassenger aqui.
  • ID do grupo do WhatsApp (WID) que você pode encontrar de duas maneiras:

Como obter o ID do grupo do WhatsApp

Você pode obter o ID do grupo do WhatsApp usando um destes métodos:

  1. Web: vá para configurações do número > Grupos > Copie o WID do grupo.
  2. API: consulte os grupos disponíveis no seu número usando este endpoint.

Endpoint da API

Usaremos o seguinte endpoint da API para gerenciar os participantes do grupo:

Adicionar participantes

Preparar a requisição

Aponte a URL da API usando o método POST para adicionar participantes

Teste a API diretamente no seu navegador clicando aqui

https://api.wassenger.com/v1/devices/{deviceId}/groups/{groupId}/participants

Cabeçalhos HTTPS obrigatórios > Obtenha sua chave de API aqui

Content-Type: application/json
Token: $API_TOKEN

Use o corpo em formato JSON

{
  "participants": [
    {
      "phone": "+12345678900",
      "admin": true
    },
    {
      "phone": "+12345678901",
      "admin": false
    }
  ]
}

Adicionar participantes usando código

Explore como usar o código no seu navegador sem instalar nenhum software.

Além disso, você pode encontrar diferentes linguagens para testar no Replit.com:

# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/devices/61b37a069cba0c15d6/groups/1203630298136@g.us/participants"
payload = { "participants": [
{
"phone": "+12345678909", 
"admin": True
}, 
{
"phone": "+12345678901", 
"admin": False
}
] }
headers = {
"Content-Type": "application/json", 
"Token": "API_TOKEN_GOES_HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
<?php
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => 'https://api.wassenger.com/v1/devices/61b37a069cba0c15d6C/groups/12036302981363@g.us/participants',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => json_encode([
    'participants' => [
      [
        'phone' => '+12345678909',
        'admin' => null,
      ],
      [
        'phone' => '+12345678901',
        'admin' => null,
      ],
    ],
  ]),
  CURLOPT_HTTPHEADER => [
    'Content-Type: application/json',
    'Token: API_TOKEN_GOES_HERE',
  ],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
  echo 'cURL Error #:' . $err;
} else {
  echo $response;
}
// Examples requires to have installed pecl_http package, a simple and elegant HTTP client for PHP.
// Install it by running: pecl install pecl_http
// More information: https://pecl.php.net/package/pecl_http/3.2.0
<?php
$client = new http\Client();
$request = new http\Client\Request();
$body = new http\Message\Body();
$body->append(
  json_encode([
    'participants' => [
      [
        'phone' => '+12345678901',
        'admin' => null,
      ],
      [
        'phone' => '+12345678902',
        'admin' => null,
      ],
    ],
  ])
);
$request->setRequestUrl(
  'https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/12036302981363@g.us/participants'
);
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
  'Content-Type' => 'application/json',
  'Token' => 'API_TOKEN_GOES_HERE',
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
package main
import(
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url:= "https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/120363029813@g.us/participants"
payload:= strings.NewReader("{\"participants\":[{\"phone\":\"+12345678901\", \"admin\":true}, {\"phone\":\"+12345678902\", \"admin\":false}]}")
req, _:= http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Token", "API_TOKEN_GOES_HERE")
res, _:= http.DefaultClient.Do(req)
defer res.Body.Close()
body, _:= io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/1203630298136@g.us/participants");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "API_TOKEN_GOES_HERE");
request.AddParameter("application/json", "{\"participants\":[{\"phone\":\"+12345678901\", \"admin\":true}, {\"phone\":\"+12345678902\", \"admin\":false}]}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

require 'uri' require 'net/http'

url = URI("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/12036302981363@g.us/participants")

http = Net::HTTP.new(url.host, url.port) http.use_ssl = true

request = Net::HTTP::Post.new(url) request["Content-Type"] = 'application/json' request["Token"] = 'API_TOKEN_GOES_HERE' request.body = "{\"participants\":[{\"phone\":\"+12345678901\",\"admin\":true},{\"phone\":\"+12345678902\",\"admin\":false}]}"

response = http.request(request) puts response.read_body

// This code requires you to have installed Unirest package.
// Documentation: https://kong.github.io/unirest-java/#requests
// Installation: http://kong.github.io/unirest-java/
HttpResponse<String> response = Unirest.post("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c897/groups/1203630298136@g.us/participants")
.header("Content-Type", "application/json")
.header("Token", "API_TOKEN_GOES_HERE")
.body("{\"participants\":[{\"phone\":\"+12345678901\", \"admin\":true}, {\"phone\":\"+12345678902\", \"admin\":false}]}")
.asString();

🤩 🤖 Wassenger é uma plataforma de comunicação completa e solução de API para WhatsApp. Explore mais de 100 casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e começando em minutos**!**

Remover participantes

Preparar a requisição

Aponte a URL da API usando o método DELETE para remover participantes

https://api.wassenger.com/v1/devices/{deviceId}/groups/{groupId}/participants

Cabeçalhos HTTPS obrigatórios > Obtenha sua chave de API aqui

Content-Type: application/json
Token: $API_TOKEN

Use o corpo em formato JSON

['+12345678900', '+12345678901'];

Explore como usar o código no seu navegador sem instalar nenhum software.

Além disso, você pode encontrar diferentes linguagens para testar no Replit.com:

# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/12036302981363@g.us/participants"
payload = ["+12345678901", "+12345678902"]
headers = {
"Content-Type": "application/json", 
"Token": "API_TOKEN_GOES_HERE"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.json())
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/1203630298136@g.us/participants", 
CURLOPT_RETURNTRANSFER => true, 
CURLOPT_ENCODING => "", 
CURLOPT_MAXREDIRS => 10, 
CURLOPT_TIMEOUT => 30, 
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, 
CURLOPT_CUSTOMREQUEST => "DELETE", 
CURLOPT_POSTFIELDS => json_encode([
'+12345678901', 
'+12345678902'
]), 
CURLOPT_HTTPHEADER => [
"Content-Type: application/json", 
"Token: API_TOKEN_GOES_HERE"
], 
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if($err) {
echo "cURL Error #:".$err;
} else {
echo $response;
package main
import(
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url:= "https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c89/groups/1203630298136@g.us/participants"
payload:= strings.NewReader("[\"+12345678901\", \"+12345678902\"]")
req, _:= http.NewRequest("DELETE", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Token", "API_TOKEN_GOES_HERE")
res, _:= http.DefaultClient.Do(req)
defer res.Body.Close()
body, _:= io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/12036302981363@g.us/participants");
var request = new RestRequest(Method.DELETE);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "API_TOKEN_GOES_HERE");
request.AddParameter("application/json", "[\"+12345678901\", \"+12345678902\"]", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

require 'uri' require 'net/http'

url = URI("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c8/groups/12036302981363@g.us/participants")

http = Net::HTTP.new(url.host, url.port) http.use_ssl = true

request = Net::HTTP::Delete.new(url) request["Content-Type"] = 'application/json' request["Token"] = 'API_TOKEN_GOES_HERE' request.body = "[\"+12345678901\",\"+12345678902\"]"

response = http.request(request) puts response.read_body

// This code requires you to have installed Unirest package.
// Documentation: https://kong.github.io/unirest-java/#requests
// Installation: http://kong.github.io/unirest-java/
HttpResponse<String> response = Unirest.delete("https://api.wassenger.com/v1/devices/61b37a069cba0c15d6c/groups/12036302981363@g.us/participants")
.header("Content-Type", "application/json")
.header("Token", "API_TOKEN_GOES_HERE")
.body("[\"+12345678901\", \"+12345678902\"]")
.asString();

🖥️ Procurando um exemplo de código? Vá para o testador de API ao vivo e obtenha exemplos de código prontos para uso em mais de 15 linguagens de programação, incluindo Python, JavaScript, PHP, C#, Java, Ruby, Go, Powershell, cURL e mais.

Teste de API ao vivo

Você pode testar e experimentar a API ao vivo diretamente do seu navegador.

Quando terminar de testar, obtenha o exemplo de código gerado automaticamente na sua linguagem de programação preferida e você estará pronto para usar.

Experimente o testador de API ao vivo

🤩 🤖 Wassenger é uma plataforma de comunicação completa e solução de API para WhatsApp. Explore mais de 100 casos de uso da API e automatize qualquer coisa no WhatsApp inscrevendo-se para um teste gratuito e começando em minutos**!**

FAQ

Como posso gerenciar contatos em um grupo?

Você só precisa enviar várias requisições à API, uma por grupo alvo.

Por exemplo, se você quiser atualizar 10 grupos, deve enviar 10 requisições HTTPS independentes para a API, uma por método (POST, PATCH ou DELETE).

Não há opção para gerenciar grupos diferentes em uma única requisição à API.

Quantos contatos posso gerenciar de uma vez?

Para evitar problemas de processamento ou erros, não é recomendado gerenciar mais de 10 participantes por vez em cada requisição à API (adicionar, excluir, promover ou rebaixar).

Recursos úteis adicionais

Documentação da API

Para mais detalhes sobre o endpoint da API, por favor verifique nossa documentação. Você encontrará todos os detalhes sobre os parâmetros de requisição aceitos, possíveis respostas de sucesso ou erro e exemplos de código prontos para uso em várias linguagens de programação.

https://app.wassenger.com/docs/#tag/Groups

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free