Introducción

Todo lo que puedes hacer desde la aplicación web está disponible también a través de la API REST de DEDOMENA.AI, de modo que puedes automatizar la anonimización y la generación de datos sintéticos desde tus propias aplicaciones y pipelines. La documentación interactiva (Swagger) está disponible en el endpoint /docs de la API.
Autenticación
Cada petición se autoriza con tu token personal, que se pasa como parámetro de consulta (?token=YOUR_TOKEN). Las peticiones están limitadas por cuenta (rate limit).
Activos
La API trabaja sobre activos que ya has añadido y analizado en la plataforma (consulta Activos en la Guía de Cloud); cada uno se referencia por su assetId. Como los tipos de columna se detectaron durante el análisis, no necesitas volver a describir tus datos al llamar a la API.
Anonimizar
POST /nucleus/anonymize?token=YOUR_TOKEN
Envía un cuerpo JSON que indique, para cada columna sensible, el método que se debe aplicar. Puedes anonimizar varias tablas en una sola llamada añadiendo más entradas a datasets.
\{
"anonymizerName": "Customers – shared copy",
"anonymizerDescription": "Anonymized for the analytics team",
"anonymizerUseCase": "102",
"datasets": [
\{
"assetId": "a1b2c3d4-...",
"datasetName": "customers",
"columns": \{
"full_name": \{ "method": "simulation" \},
"email": \{ "method": "mask" \},
"national_id": \{ "method": "hash" \},
"age": \{ "method": "generalize", "param": 10 \}
\}
\}
]
\}
-
Cada columna se asocia a un
method—mask,hash,pseudonym,shuffle,generalize,perturb,simulation,coding, o los métodos visualesblur,pixelate,redact— y a unparamopcional (por ejemplo, el tamaño del rango parageneralize). -
Cualquier columna que no incluyas se deja sin modificar.
curl -X POST "https://api.dedomena.ai/nucleus/anonymize?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d @anonymize_config.json
La respuesta devuelve el estado de la ejecución; el conjunto de datos anonimizado se guarda como un nuevo activo.
Sintetizar
Crear datos sintéticos con la API es un proceso de dos pasos: primero entrenas un sintetizador y después generas datos a partir de él.
Paso 1 — Entrenar
POST /nucleus/synthesize?algorithm=ALGORITHM&token=YOUR_TOKEN
ALGORITHM es uno de estos valores: generic, transactional o relational. Proporciona el activo y las opciones de entrenamiento; los tipos de columna se toman automáticamente del análisis, así que no necesitas enumerarlos.
\{
"assetId": "a1b2c3d4-...",
"synthesizerName": "customers_v1",
"synthesizerDescription": "Quality mode",
"epochs": 200,
"batchSize": 256,
"amplify": "quality",
"constraints": ["age\>=18"]
\}
curl -X POST "https://api.dedomena.ai/nucleus/synthesize?algorithm=generic&token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d @synthesize_config.json
La respuesta incluye un runId y el status del entrenamiento. El entrenamiento se ejecuta en segundo plano; consulta su progreso con los endpoints de ejecuciones que se indican más abajo. (También puedes entrenar desde una base de datos conectada proporcionando un databaseId y un tableName en lugar de un assetId.)
Paso 2 — Generar: una vez finalizado el entrenamiento, crea un conjunto de datos sintético a partir del sintetizador entrenado:
POST /nucleus/generate/\{run_id\}?num_rows=100000&token=YOUR_TOKEN
Para muestras pequeñas y bajo demanda puedes usar el endpoint en tiempo real, que devuelve las filas directamente (hasta 5.000):
POST /nucleus/generate/realtime/\{run_id\}?num_rows=...&replicate_outliers=yes|no
Paso 3 — Descargar: recupera el conjunto de datos generado en el formato que prefieras:
GET /nucleus/download/syntheticdata/\{run_id\}?file_format=CSV&token=YOUR_TOKEN
Formatos disponibles: CSV, PARQUET, AVRO, JSON.
Gestión de ejecuciones
| Endpoint | Finalidad |
|---|---|
GET /nucleus/runs/list | Lista todos tus sintetizadores entrenados. |
GET /nucleus/runs/info/\{run_id\} | Obtiene los detalles y el estado de un sintetizador. |
GET /nucleus/runs/logs/\{run_id\} | Obtiene los logs de entrenamiento de una ejecución. |
POST /nucleus/uploadmodel | Sube un sintetizador entrenado localmente con Nucleus Edge (consulta Subida de sintetizadores). |
Todos los endpoints de ejecuciones reciben tu token como parámetro de consulta.