Canal Telegram #

Registra el token de BotFather y administra el webhook de tu bot.

Prepara tu terminal una vez

Variables para bash o zsh
export FLOWORDR_BASE_URL="https://app.flowordr.com"
export FLOWORDR_API_KEY="<tu-api-key>"
export FLOWORDR_TENANT_ID="<tu-tenant-id>"

Ejecuta este bloque antes de los cURL. Sustituye los valores entre ángulos por tus credenciales; ningún ejemplo contiene claves reales.

GET /api/telegram/bots

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
cURL
curl "$FLOWORDR_BASE_URL/api/telegram/bots" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID"

Respuesta: 200 lista de bots.

POST /api/telegram/bots

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botUsernamebody stringSí1–50 caracteres—Nombre de usuario en Telegram.
botTokenbody stringEn creaciónHasta 100 caracteres—Token entregado por BotFather.
welcomeMessage / helpMessagebody stringNoHasta 500 / 1000 caracteres—Mensajes del bot.
defaultDocumentIdsbody integer[]NoIDs del tenantTodosDocumentos consultados.
defaultRagOptionsbody objectNominScore, maxChunks, temperature, maxHistoryTurns, strictMode, promptMode y másDefaults de TelegramOpciones RAG.
rateLimitPerMinutebody integer | nullNo0–100; 0 sin límiteDefault de TelegramLímite por usuario.
isActivebody boolean | nullNotrue, falseActivoEstado del bot.
cURL
curl -X POST "$FLOWORDR_BASE_URL/api/telegram/bots" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID" -H "Content-Type: application/json" -d '{"botUsername":"<nombre-del-bot>","botToken":"<token-de-botfather>"}'

Respuesta: 201 bot; 400 validación o configuración inválida.

GET /api/telegram/bots/{botId}

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
cURL
curl "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID"

Respuesta: 200 bot; 404 si no existe.

PUT /api/telegram/bots/{botId}

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
botUsernamebody stringSí1–50 caracteres—Nombre de usuario en Telegram.
botTokenbody stringEn creaciónHasta 100 caracteres—Token entregado por BotFather.
welcomeMessage / helpMessagebody stringNoHasta 500 / 1000 caracteres—Mensajes del bot.
defaultDocumentIdsbody integer[]NoIDs del tenantTodosDocumentos consultados.
defaultRagOptionsbody objectNominScore, maxChunks, temperature, maxHistoryTurns, strictMode, promptMode y másDefaults de TelegramOpciones RAG.
rateLimitPerMinutebody integer | nullNo0–100; 0 sin límiteDefault de TelegramLímite por usuario.
isActivebody boolean | nullNotrue, falseActivoEstado del bot.
cURL
curl -X PUT "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID" -H "Content-Type: application/json" -d '{"botUsername":"<nombre-del-bot>"}'

Respuesta: 200 bot actualizado; 400 o 404.

DELETE /api/telegram/bots/{botId}

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
cURL
curl -X DELETE "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID"

Respuesta: 204 sin contenido; 404 si no existe.

GET /api/telegram/bots/{botId}/status

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
cURL
curl "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>/status" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID"

Respuesta: 200 estado del webhook.

POST /api/telegram/bots/{botId}/webhook

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
webhookUrlbody URL | nullNoURL HTTPS públicaURL del sistemaDestino del webhook.
secretTokenbody stringNoHasta 100 caracteres—Validación de Telegram.
dropPendingUpdatesbody booleanNotrue, falsetrueDescarta mensajes pendientes.
cURL
curl -X POST "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>/webhook" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID" -H "Content-Type: application/json" -d '{}'

Respuesta: 200 configuración del webhook; 400 si falla.

DELETE /api/telegram/bots/{botId}/webhook

NombreTipoObligatorioValores aceptados / rangoDefaultDescripción
X-Api-Key (header)stringSíClave activa del tenant—Autenticación.
X-Tenant-Id (header)UUIDCondicionalTenant autorizadoTenant de la claveNecesario si la clave permite varios tenants.
botIdpath UUIDSíID devuelto por POST /api/telegram/bots—Bot del tenant.
cURL
curl -X DELETE "$FLOWORDR_BASE_URL/api/telegram/bots/<bot-id>/webhook" -H "X-Api-Key: $FLOWORDR_API_KEY" -H "X-Tenant-Id: $FLOWORDR_TENANT_ID"

Respuesta: 200 desactivación del webhook.