# Mensajes

En esta sección se encuentran los servicios que permiten enviar mensajes desde tu chatbot o sistema externo a un chat activo en B2Chat. Estos endpoints se utilizan después de haber creado o recuperado un `chat_id`, el cual identifica la conversación con el agente humano.

### Enviar mensaje

Este servicio permite enviar un mensaje de texto desde tu chatbot o sistema externo al chat activo en B2Chat. Este mensaje será visible para el agente asignado a la conversación y se asociará al chat\_id correspondiente.

## POST /bots/{chat\_id}/textMessage

>

```json
{"openapi":"3.0.3","info":{"title":"B2Chat Auth API","version":"1.1.0"},"servers":[{"url":"https://api.b2chat.io"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/bots/{chat_id}/textMessage":{"post":{"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string"},"description":"Identificador del chat al que se enviará el mensaje."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Texto del mensaje que se enviará al usuario."}}}}}},"responses":{"201":{"description":"Mensaje enviado correctamente.","content":{"application/json":{"schema":{"type":"object","properties":{"message_id":{"type":"string","description":"Identificador único del mensaje enviado."},"text":{"type":"string","description":"Texto del mensaje enviado."}}}}}},"400":{"description":"Error en la solicitud. Se retorna si el campo `text` está vacío o es nulo."}}}}}}
```

### Enviar imagen

Este servicio permite enviar una imagen al chat activo mediante una URL pública. La imagen será compartida con el agente dentro de la conversación y puede incluir un texto descriptivo opcional como caption.

{% hint style="info" %}
La URL debe ser una dirección válida y accesible públicamente para que el servicio pueda descargar el recurso en el momento de procesar la solicitud.
{% endhint %}

## POST /bots/{chat\_id}/sendImage

>

```json
{"openapi":"3.0.3","info":{"title":"B2Chat Auth API","version":"1.1.0"},"servers":[{"url":"https://api.b2chat.io"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/bots/{chat_id}/sendImage":{"post":{"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string"},"description":"Identificador del chat al que se enviará la imagen."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL pública de la imagen que se enviará."},"caption":{"type":"string","description":"Texto opcional que acompaña la imagen."}}}}}},"responses":{"201":{"description":"Imagen enviada correctamente.","content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","description":"URL de la imagen enviada."},"caption":{"type":"string","description":"Texto que acompaña la imagen."},"message_id":{"type":"string","description":"Identificador único del mensaje enviado."}}}}}},"400":{"description":"Error en la solicitud. Se retorna si el campo `url` es nulo o no es una URL válida."}}}}}}
```

### Enviar archivo

Este servicio permite enviar archivos al chat activo utilizando una URL pública. Este endpoint puede utilizarse para compartir documentos u otros recursos relevantes durante la conversación entre el usuario y el agente.

{% hint style="warning" %}
No existe una restricción específica sobre el tipo de archivo que se puede enviar. Se admiten formatos como **PDF, OGG, XLS, DOC**, entre otros. Se recomienda que el servidor del archivo devuelva el encabezado HTTP **`Content-Type`** correcto para facilitar su correcta interpretación por parte de los clientes.
{% endhint %}

## POST /bots/{chat\_id}/sendFile

>

```json
{"openapi":"3.0.3","info":{"title":"B2Chat Auth API","version":"1.1.0"},"servers":[{"url":"https://api.b2chat.io"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}},"paths":{"/bots/{chat_id}/sendFile":{"post":{"parameters":[{"name":"chat_id","in":"path","required":true,"schema":{"type":"string"},"description":"Identificador del chat al que se enviará el archivo."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL pública del archivo que se enviará."}}}}}},"responses":{"201":{"description":"Archivo enviado correctamente.","content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","description":"URL del archivo enviado."}}}}}},"400":{"description":"Error en la solicitud. Se retorna si el campo `url` es nulo o no es una URL válida."}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://b2chat.gitbook.io/b2chat-api-transferencia/nuestros-servicios/mensajes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
