Generar Destalle de session pdf
GET /api/v1/kyc/session/{id}/pdf
/api/v1/kyc/session/{id}/pdfDescarga el reporte PDF de resumen de una sesión KYC por su ID.
Detalles del Endpoint
| Campo | Valor |
|---|---|
| Método | GET |
| URL | /api/v1/kyc/session/{id}/pdf |
| Autenticación | Requerida |
| Referrer Policy | strict-origin-when-cross-origin |
| Content-Type (respuesta) | application/octet-stream |
Parámetros de Ruta
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string | ✅ Sí | Identificador único de la sesión KYC |
Ejemplo de valor:
6994bf1c1f24bffaedfbb9e5
Ejemplo de Solicitud
URL completa (ambiente Sandbox)
https://sandbox.api.jaak.ai/api/v1/kyc/session/6994bf1c1f24bffaedfbb9e5/pdf
cURL
curl -X GET \
"https://sandbox.api.jaak.ai/api/v1/kyc/session/6994bf1c1f24bffaedfbb9e5/pdf" \
-H "Authorization: Bearer {TU_API_TOKEN}" \
-H "Accept: application/octet-stream" \
--output "session_report.pdf"JavaScript (fetch)
const sessionId = "6994bf1c1f24bffaedfbb9e5";
const response = await fetch(
`https://sandbox.api.jaak.ai/api/v1/kyc/session/${sessionId}/pdf`,
{
method: "GET",
headers: {
Authorization: `Bearer ${process.env.JAAK_API_TOKEN}`,
Accept: "application/octet-stream",
},
}
);
if (!response.ok) {
const error = await response.json();
throw new Error(error.message);
}
const blob = await response.blob();
const url = URL.createObjectURL(blob);
// Usa `url` para disparar la descarga o abrir en una nueva pestañaPython (requests)
import requests
session_id = "6994bf1c1f24bffaedfbb9e5"
url = f"https://sandbox.api.jaak.ai/api/v1/kyc/session/{session_id}/pdf"
response = requests.get(
url,
headers={"Authorization": f"Bearer {API_TOKEN}"},
stream=True,
)
response.raise_for_status()
with open("session_report.pdf", "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)Respuestas
200 OK
200 OKLa solicitud fue exitosa. El cuerpo de la respuesta contiene el archivo PDF en formato binario.
| Header | Valor |
|---|---|
Content-Type | application/octet-stream |
Content-Disposition | attachment; filename="session_{id}.pdf" |
Importante: El cuerpo de la respuesta es un stream binario completo del PDF. No intentes parsearlo como JSON o texto, ya que esto corromperá el archivo.
400 Bad Request
400 Bad RequestEl servidor no pudo procesar la solicitud, generalmente por un ID de sesión inválido o ausente.
{
"errorCode": "string",
"eventId": "string",
"message": "string",
"statusCode": 400
}| Campo | Tipo | Descripción |
|---|---|---|
errorCode | string | Código de error legible por máquina |
eventId | string | ID único del evento de error, útil para soporte técnico |
message | string | Descripción del error en lenguaje natural |
statusCode | integer | Código HTTP de la respuesta (400) |
Tabla de Errores Comunes
| Código | Causa probable y acción recomendada |
|---|---|
200 | Éxito — guarda el stream binario como archivo .pdf |
400 | ID de sesión inválido o con formato incorrecto. Verifica que el ID exista en tu cuenta JAAK |
401 | Autenticación fallida. Revisa que el token sea válido y esté incluido en el header Authorization |
404 | Sesión no encontrada. Confirma que el ID corresponde a una sesión registrada |
500 | Error interno del servidor. Captura el eventId y contacta al soporte de JAAK |
Notas y Buenas Prácticas
- Respuesta binaria: Maneja la respuesta siempre como stream binario. Leerla como texto o JSON corromperá el PDF.
- Nomenclatura de archivos: Recomendamos nombrar el archivo con el ID de sesión para trazabilidad, por ejemplo:
session_6994bf1c1f24bffaedfbb9e5.pdf. - Autenticación: Incluye un bearer token válido en cada solicitud. Los tokens están asignados por ambiente (Sandbox / Producción).
- Retry logic: En caso de errores
5xxtransitorios, implementa backoff exponencial. No reintentes solicitudes4xxsin corregir el request. - Estado de la sesión: Asegúrate de que la sesión haya completado su procesamiento antes de solicitar el PDF. Sesiones en proceso pueden generar reportes incompletos.
- Referrer Policy: El endpoint utiliza
strict-origin-when-cross-origin, lo que significa que solo se enviará el origen (sin ruta ni query string) en el headerRefereren solicitudes cross-origin.
Ambientes
| Ambiente | URL Base |
|---|---|
| Sandbox | https://sandbox.api.jaak.ai |
| Producción | https://services.api.jaak.ai |
Soporte
Si encuentras errores inesperados o necesitas ayuda para integrar este endpoint, contacta al equipo de Customer Success de JAAK e incluye el eventId del error para agilizar el diagnóstico.
- 📧 Email: [email protected]
- 📖 Documentación: docs.jaak.ai
Updated 7 days ago
