# Chat

En esta sección se encuentran los servicios relacionados con la gestión de conversaciones entre tu chatbot o sistema externo y los agentes de B2Chat.

## Crear o continuar un chat

Este servicio permite iniciar una conversación con un agente humano o continuar un chat existente. El cual recibe la información del contacto y el contexto de la conversación para transferirla desde tu chatbot o sistema externo hacia B2Chat.&#x20;

{% hint style="info" icon="eyes" %}
Al crear el chat, el `chat_id` puede ser definido por ti o generado automáticamente por la plataforma. Este identificador es obligatorio en todas las solicitudes posteriores para enviar mensajes y eventos dentro de la misma conversación.
{% endhint %}

## POST /bots/chat

>

```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":{"post":{"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contact":{"type":"object","description":"Información del contacto. Requerido en el primer chat.","properties":{"full_name":{"type":"string","description":"Nombre completo del contacto"},"identification":{"type":"string","description":"Número de identificación"},"phoneNumber":{"type":"string","description":"Teléfono fijo"},"email":{"type":"string","description":"Correo electrónico"},"city":{"type":"string","description":"Ciudad"},"address":{"type":"string","description":"Dirección"},"company":{"type":"string","description":"Empresa"},"mobileNumber":{"type":"object","required":["country_calling_code","number"],"properties":{"country_calling_code":{"type":"string","description":"Código de país"},"number":{"type":"string","description":"Número móvil del contacto"}}}}},"bot_chat":{"type":"array","description":"Historial de mensajes entre el bot y el contacto","items":{"type":"object","properties":{"datetime":{"type":"number","description":"Timestamp Unix del mensaje"},"message_id":{"type":"string","description":"Identificador único del mensaje"},"text":{"type":"string","description":"Contenido del mensaje"},"from":{"type":"object","properties":{"full_name":{"type":"string"},"is_bot":{"type":"boolean"}}},"to":{"type":"object","properties":{"full_name":{"type":"string"},"is_bot":{"type":"boolean"}}}}}},"tracking_info":{"type":"string","description":"Metadata personalizada en formato JSON"},"department_code":{"type":"string","description":"Código del departamento. Requerido si la cuenta tiene el módulo\nde departamentos activo.\n"}}}}}},"responses":{"201":{"description":"Chat creado correctamente","content":{"application/json":{"schema":{"type":"object","properties":{"chat_id":{"type":"string"},"datetime":{"type":"number"}}}}}},"400":{"description":"Error en la solicitud","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}}}}}}
```

### :bulb: Para tener en cuenta

<table data-full-width="false"><thead><tr><th>Escenario</th><th>¿Enviar chat_id?</th><th>¿Enviar contact?</th></tr></thead><tbody><tr><td>Primer chat de un contacto</td><td>❌ No necesariamente</td><td>✅ Sí (requerido)</td></tr><tr><td>Chats siguientes del mismo contacto</td><td>✅ Sí (usar el chat_id recibido en la respuesta anterior)</td><td>⚠️ Opcional</td></tr></tbody></table>


---

# 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/chat.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.
