> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Introducción

> Guía de inicio para la API de Jelou

Jelou API es una herramienta potente para que las compañías se comuniquen de forma más profesional y eficiente con sus clientes a través de chatbots. Permite crear sistemas complejos e interconectados, integrándose fácilmente con la plataforma de Jelou, servicios externos y otros sistemas.

Basada en los principios REST, facilita la colaboración y el intercambio de información, personalizando mensajes, manteniendo el contexto del usuario y guardando el historial de chat.

En términos prácticos, Jelou API permite que los chatbots se comuniquen con otros sistemas, facilitando la colaboración, el intercambio de información y la ejecución de diversas tareas, como personalizar mensajes, mantener el contexto del usuario o garantizar la continuidad guardando el historial de chat. Esto es crucial para desarrollar aplicaciones modernas e interconectadas, permitiendo una mejor experiencia de usuario y conversaciones de múltiples turnos.

La API siempre responderá con un objeto y, según el contexto, los recursos pueden responder con un objeto simple o un array de objetos.

<Note>
  Esta API acepta cuerpos de solicitud en formato JSON y requiere que el contenido tenga el encabezado `Content-Type: application/json`. Este encabezado debe especificarse en cada solicitud.
</Note>

## Dominio

Jelou API está disponible en el siguiente dominio:

```
https://api.jelou.ai
```

***

## Autenticación

Los clientes que usen esta API recibirán un `client ID` y una `client secret key` para la autenticación básica.

Para cualquier endpoint de la API, se debe agregar el siguiente encabezado:

```
Authorization: Basic <Base64 encoded clientId:clientSecret>
```

### Ejemplo

Si tu `clientId` es `mi_client_id` y tu `clientSecret` es `mi_client_secret`:

1. Únelos con dos puntos: `mi_client_id:mi_client_secret`
2. Codifícalo en Base64: `bWlfY2xpZW50X2lkOm1pX2NsaWVudF9zZWNyZXQ=`
3. Inclúyelo en el header: `Authorization: Basic bWlfY2xpZW50X2lkOm1pX2NsaWVudF9zZWNyZXQ=`

***

## Errores

Jelou utiliza los estándares HTTP para reportar errores. En general:

* **Códigos 2XX** indican éxito.
* **Códigos 4XX** indican errores del cliente.
* **Códigos 5XX** indican errores del servidor.

Cuando ocurre un error, la respuesta incluye un objeto JSON con un `código` y una `descripción` detallada del problema.

### Códigos de error

| Código                           | Código de estado HTTP | Descripción                                                          |
| -------------------------------- | --------------------- | -------------------------------------------------------------------- |
| `bot_not_found`                  | 404                   | La compañía no tiene permiso para usar este bot.                     |
| `forbidden_bot`                  | 403                   | No tienes permiso para usar este bot.                                |
| `message_could_not_be_send`      | 400                   | No se pudo enviar el mensaje debido a una solicitud incorrecta.      |
| `notification_could_not_be_send` | 400                   | No se pudo enviar la notificación debido a una solicitud incorrecta. |
| `unauthorized`                   | 401                   | No estás autorizado para realizar esta solicitud.                    |
| `unprocessable_entity`           | 422                   | Falta un campo o hay un error en la solicitud.                       |
| `internal_server_error`          | 500                   | El token de autorización no tiene una compañía asignada.             |

***

## Límites de peticiones

La API tiene un límite de **5 solicitudes por segundo**.
