# Módulo de Clientes

[![image.png](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/scaled-1680-/DUbNMaMDtZafMeyo-image.png)](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/DUbNMaMDtZafMeyo-image.png)

El módulo de Clientes permite acceder a la información registrada de los clientes del sistema, ya sea de forma general (listado) o específica (por ID o por documento).

#### **Consultar listado de clientes**

**Función:** obtener una lista paginada de clientes con sus datos básicos.

**Ruta:** `<span class="sl-text-muted" dir="ltr">https://{Base_URL}/api/public</span><span class="sl-flex-1 sl-font-semibold">/v1/clients</span>`

**Parámetros disponibles:**

<div class="_tableContainer_1rjym_1" id="bkmrk-par%C3%A1metro-descripci%C3%B3"><div class="group _tableWrapper_1rjym_13 flex w-fit flex-col-reverse" tabindex="-1"><table class="w-fit min-w-(--thread-content-width)" data-end="4438" data-start="4133" style="width: 100%; height: 164.458px;"><thead data-end="4160" data-start="4133"><tr data-end="4160" data-start="4133" style="height: 37.6806px;"><th data-col-size="sm" data-end="4145" data-start="4133" style="width: 49.9471%; height: 37.6806px; text-align: justify;">Parámetro</th><th data-col-size="md" data-end="4160" data-start="4145" style="width: 49.9471%; height: 37.6806px; text-align: justify;">Descripción</th></tr></thead><tbody data-end="4438" data-start="4190"><tr data-end="4250" data-start="4190" style="height: 37.6944px;"><td data-col-size="sm" data-end="4199" data-start="4190" style="width: 49.9471%; height: 37.6944px; text-align: justify;">`take`</td><td data-col-size="md" data-end="4250" data-start="4199" style="width: 49.9471%; height: 37.6944px; text-align: justify;">Cantidad de registros a retornar (obligatorio).</td></tr><tr data-end="4295" data-start="4251" style="height: 29.6944px;"><td data-col-size="sm" data-end="4260" data-start="4251" style="width: 49.9471%; height: 29.6944px; text-align: justify;">`skip`</td><td data-col-size="md" data-end="4295" data-start="4260" style="width: 49.9471%; height: 29.6944px; text-align: justify;">Cantidad de registros a omitir.</td></tr><tr data-end="4375" data-start="4296" style="height: 29.6944px;"><td data-col-size="sm" data-end="4330" data-start="4296" style="width: 49.9471%; height: 29.6944px; text-align: justify;">`birthday_from` y `birthday_to`</td><td data-col-size="md" data-end="4375" data-start="4330" style="width: 49.9471%; height: 29.6944px; text-align: justify;">Rango de fechas de nacimiento (opcional).</td></tr><tr data-end="4438" data-start="4376" style="height: 29.6944px;"><td data-col-size="sm" data-end="4386" data-start="4376" style="width: 49.9471%; height: 29.6944px; text-align: justify;">`ids[]`</td><td data-col-size="md" data-end="4438" data-start="4386" style="width: 49.9471%; height: 29.6944px; text-align: justify;">Lista de identificadores específicos (opcional).</td></tr></tbody></table>

</div></div>**Pasos para ejecutar la consulta:**

1. Ingrese a `{BASE_URL}/docs/api`.
2. Busque la sección **Clientes → Obtiene un listado paginado de clientes con sus datos básicos**
3. En el campo `take`, escriba la cantidad de registros que desea obtener (por ejemplo, `10`).
4. Si desea filtrar, puede agregar `birthday_from` y `birthday_to` en formato `YYYY-MM-DD`.
5. Pulse **“Enviar petición”**.
6. Verifique la respuesta.  
    Si todo está correcto, obtendrá un código **200 OK** con los datos solicitados.

**Ejemplo de respuesta:**

[![image.png](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/scaled-1680-/slEfgs2MizPQp5GT-image.png)](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/slEfgs2MizPQp5GT-image.png)

#### **Consultar cliente por ID**

**Función:** obtener los datos completos de un cliente específico usando su identificador.

**Ruta:** `<span class="sl-text-muted" dir="ltr">https://{Base_URL}/api/public</span><span class="sl-flex-1 sl-font-semibold">/v1/clients/{id}</span>`

**Pasos:**

<div class="overflow-y-auto p-4" dir="ltr" id="bkmrk-en-el-campo-de-la-ru">1. En el campo de la ruta, reemplace `{id}` por el número de identificación del cliente (por ejemplo, `2200`).
2. Agregue el parámetro `take=1`.
3. Envíe la petición.
4. Si el cliente existe, recibirá un código **200 OK**.
5. Si el cliente no existe, obtendrá un **404 Not Found**.

</div>**Ejemplo de solicitud:**

<div class="overflow-y-auto p-4" dir="ltr" id="bkmrk-get-%2Fapi%2Fpublic_api%2F"><div class="contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary"><div class="overflow-y-auto p-4" dir="ltr">`<span class="hljs-type">GET</span> <span class="hljs-regexp">/api/</span>public_api<span class="hljs-regexp">/clients/</span><span class="hljs-number">2200</span><span class="hljs-operator">?</span>take<span class="hljs-operator">=</span><span class="hljs-number">1</span>`</div></div></div>**Ejemplo de respuesta:**

