Skip to main content
GET
http://api.gu1.ai
/
entities
Listar
curl --request GET \
  --url http://api.gu1.ai/entities \
  --header 'Authorization: Bearer <token>'
{
  "entities": [
    {}
  ]
}

Resumen

Recupera una lista de personas con filtrado opcional por país, ID fiscal o ID externo. Devuelve hasta 100 personas por solicitud.

Endpoint

GET http://api.gu1.ai/entities?type=person

Autenticación

Requiere una clave API válida en el encabezado Authorization:
Authorization: Bearer YOUR_API_KEY

Parámetros de Consulta

type
string
required
Debe establecerse en person para recuperar solo personas
country
string
Filtrar por código de país ISO 3166-1 alpha-2 (ej., “US”, “BR”, “AR”)
taxId
string
Filtrar por número de identificación fiscal exacto
externalId
string
Filtrar por tu identificador externo

Respuesta

entities
array
Array de objetos de persona, cada uno conteniendo:
  • id - ID interno de gu1
  • externalId - Tu ID externo
  • organizationId - Tu ID de organización
  • type - Siempre “person”
  • name - Nombre de la persona
  • taxId - ID fiscal
  • countryCode - Código de país
  • riskScore - Puntuación de riesgo (0-100)
  • riskFactors - Array de factores de riesgo
  • status - Estado de la persona
  • kycVerified - Estado de verificación KYC
  • kycProvider - Nombre del proveedor KYC
  • kycData - Datos de verificación KYC
  • entityData - Datos específicos de la persona
  • attributes - Atributos personalizados
  • createdAt - Marca de tiempo de creación
  • updatedAt - Marca de tiempo de última actualización
  • deletedAt - Marca de tiempo de eliminación (null si está activa)

Ejemplos

Listar Todas las Personas

curl -X GET "http://api.gu1.ai/entities?type=person" \
  -H "Authorization: Bearer YOUR_API_KEY"

Filtrar por País

curl -X GET "http://api.gu1.ai/entities?type=person&country=BR" \
  -H "Authorization: Bearer YOUR_API_KEY"

Buscar por ID Externo

curl -X GET "http://api.gu1.ai/entities?type=person&externalId=customer_12345" \
  -H "Authorization: Bearer YOUR_API_KEY"

Buscar por Tax ID

curl -X GET "http://api.gu1.ai/entities?type=person&taxId=20-12345678-9" \
  -H "Authorization: Bearer YOUR_API_KEY"

Ejemplo de Respuesta

{
  "entities": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "externalId": "customer_12345",
      "organizationId": "8e2f89ab-c216-4eb4-90eb-ca5d44499aaa",
      "type": "person",
      "name": "María González",
      "taxId": "20-12345678-9",
      "countryCode": "AR",
      "riskScore": 25,
      "riskFactors": [
        {
          "factor": "new_customer",
          "impact": 15,
          "description": "Customer registered within last 30 days"
        }
      ],
      "status": "active",
      "kycVerified": true,
      "kycProvider": "gueno_ai",
      "kycData": {
        "verificationDate": "2024-10-03T14:30:00Z",
        "overallStatus": "approved"
      },
      "entityData": {
        "person": {
          "firstName": "María",
          "lastName": "González",
          "dateOfBirth": "1985-03-15",
          "nationality": "AR",
          "occupation": "Software Engineer",
          "income": 85000
        }
      },
      "attributes": {
        "email": "maria.gonzalez@example.com",
        "phone": "+54 11 1234-5678"
      },
      "createdAt": "2024-10-03T14:30:00.000Z",
      "updatedAt": "2024-10-03T14:35:00.000Z",
      "deletedAt": null
    }
  ]
}

Casos de Uso

Monitoreo de Clientes de Alto Riesgo

Consultar todas las personas y filtrar por puntuación de riesgo:
const response = await fetch('http://api.gu1.ai/entities?type=person', {
  headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});

const data = await response.json();
const highRiskCustomers = data.entities.filter(e => e.riskScore > 70);

console.log(`Found ${highRiskCustomers.length} high-risk customers requiring review`);
highRiskCustomers.forEach(person => {
  console.log(`- ${person.name} (Risk: ${person.riskScore})`);
});

Panel de Cumplimiento KYC

Obtener todos los clientes no verificados para el panel de cumplimiento:
import requests

response = requests.get(
    'http://api.gu1.ai/entities',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    params={'type': 'person'}
)

persons = response.json()['entities']
unverified = [p for p in persons if not p['kycVerified']]

print(f"Unverified customers: {len(unverified)}")
for person in unverified:
    print(f"- {person['name']} ({person['externalId']})")

Respuestas de Error

401 Unauthorized

{
  "error": "Invalid or missing API key"
}

500 Internal Server Error

{
  "error": "Failed to search entities"
}

Límites

  • Máximo de resultados por solicitud: 100 personas
  • Parámetros de consulta: Pueden combinarse para filtrado avanzado
  • Límites de tasa: Aplican según tu nivel de plan

Próximos Pasos