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

# Interpol

> Verificación de antecedentes en listas internacionales.

<Update label="Versión: 2.0">
  Consulta antecedentes internacionales en Interpol a través del proveedor Verifik, utilizando datos de identificación personal del usuario a verificar.

  **Países disponibles:** 🇨🇴 Colombia
</Update>

## Configuración

<Tabs>
  <Tab title="Inputs">
    <AccordionGroup>
      <Accordion title="País" icon="globe">
        <ParamField body="País" type="string" required>
          Variable: `country`. País en el que se realiza la consulta.

          **Valores disponibles:** `Colombia`
        </ParamField>

        <Note>
          Actualmente el selector de país solo está habilitado para Colombia.
        </Note>
      </Accordion>

      <Accordion title="Tipo de identificación" icon="id-card">
        <ParamField body="Tipo de identificación" type="string" required>
          Variable: `documentType`. Tipo de documento de identidad, habilitado según el país seleccionado.

          **Valores disponibles para Colombia:**

          * `CC`: Cédula de Ciudadanía (colombianos)
          * `PEP`: Permiso Especial de Permanencia (extranjeros, principalmente venezolanos)
          * `CE`: Cédula de Extranjería (extranjeros residentes en Colombia)
        </ParamField>
      </Accordion>

      <Accordion title="Número de identificación" icon="hashtag">
        <ParamField body="Número de identificación" type="string" required>
          Variable: `documentNumber`. Número del documento de identidad de la persona a consultar.
        </ParamField>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Outputs">
    #### ✅ Éxito

    <AccordionGroup>
      <Accordion title="No tiene antecedentes" icon="circle-check">
        Indica que la persona consultada **no presenta antecedentes** en Interpol.

        <Tip>
          La respuesta entregada corresponde al response completo del proveedor Verifik.
        </Tip>

        **Ejemplo de respuesta:**

        ```json theme={null}
        {
          "data": {
            "documentType": "CC",
            "documentNumber": "XXXXXXXXXX",
            "firstName": "NOMBRE",
            "lastName": "APELLIDO",
            "fullName": "NOMBRE APELLIDO",
            "arrayName": [
              "NOMBRE",
              "SEGUNDO",
              "APELLIDO1",
              "APELLIDO2"
            ],
            "foundInInterpol": false,
            "details": null
          },
          "signature": {
            "dateTime": "June 16, 2025 4:31 PM",
            "message": "Certified by Verifik.co"
          },
          "id": "XXXXX"
        }
        ```

        **Campos clave:**

        * `foundInInterpol`: `false` indica que la persona no tiene antecedentes en Interpol
        * `details`: `null` cuando no hay antecedentes
      </Accordion>
    </AccordionGroup>

    #### 🔴 Errores

    <AccordionGroup>
      <Accordion title="Tiene antecedentes" icon="triangle-exclamation">
        Indica que la persona **sí presenta antecedentes penales** en Interpol.

        <Warning>
          La información devuelta corresponde a la respuesta del proveedor.
        </Warning>

        **Ejemplo de respuesta:**

        ```json theme={null}
        {
          "data": {
            "documentType": "CC",
            "documentNumber": "XXXXXXXXXX",
            "firstName": "NOMBRE",
            "lastName": "APELLIDOS",
            "fullName": "NOMBRE APELLIDOS",
            "arrayName": [
              "NOMBRE",
              "APELLIDO"
            ],
            "foundInInterpol": true,
            "details": {
              "totalCards": "2",
              "cards": [
                {
                  "arrestWarrants": [
                    {
                      "issuingCountryId": "CO",
                      "charge": "Descripción de los cargos"
                    }
                  ],
                  "weight": "0",
                  "languagesSpokenIds": [
                    "SPA"
                  ],
                  "height": "1.75",
                  "sexId": "M",
                  "countryOfBirthId": "CO",
                  "distinguishingMarks": null,
                  "eyesColorsId": null,
                  "hairsId": null,
                  "placeOfBirth": "CIUDAD - DEPARTAMENTO"
                }
              ]
            }
          },
          "signature": {
            "dateTime": "June 16, 2025 4:31 PM",
            "message": "Certified by Verifik.co"
          },
          "id": "XXXXX"
        }
        ```

        **Campos importantes:**

        * `foundInInterpol`: `true` indica que la persona fue encontrada con antecedentes
        * `details.totalCards`: Cantidad de registros encontrados
        * `details.cards[].arrestWarrants`: Lista de órdenes de arresto con los cargos específicos
        * `signature`: Certificación del proveedor Verifik con fecha y hora de la consulta
      </Accordion>

      <Accordion title="Datos faltantes" icon="circle-xmark">
        Se presenta cuando no se envían todos los parámetros requeridos para realizar la consulta.

        **Ejemplo de respuesta:**

        ```json theme={null}
        {
          "code": "MissingParameter",
          "message": "missing documentType\n. missing documentNumber\n"
        }
        ```

        El campo `message` indica qué parámetros específicos están faltando en la solicitud.
      </Accordion>

      <Accordion title="Sin registros" icon="magnifying-glass">
        Ocurre cuando el proveedor indica que no se encontró ningún registro asociado a la identificación consultada (Not Found).

        **Ejemplo de respuesta:**

        ```json theme={null}
        {
          "code": "NotFound",
          "message": "Record not found."
        }
        ```

        <Note>
          Existe una diferencia entre "no tiene antecedentes" y "sin registros". El primero indica que la persona fue encontrada y no tiene antecedentes, mientras que el segundo indica que no se encontró registro de esa persona en el sistema.
        </Note>
      </Accordion>

      <Accordion title="Error inesperado" icon="bug">
        Se produce cuando ocurre una novedad no prevista durante el proceso de consulta.
      </Accordion>
    </AccordionGroup>
  </Tab>
</Tabs>

## Integración

<Steps>
  <Step title="Captura los datos del usuario">
    Recolecta el país, tipo de documento y número de identificación del usuario en tu flujo.

    <Tip>
      Usa el [nodo Pregunta](/guides/nodos/pregunta) o [variables de usuario](/guides/variables/user) para capturar esta información.
    </Tip>
  </Step>

  <Step title="Configura los parámetros">
    Asigna los valores capturados a los parámetros requeridos de la herramienta:

    * `country`: País de consulta
    * `documentType`: Tipo de documento según el país
    * `documentNumber`: Número de identificación
  </Step>

  <Step title="Maneja las salidas">
    Implementa flujos diferentes según el resultado:

    * **✅ Sin antecedentes:** Continúa el proceso normal
    * **🔴 Errores:** Implementa reintentos, validaciones o notifica al usuario
  </Step>

  <Step title="Almacena los resultados">
    Guarda la respuesta en [variables de memoria](/guides/variables/memory) para usarla en decisiones posteriores del flujo.

    ```javascript theme={null}
    // Ejemplo: Verificar si tiene antecedentes
    if (response.data.foundInInterpol === true) {
      // Flujo para personas con antecedentes
    } else {
      // Flujo para personas sin antecedentes
    }
    ```
  </Step>
</Steps>

## Información adicional

**Dependencia del país:** el tipo de identificación disponible depende del país que selecciones en la consulta.

**Respuesta del proveedor:** el resultado de la consulta depende directamente de la información retornada por el proveedor Verifik.

**Interpretación de resultados:** distingue entre sin antecedentes (persona verificada sin antecedentes) y sin registros (persona no encontrada en el sistema).
