---
title: "Consultar qué consintió una persona"
method: GET
path: "/consent/consents"
tags: ["Consulta de consentimientos"]
---

# Consultar qué consintió una persona

`GET /consent/consents`

## Request

- Base URL: `https://api.trytoku.com`
- URL: `https://api.trytoku.com/consent/consents`
- Auth: API key in header `x-api-key`

Devuelve, por cada uso de datos del que la persona tiene registro, qué versión aceptó, cuál está vigente y en qué estado queda la combinación. La organización lo llama **desde su servidor**, antes de anunciar un consentimiento, para no volver a pedir lo que ya está `active` o pedir sólo lo que quedó `outdated`.

**Una persona sin registros responde `200` con una lista vacía**, no un `404`: que no haya consentido nada es una respuesta. La lista no se pagina, porque una persona tiene a lo sumo una fila por uso de datos.

**Editar el enunciado de un uso de datos no desactualiza nada**: sólo una versión nueva lo hace, así que quien aceptó la frase anterior sigue saliendo `active`.

**`external_id` tiene que ser opaco.** Viaja en la URL, así que queda en los logs de las requests por debajo de cualquier filtro: no uses ahí un correo, un RUT ni ningún otro dato de la persona. Por la misma razón esta ruta no recibe un documento de identidad.

**Límite de tasa:** 20 solicitudes por segundo. Al superarlo, la API responde `429`. Ver [Límites de tasa](/reference/limites-de-tasa).

## Query parameters

- `external_id` string, required: Identificador de la persona en los sistemas de la organización, el mismo con el que la anunció. Tiene que ser opaco: nunca un correo ni un RUT.

## Response `200`

Successful Response

- SubjectConsentResponse[]
  - `document` SubjectConsentDocumentResponse, required
    - `current_version` integer, required: Versión vigente hoy.
    - `name` string, required: Nombre que el uso de datos tenía cuando se aceptó.
    - `uuid` string, required: uuid del uso de datos.
    - `version` integer, required: Versión que la persona aceptó.
  - `granted_at` string, date-time, required: Momento de la aceptación que rige, en UTC.
  - `revoked_at` string, date-time, nullable: Momento del retiro, si lo hubo, en UTC.
  - `status` 'active' | 'outdated' | 'revoked', required: What the API answers and filters by. `outdated` is never stored — it is a comparison against the version in force, made when the row is read.

## Other responses

- `401`: Faltan las credenciales o son inválidas.
- `403`: La request no declara una organización en `organization-consumer`.
- `404`: El recurso solicitado no existe.
- `422`: Falta `external_id` o está en blanco.
- `429`: Se superó el límite de peticiones permitidas.

## Changes

- **2026-11-03** `a6ef070075b1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/trytoku/apis/toku-api/changes/consent/consents/get.md)

---

[API](https://skmtc.dev/trytoku/apis/toku-api.md) - [All operations](https://skmtc.dev/trytoku/apis/toku-api/llms.txt) - [OpenAPI document](https://skmtc.dev/trytoku/apis/toku-api/revisions/a6ef070075b1?raw)
