Saltar al contenido principal

Mensajería en canales de texto

Esta página explica cómo funciona la mensajería en canales para integraciones: cómo descubrir canales, la diferencia entre publicar en un canal y enviar un mensaje directo, el subconjunto de markdown que soportan los mensajes, la regla de permisos de participantes y la respuesta que devuelve cada llamada. Para una orientación rápida y ejemplos listos para copiar y pegar, empieza por la introducción a Channels.

Listar canales

El endpoint de list channels devuelve los canales que tu token puede ver, con filtros opcionales:

  • q — búsqueda sin distinción de mayúsculas y minúsculas en el nombre del canal, la descripción y el nombre/email de los participantes.
  • typecategory, text, voice, inbox, classroom, meeting o whatsapp.
  • kindgroup o dm.
  • participantId — canales que incluyen a un usuario o equipo específico.
  • limit / offset — paginan los resultados (limit 1–200, por defecto 100).

Cada canal incluye su id, nombre, type, kind, ids de usuarios/equipos participantes y marcas de tiempo — suficiente para descubrir el channelId en el que necesitas publicar.

Enviar un mensaje a un canal

Haz un POST al endpoint send-message del canal con el channelId en la ruta y un cuerpo message (markdown, hasta 10,000 caracteres):

curl -X POST "https://api.copera.ai/public/v1/chat/channel/{channelId}/send-message" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "message": "Deploy to production finished ✅" }'

Un envío exitoso devuelve 204 No Content.

Los mensajes soportan un subconjunto de markdown — encabezados, negrita/cursiva, listas ordenadas y no ordenadas, código en línea y en bloque, citas (blockquotes), reglas horizontales y enlaces.

nota

Una integración solo puede publicar en los canales de los que es participante. Agrega tu integración al canal de destino primero.

Enviar un mensaje directo

Haz un POST al endpoint de direct-message con el userId del destinatario y un message (hasta 10,000 caracteres). Copera crea o reutiliza el canal de DM por ti:

curl -X POST "https://api.copera.ai/public/v1/chat/direct-message/send-message" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "userId": "<member id>", "message": "Your report is ready." }'

El DM se encola y la respuesta (202 Accepted) devuelve el channelId resuelto. Para encontrar el userId de un destinatario, usa el endpoint de miembros del Workspace con una búsqueda q.

Autenticación

Los endpoints de canales aceptan un Personal Access Token completo (cp_pat_) o una clave de API de integración (cp_key_) con el alcance access_channels. Consulta Autenticación para conocer los tipos de token.

Referencia