La API de instalaciones locales dejará de estar disponible. Consulta nuestro documento Fin de la API de instalaciones locales para conocer los detalles y descubrir cómo migrar a nuestra nueva generación de API de la nube.

Recursos externos

/v1/certificates/external

Usa este perímetro para subir, recuperar, eliminar y reiniciar tus certificados de entidad de certificación (CA).

Antes de empezar

Debes usar la cuenta de admin para subir y eliminar todos los certificados.

Consulta

Haz llamadas GET a este punto de conexión para recuperar un certificado CA almacenado en el cliente de la API de WhatsApp Business.

Ejemplo:

Solicitud

GET /v1/certificates/external/ca

Respuesta

Content-Type: text/plain
Content-Length: content-size

certificate

Si no es posible encontrar el certificado, se devolverá un código de respuesta 404 sin cuerpo.

Subir un certificado

Haz llamadas POST para subir un certificado CA. Asegúrate de que el certificado subido contenga las siguientes secciones en un único archivo, en el orden que se muestra aquí:

  1. Clave privada
  2. Certificado
  3. Uno o más certificados de CA intermedios: el cliente de la API de WhatsApp Business necesita al menos un certificado de CA intermedio. De lo contrario, la subida no funcionará.

Ejemplo:

Para subir el certificado al cliente de la API de WhatsApp Business, usa la siguiente solicitud a la API, que tiene el campo Content-Type configurado en text/plain.

POST /v1/certificates/external
  Content-Type: text/plain
  Content-Length: content-size

certificate

Si se usa cURL, el comando se verá algo así:

curl -X POST \
  https://your-webapp-hostname:your-webapp-port/v1/certificates/external \
  -H 'Authorization: Bearer your-auth-token' \
  -H 'Content-Type: text/plain' \
  --data-binary @your-path-to-certificate.pem 

Si ya existe un certificado, este se reemplazará. Debes reiniciar el servidor web (es decir, todas las instancias del contenedor de la app web) una vez que se suba el certificado.

Debes ser sumamente cuidadoso y procurar que el certificado que subas sea válido (es decir, adecuado y correcto). De lo contrario, el servidor web no se reiniciará (ya que el punto de conexión de la API estará caído), y se necesitará una intervención manual para resolver la situación.

La respuesta a la llamada a la API se verá algo así:

null

Restablecimiento

Cuando se sube un certificado de CA al cliente de la API de WhatsApp Business, si el certificado no es válido por algún motivo, los contenedores de la app web no arrancarán en el reinicio, ya que el punto de conexión de la API no estará funcionando. Para resolver esta situación, tendrás que quitar la tabla certs de la base de datos.

Para quitar la tabla certs de la base de datos:

  1. Detén el contenedor de app web.
    docker stop your-webapp-container-id
  2. Conéctate a MySQL a través de Docker en la línea de comandos.
    docker exec -it your-mysql-container-id mysql -uroot -p
  3. Ingresa tu contraseña de MySQL cuando se te solicite (como aparece en mysql.conf).
  4. Revisa que exista la tabla users.
    show tables in waweb;
  5. Elimina la tabla certs.
    drop table waweb.certs;
  6. Sal de MySQL.
    exit;
  7. Reinicia el contenedor de app web.
    docker restart your-webapp-container-id
  8. Vuelve a iniciar sesión en MySQL siguiendo los pasos anteriores para asegurarte de que ahora existe la tabla certs.

Eliminación

No se admite la eliminación de certificados. Quizá se admita en el futuro si existe un caso de uso que hayamos pasado por alto.