Agregar o eliminar participantes de grupos de WhatsApp con API

12 de agosto de 2024

Aprende cómo agregar o eliminar participantes "automáticamente" en grupos de WhatsApp. Potencia tu marca y lleva tus ventas al siguiente nivel.

Siguiendo nuestra serie de artículos con consejos sobre grupos de WhatsApp con Wassenger’s API, hoy te mostraremos cómo puedes aumentar tus ventas agregando o eliminando participantes en grupos y ayudarte a categorizar a tus clientes en diferentes grupos para mantener tu empresa actualizada y optimizada.

  • Aprende cómo crear un grupo desde nuestra API aquí
  • Aprende cómo gestionar grupos de WhatsApp aquí

🤩 🤖 Wassenger es una solución completa de API para WhatsApp. Regístrate para una prueba gratuita de 7 días y comienza en minutos!

Requisitos

  • Tener un número de WhatsApp ya vinculado a la plataforma y en línea.
  • Obtén el ID único de tu número asignado en Wassenger desde aquí.
  • ID del grupo de WhatsApp (WID) que puedes encontrar de dos maneras:

Cómo obtener el ID del grupo de WhatsApp

Puedes obtener el ID del grupo de WhatsApp usando uno de estos métodos:

  1. Web: ve a ajustes del número > Grupos > Copia el WID del grupo.
  2. API: consulta los grupos disponibles en tu número usando este endpoint.

Endpoint de la API

Usaremos el siguiente endpoint de la API para gestionar los participantes del grupo:

Agregar participantes

Preparar la solicitud

Apunta la URL de la API usando el método POST para agregar participantes

Prueba la API directamente en tu navegador haciendo clic aquí

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

Encabezados HTTPS requeridos > Obtén tu clave API aquí

Content-Type: application/json
Token: $API_TOKEN

Usa el cuerpo en formato JSON

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

Agregar participantes usando código

Explora cómo usar el código en tu navegador sin instalar ningún software.

Además, puedes encontrar distintos lenguajes que puedes probar en 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 es una plataforma completa de comunicación y solución de API para WhatsApp. Explora más de 100 casos de uso de la API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y empezar en minutos!

Eliminar participantes

Preparar la solicitud

Apunta la URL de la API usando el método DELETE para eliminar participantes

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

Encabezados HTTPS requeridos > Obtén tu clave API aquí

Content-Type: application/json
Token: $API_TOKEN

Usa el cuerpo en formato JSON

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

Explora cómo usar el código en tu navegador sin instalar ningún software.

Además, puedes encontrar distintos lenguajes que puedes probar en 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();

🖥️ ¿Buscas un ejemplo de código? Ve al probador en vivo de la API y obtén ejemplos de código listos para usar en más de 15 lenguajes de programación, incluidos Python, JavaScript, PHP, C#, Java, Ruby, Go, Powershell, cURL y más.

Pruebas en vivo de la API

Puedes probar y experimentar con la API directamente desde tu navegador.

Una vez termines de probar, obtén el ejemplo de código autogenerado en tu lenguaje de programación preferido y estarás listo para comenzar.

Prueba el probador en vivo de la API

🤩 🤖 Wassenger es una plataforma completa de comunicación y solución de API para WhatsApp. Explora más de 100 casos de uso de la API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y empezar en minutos!

Preguntas frecuentes

¿Cómo puedo gestionar contactos en un grupo?

Solo tienes que enviar múltiples solicitudes a la API, una por cada grupo objetivo.

Por ejemplo, si quieres actualizar 10 grupos, debes enviar 10 solicitudes HTTPS independientes a la API y una por cada método (POST, PATCH o DELETE).

No hay opción para gestionar distintos grupos en una sola solicitud a la API.

¿Cuántos contactos puedo gestionar a la vez?

Para evitar problemas de procesamiento o errores, no se recomienda gestionar más de 10 participantes a la vez por solicitud de la API (agregar, eliminar, ascender o degradar).

Recursos útiles adicionales

Documentación de la API

Para más detalles sobre el endpoint de la API, por favor consulta nuestra documentación. Encontrarás todos los detalles sobre los parámetros de solicitud aceptados, las posibles respuestas de éxito o error y ejemplos de código listos para usar en múltiples lenguajes de programación.

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

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free