Explorar documentación

Crear una app OAuth de Slack para OpenConnector

Usa una app OAuth de Slack cuando OpenConnector necesite leer conversaciones de Slack, listar usuarios, enviar mensajes, subir archivos o gestionar reacciones a través del servicio slack.

Servicio de OpenConnector

ID del servicioProveedorTipo de autenticación
slackSlackOAuth2

El proveedor de Slack de OpenConnector usa Slack OAuth v2 y solicita scopes de Slack como channels:read, groups:read, im:read, mpim:read, scopes de historial, scopes de archivos, users:read, chat:write, im:write y scopes de reacciones.

Requisitos previos

  • Un entorno de ejecución de OpenConnector en funcionamiento.
  • Permiso para crear o gestionar una app de Slack para el espacio de trabajo de destino.
  • Permiso para instalar apps en el espacio de trabajo de Slack, o acceso a un propietario o administrador del espacio de trabajo que pueda aprobar la instalación.
  • El origen de OpenConnector que los usuarios abren en el navegador, como http://localhost:3000 o https://connect.example.com.

Paso 1: Configurar la URL de callback de OpenConnector

Construye la URL de callback añadiendo /oauth/callback a tu origen de OpenConnector.

Para pruebas locales, usa http://localhost:3000/oauth/callback. Si Slack no acepta tu URL de callback local, expón OpenConnector a través de un túnel HTTPS o un dominio público, configura OOMOL_CONNECT_ORIGIN, reinicia y usa la URL de callback pública, como https://connect.example.com/oauth/callback.

Paso 2: Crear una app de Slack

En Slack API app management:

  1. Crea una app nueva.
  2. Elige el espacio de trabajo en el que quieres desarrollar o probar.
  3. Abre OAuth & Permissions.
  4. Añade la URL de callback exacta de OpenConnector en las URL de redirección.
  5. Añade los scopes de token de bot que necesiten tus acciones de OpenConnector.
  6. Guarda la configuración de la app.

La descripción general de OAuth de Slack es Installing with OAuth, y la referencia de scopes de Slack es Scopes.

Paso 3: Copiar las credenciales de cliente

Abre Basic Information de la app de Slack y copia:

Valor de SlackCampo de OpenConnector
Client IDclientId
Client SecretclientSecret

No uses el token de bot como secreto de cliente OAuth. OpenConnector inicia el flujo OAuth y almacena la credencial de Slack resultante después de la autorización.

Paso 4: Guardar el cliente de Slack en OpenConnector

Usa la consola web de OpenConnector:

  1. Abre la consola web de OpenConnector, como http://localhost:3000.
  2. Abre Providers y selecciona Slack.
  3. Elige Configure OAuth Client o Edit OAuth Client.
  4. Pega el ID de cliente y el secreto de cliente de Slack.
  5. Elige Save OAuth Client.

Paso 5: Conectar y probar

Después de guardar el cliente OAuth, elige Connect en la página del proveedor Slack. Elige el espacio de trabajo de Slack, aprueba la app, vuelve a OpenConnector y confirma que la página del proveedor muestra el espacio de trabajo como conectado.

Entre las acciones de prueba de bajo riesgo se incluyen slack.list_conversations, slack.list_channels y slack.list_users.

Solución de problemas

SíntomaQué comprobar
Slack rechaza la URL de redirecciónConfirma que la URL de redirección de Slack es <openconnector-origin>/oauth/callback. Si Slack requiere HTTPS para tu configuración, usa un origen público HTTPS y configura OOMOL_CONNECT_ORIGIN.
La app no se puede instalarPide a un propietario o administrador del espacio de trabajo de Slack que apruebe la app si el espacio de trabajo restringe la instalación de apps.
Faltan canalesLa visibilidad de canales públicos y privados depende de los scopes, la política del espacio de trabajo de Slack y si la app tiene acceso al canal. Invita a la app a los canales privados cuando sea necesario.
Fallan las acciones de mensajesConfirma que la app tiene scopes de escritura como chat:write y que puede acceder a la conversación de destino.
Los cambios de scopes no se aplicanReinstala o vuelve a conectar Slack después de cambiar los scopes para que la credencial conectada reciba los nuevos permisos.