[![image.png](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/scaled-1680-/IiWZMKuHsy6c5hP5-image.png)](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/IiWZMKuHsy6c5hP5-image.png)

<div class="overflow-y-auto p-4" dir="ltr" id="bkmrk-%7B%C2%A0-%22status%22%3A-%22succes"><div class="contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary"><div class="overflow-y-auto p-4" dir="ltr">  
</div></div></div>#### **Consultar cliente por documento**

**Función:** buscar un cliente utilizando su número de documento.

**Ruta:** `<span class="hljs-type">GET</span> {<span class="hljs-type">BASE_URL</span>}<span class="hljs-regexp">/api/</span>public_api<span class="hljs-regexp">/clients/</span>by_identification<span class="hljs-operator">/</span>{document}`

**Pasos:**

<div class="overflow-y-auto p-4" dir="ltr" id="bkmrk-sustituya-%7Bdocument%7D">1. Sustituya `{document}` por el número del documento (por ejemplo, `103968949`).
2. Presione **“Enviar petición”**.
3. Verifique el código de estado:
    
    
    - **200 OK:** el cliente fue encontrado.
    - **404 Not Found:** no existe ningún cliente con ese documento.

</div>#### **Módulo de Reservas**

El módulo de Reservas devuelve las reservas asociadas a cada cliente, filtradas por su identificador o por su documento.

> 💡 **Nota:**  
> Actualmente, las consultas devuelven únicamente las **reservas del cliente titular**.  
> Si desea incluir pasajeros no titulares, consulte con el equipo técnico de Airvi si esta opción está habilitada en su instancia.

#### **Consultar reservas por ID de cliente**

**Ruta:** `GET {BASE_URL}/api/public_api/clients/{<span class="hljs-built_in">id</span>}/reservations`

**Parámetros disponibles:**

<div class="_tableContainer_1rjym_1" id="bkmrk-par%C3%A1metro-descripci%C3%B3-1"><div class="group _tableWrapper_1rjym_13 flex w-fit flex-col-reverse" tabindex="-1"><table class="w-fit min-w-(--thread-content-width)" data-end="7294" data-start="7056"><thead data-end="7083" data-start="7056"><tr data-end="7083" data-start="7056"><th data-col-size="sm" data-end="7068" data-start="7056" style="text-align: justify;">Parámetro</th><th data-col-size="sm" data-end="7083" data-start="7068" style="text-align: justify;">Descripción</th></tr></thead><tbody data-end="7294" data-start="7113"><tr data-end="7194" data-start="7113"><td data-col-size="sm" data-end="7160" data-start="7113" style="text-align: justify;">`assignment_date_from`, `assignment_date_to`</td><td data-col-size="sm" data-end="7194" data-start="7160" style="text-align: justify;">Fecha de asignación del viaje.</td></tr><tr data-end="7250" data-start="7195"><td data-col-size="sm" data-end="7230" data-start="7195" style="text-align: justify;">`trip_date_from`, `trip_date_to`</td><td data-col-size="sm" data-end="7250" data-start="7230" style="text-align: justify;">Fecha del viaje.</td></tr><tr data-end="7294" data-start="7251"><td data-col-size="sm" data-end="7268" data-start="7251" style="text-align: justify;">`skip`, `take`</td><td data-col-size="sm" data-end="7294" data-start="7268" style="text-align: justify;">Control de paginación.</td></tr></tbody></table>

</div></div>**Pasos:**

1. Reemplace `{id}` por el ID del cliente.
2. Escriba las fechas en formato `YYYY-MM-DD`.
3. Envíe la petición.
4. Verifique que el resultado sea **200 OK**.
5. Si no hay registros, el sistema devolverá un arreglo vacío en `data.items`

#### **Consultar reservas por número de documento del cliente.**

**Ruta:** `<span class="hljs-type">GET</span> {<span class="hljs-type">BASE_URL</span>}<span class="hljs-regexp">/api/</span>public_api<span class="hljs-regexp">/clients/</span>by_identification<span class="hljs-regexp">/{document}/</span>reservations`

**Uso:**  
Permite consultar las reservas asociadas a un cliente a través de su número de documento.

**Ejemplo:**

<div class="contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary" id="bkmrk-get-%2Fapi%2Fpublic_api%2F-1"><div class="overflow-y-auto p-4" dir="ltr">`<span class="hljs-type">GET</span> <span class="hljs-regexp">/api/</span>public_api<span class="hljs-regexp">/clients/</span>by_identification<span class="hljs-regexp">/2034/</span>reservations<span class="hljs-operator">?</span>take<span class="hljs-operator">=</span><span class="hljs-number">5</span>`</div></div>[![image.png](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/scaled-1680-/KicwzS5LFxkDoMmc-image.png)](https://v4.docs.airvi.com.co/uploads/images/gallery/2025-10/KicwzS5LFxkDoMmc-image.png)

<div class="overflow-y-auto p-4" dir="ltr" id="bkmrk--4"></div>