> For the complete documentation index, see [llms.txt](https://docs.hablla.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hablla.com/hablla-docs-es/flujos-de-automatizaciones/todos-los-componentes/otros/via-cep.md).

# Vía CEP

### Visión General

El **Componente de Integración ViaCEP** (identificado en la interfaz por el nombre técnico descriptivo `via_cep`) es un nodo de acción centrado en el enriquecimiento de datos (*enriquecimiento de datos*) y consulta de APIs externas de utilidad pública. Su función principal es automatizar la localización de direcciones postales brasileñas en el flujo de atención. Captura un código postal (CEP) proporcionado por el usuario y realiza, de forma nativa y en segundo plano, una solicitud HTTP del tipo `GET` a los servidores del servicio ViaCEP, devolviendo la estructura completa de calle, barrio, ciudad y estado.

### Parámetros de Configuración

La parametrización del bloque gestiona la cadena de entrada para la consulta del servicio web mediante un único criterio obligatorio:

* **CEP (\* Campo obligatorio):** Campo de entrada de texto destinado a recibir la numeración del código postal que se consultará. Acepta el llenado de valores estáticos o la inyección de variables dinámicas del flujo que almacenan la respuesta escrita por el cliente (ej.: `{{response}}` o `{{cliente.cep_bruto}}`).<br>

### Constructor Visual

La interfaz del constructor fue diseñada bajo un modelo simple y directo, con el objetivo de abstraer configuraciones complejas de encabezados o tokens de solicitud:

* **Panel de Entrada Directa:** Muestra un diseño limpio compuesto exclusivamente por el campo de escritura del CEP. El indicador de asterisco (`*`) actúa como un candado de seguridad visual, impidiendo que el administrador guarde el componente sin estipular un parámetro de búsqueda. Al tratarse de un bus de consulta pública nativa, el nodo prescinde de selectores de credenciales, autenticaciones de API o cargas de archivos multimedia.<br>
* **Disponibilización de Payload de Salida:** En el mapa visual de automatización, el bloque presenta conectores tradicionales de entrada y salida continua. Al acoplarse al árbol, el sistema expone automáticamente el objeto de datos resultante de ViaCEP para que los nodos vecinos puedan leer y consumir las propiedades de la dirección localizada.<br>

### Operadores especiales

Las propiedades lógicas de este componente gestionan la higienización de datos en tiempo real, el tratamiento de errores de solicitud y el mapeo de payloads JSON:

* **Tratamiento Automático de Máscara (Sanitización):** El motor interno del componente limpia de forma automatizada la cadena ingresada en el campo *CEP* antes de disparar el endpoint. Aplica expresiones regulares para eliminar caracteres especiales, guiones (`-`) o espacios en blanco, garantizando el envío correcto del formato estándar de 8 dígitos exigido por ViaCEP.<br>
* **Mapeo de Estructura de Respuesta (Objeto JSON):** Tras procesar con éxito la llamada síncrona, el motor de la plataforma inyecta las propiedades devueltas directamente en el ámbito de datos del contacto (`$data`). El payload devuelto sigue el estándar del servicio e incluye las siguientes subvariables listas para usar:
  * `via_cep.logradouro`: Nombre de la calle, avenida, plaza, etc.<br>
  * `via_cep.bairro`: Barrio o distrito correspondiente.<br>
  * `via_cep.localidade`: Nombre del municipio/ciudad.<br>
  * `via_cep.uf`: Sigla del estado (Unidad de la Federación).<br>
  * `via_cep.complemento`: Información adicional de urbanización o región (si la hay).<br>
* **Tratamiento de Ruta de Fallo (CEP inexistente):** En caso de que el servicio web devuelva que el CEP consultado es inválido o inexistente (retorno `{ "erro": true }`), el componente impide el guardado de datos en blanco y permite que el flujo tome caminos alternativos de corrección.<br>

### Ejemplos Prácticos

La siguiente tabla muestra escenarios de cómo aplicar este componente para optimizar registros y entregas dentro del recorrido del bot:

| **CEP ingresado en el constructor** | **Respuesta del servidor ViaCEP**       | **Propiedades inyectadas en el flujo**                                                                                                                                                                                  | **Caso de Uso Práctico**                                                                                                                                                                                                                                                                            |
| ----------------------------------- | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `70040-010`                         | Éxito en la solicitud.                  | <p><code>via\_cep.logradouro</code> = "SBN Quadra 1 Bloco A"<br><br><br><br><code>via\_cep.localidade</code> = "Brasília"<br><br><br><br><code>via\_cep.uf</code> = "DF"</p>                                            | El cliente escribe el CEP con guion en el chat. El bloque trata la cadena, busca los datos y completa automáticamente la dirección para fines de facturación.                                                                                                                                       |
| `{{resposta_cep}}`                  | Éxito en la solicitud.                  | <p><code>via\_cep.logradouro</code> = "Praça da Sé"<br><br><br><br><code>via\_cep.bairro</code> = "Sé"<br><br><br><br><code>via\_cep.localidade</code> = "São Paulo"<br><br><br><br><code>via\_cep.uf</code> = "SP"</p> | En un flujo de entrega de e-commerce, el bot pide el CEP del cliente. Este componente procesa la respuesta y muestra un mensaje de confirmación a continuación: *"Vives en la `{{via_cep.logradouro}}`, en el barrio `{{via_cep.bairro}}` en `{{via_cep.localidade}}`/`{{via_cep.uf}}`? ¿Sí o no?"* |
| `00000000`                          | Respuesta de error (CEP no encontrado). | No se inyecta ninguna propiedad de dirección.                                                                                                                                                                           | El usuario escribe un número inválido en el chat. El sistema identifica el fallo en la respuesta del bloque y lo dirige a un nodo de pregunta pidiéndole que vuelva a escribir el código postal.                                                                                                    |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.hablla.com/hablla-docs-es/flujos-de-automatizaciones/todos-los-componentes/otros/via-cep.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
