Referencia API

Referencia completa del API SmartID V5. Todos los endpoints aceptan payloads JSON y requieren autenticación con token Bearer.

Descripción General

Autenticación: Todos los endpoints requieren el header Authorization: Bearer <license_key>. Se proporcionan llaves de licencia separadas para ambientes de desarrollo/QA y producción.

Procesamiento Asíncrono: Todos los endpoints procesan las solicitudes de forma asíncrona y devuelven un estado 200 OK inmediato. Se recomienda que tu backend llame al API de forma asíncrona, preferiblemente en un hilo separado.

Login

Registra un evento de inicio de sesión del usuario con datos de huella digital del dispositivo recopilados por el SDK.

Atributos de la Solicitud

channelId integer required

Identificador numérico del canal digital.

user string required

Identificador único del usuario que inició sesión.

session string optional

Identificador de sesión.

publicIp string required

Dirección IP pública desde la cual el usuario accedió al canal.

data string required

Información cifrada del dispositivo desde el SDK de SmartID.

Endpoint HTTP

POST /api/v5/analytics/app/login
Dev/QA: /api-dev/v5/analytics/app/login
JSON
{
  "channelId": 2,
  "user": "jlopez",
  "session": "445613456fa",
  "publicIp": "20.201.64.54",
  "data": "ujOmfzNv5l/1SW+clQ==..."
}
cURL
curl -X POST \\
  https://<api-url>/api/v5/analytics/app/login \\
  -H "Content-Type: application/json" \\
  -H "Authorization: Bearer <license>" \\
  -d '{
  "channelId": 2,
  "user": "jlopez",
  "session": "445613456fa",
  "publicIp": "20.201.64.54",
  "data": "ujOmfzNv5l/1SW+clQ==..."
}'

Logout

Registra un evento de cierre de sesión del usuario.

Atributos de la Solicitud

channelId integer required

Identificador numérico del canal digital.

user string required

Identificador único del usuario que cerró sesión.

session string required

Identificador de sesión.

publicIp string optional

Dirección IP pública.

data string optional

Información cifrada del dispositivo (opcional para logout).

Endpoint HTTP

POST /api/v5/analytics/app/logout
JSON
{
  "channelId": 2,
  "user": "jlopez",
  "session": "445613456fa",
  "publicIp": "20.201.64.54",
  "data": "ujOmfzNv5l/1SW+clQ==..."
}

Registrar Operación

Registra un evento de transacción u operación para el motor de prevención de fraude transaccional. Cada operación debe estar asociada a una sesión de login activa usando los mismos valores de channelId, account.client y account.session enviados en la solicitud de Login.

Atributos de la Solicitud

channelId integer required

Identificador numérico del canal digital.

timestamp string required

Fecha y hora de la transacción en formato ISO 8601.

Endpoint HTTP

POST /api/v5/analytics/app/operation
JSON
{
  "channelId": 1,
  "transaction": {
    "category": "add account",
    "type": "ach",
    "description": "account name",
    "reference": "operation reference",
    "date": "datetime",
    "details": {
      "key": "value"
    }
  },
  "account": {
    "client": "1564651jlopez",
    "clientRefId": 0,
    "clientRefIdStr": "",
    "email": "",
    "phoneNumber": "",
    "session": "7gf7asdf4as7f",
    "accountNumber": "g489as4fa57gwad4a5g==",
    "bank": "ga8sdasfgasga=="
  },
  "order": {
    "amount": 0.00,
    "currency": "GTQ"
  },
  "accountTo": {
    "client": "",
    "accountNumber": "",
    "bank": ""
  },
  "debitFrom": {
    "account": "",
    "bank": "",
    "currency": ""
  },
  "creditTo": {
    "account": "",
    "bank": "",
    "currency": ""
  },
  "creditCard": {
    "bin": "",
    "hash": "",
    "last4Digits": "",
    "token": ""
  }
}