Propósito
Devuelve el registro de proveedores de la organización: encargados, subencargados y destinatarios de datos, con su DPA, contrato, transferencias internacionales y las alertas que la plataforma calcula. Útil para tableros de riesgo y para sincronizar con tu gestión de contratos. Requiere el permiso inventory:read.
Método y ruta
GET /api/v1/organizations/:organization/vendors
Query string
| Campo | Tipo | Obligatorio | Reglas |
|---|---|---|---|
status |
enum | No | active, terminated |
role |
enum | No | processor, subprocessor, recipient |
search |
string | No | Trim, máximo 255; busca por nombre. |
page |
number | No | Mínimo 1; valor por defecto 1. |
perPage |
number | No | Entre 1 y 100; valor por defecto 20. |
curl
curl --fail-with-body \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
"$BASE_URL/api/v1/organizations/$ORGANIZATION/vendors?status=active&role=processor"
Respuesta 200
{
"data": [
{
"id": 7,
"organizationId": 3,
"name": "Proveedor de correo transaccional",
"rut": "76.123.456-7",
"role": "processor",
"contactEmail": "privacidad@proveedor.example",
"country": "Estados Unidos",
"processingDescription": "Envío de correos transaccionales y de marketing.",
"dpaSigned": true,
"dpaDocumentPath": null,
"subprocessorList": "AWS (hosting)",
"securityMeasures": "Cifrado en tránsito y en reposo; SOC 2 Tipo II.",
"transferMechanism": "sccs",
"transferDetails": "Cláusulas contractuales tipo firmadas en 2026.",
"riskLevel": "medium",
"status": "active",
"dataCategories": ["identificación", "contacto"],
"processingActivityCount": 2,
"dpaDate": "2026-03-15",
"contractExpiryDate": "2027-03-15",
"internationalTransfer": true,
"alerts": {
"dpaUnsigned": false,
"contractExpired": false,
"contractExpiringSoon": false,
"internationalTransferWithoutMechanism": false,
"hasAlerts": false
},
"createdAt": "2026-03-15T14:00:00.000+00:00",
"updatedAt": "2026-08-01T12:00:00.000+00:00",
"processingActivities": [
{ "id": 21, "name": "Envío de boletín", "ownerName": "Marketing", "status": "active" },
{
"id": 24,
"name": "Notificaciones de pedido",
"ownerName": "Operaciones",
"status": "active"
}
]
}
],
"metadata": {
"total": 1,
"per_page": 20,
"current_page": 1,
"last_page": 1,
"first_page": 1,
"first_page_url": "/?page=1",
"last_page_url": "/?page=1",
"next_page_url": null,
"previous_page_url": null
}
}
Errores relevantes
401: credencial ausente o inválida.403: la credencial no tieneinventory:read.404::organizationno es la organización de la credencial.422: filtro o paginación inválida.
Semántica y límites
alertsse calcula al momento de la consulta: DPA sin firmar, contrato vencido o por vencer, y transferencia internacional sin mecanismo (adequacy,sccs,bcrsuother).processingActivitiesenlaza cada proveedor con los tratamientos del inventario en los que participa.- Este recurso es de solo lectura. Crear o editar proveedores se hace en la plataforma; el permiso
inventory:writeestá reservado.
Los IDs y fechas son ilustrativos; la estructura corresponde al contrato publicado.