> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecroma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tribunal Constitucional

> Las sentencias del Tribunal Constitucional de Chile: busca en unas 13.000 causas desde 1981 por rol, procedimiento, resultado o fecha, y lee cualquier sentencia completa con su ficha, sus votos y su PDF original.

El Tribunal Constitucional de Chile decide si las leyes y otras normas se ajustan a la Constitución: requerimientos para declarar inaplicable un precepto legal en una gestión pendiente (la inaplicabilidad, el grueso de su trabajo), declaraciones de inconstitucionalidad, el control preventivo de leyes orgánicas y los reclamos contra autos acordados, decretos y proyectos de ley. Cada causa llega aquí como un rol con su procedimiento, la fecha de la sentencia, el resultado, quién la presentó y la gestión de la que viene, los preceptos legales impugnados y los artículos de la Constitución en juego, las palabras clave y la doctrina del Tribunal, los ministros de la mayoría, de la disidencia y de cualquier prevención con quién redactó cada uno, cada ficha del buscador de jurisprudencia del Tribunal para la causa y cada documento distinto de la causa, guardado byte a byte, con el texto de la sentencia.

Las sentencias recientes llegan al día siguiente de que el Tribunal las firma, con el PDF firmado y la carátula; la ficha llega cuando el buscador de jurisprudencia del Tribunal se pone al día, normalmente unos tres meses después. Busca por rol, procedimiento, resultado o fecha, o con texto libre que llega hasta los preceptos, los ministros y la propia sentencia. Busca primero y luego lee una causa completa.

> [!NOTE]
>
> La fuente entera, organizada y lista para consultar: cada endpoint de esta página responde en milisegundos. Cada respuesta incluye `as_of`: qué tan actualizados están los datos. [Cómo funcionan los datasets](https://docs.usecroma.com/es/datasets.md).

## Buscar sentencias

`POST /cl/tc-cl/rulings-search/v1` [Dataset](https://docs.usecroma.com/es/datasets.md)

Una sola búsqueda sobre todas las causas del Tribunal Constitucional con sentencia publicada desde 1981, filtrada por rol, procedimiento, resultado o fecha.

| Campo | Tipo | Notas |
| - | - | - |
| `query` | string | Palabras opcionales que se buscan en el rol, la carátula, los requirentes, la gestión pendiente, las leyes impugnadas, los artículos de la Constitución, las palabras clave, los ministros, la doctrina y el texto de la sentencia, p. ej. `debido proceso`. Todas las palabras deben aparecer. |
| `rol` | string | Rol opcional de la causa, p. ej. `16770`. También sirve `16.770-25-INA`: solo cuenta el número. |
| `procedure` | string | Código de procedimiento opcional: `INA` (inaplicabilidad), `INC` (inconstitucionalidad), `CPR` (control preventivo), `CAA` (autos acordados), `CPT`, `CDS` y los demás. |
| `outcome` | string | Resultado opcional como lo registra el Tribunal, p. ej. `Acoge`, `Rechaza`, `Acoge parcialmente`. No importan los acentos ni las mayúsculas. |
| `from_date` | string | Opcional: solo causas cuya última sentencia es de esta fecha o posterior, `yyyy-mm-dd`. |
| `to_date` | string | Opcional: solo causas cuya última sentencia es de esta fecha o anterior, `yyyy-mm-dd`. |
| `page` | integer | Número de página, empieza en 1. Por defecto `1`. |
| `per_page` | integer | Resultados por página (1-50). Por defecto `20`. |

```bash theme={"dark"}
curl https://api.croma.run/cl/tc-cl/rulings-search/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "debido proceso", "procedure": "INA" }'
```

Devuelve `as_of` (qué tan actualizados están los datos), los filtros aplicados, `total` y `total_is_exact`, `page`, `per_page`, `total_pages`, `count` y `results[]`, de la sentencia más reciente a la más antigua. Cada resultado es una causa: `rol` (el número de la causa, p. ej. `16770`), `case_number` (con su año de ingreso, p. ej. `17637-2026`, en las sentencias recientes), `procedure` (p. ej. `INA`) y `procedure_name`, `ruling_type` (p. ej. `INA-STC`), `sentence_date` y `sentence_date_raw` (la fecha como la registra el Tribunal, que se conserva aunque esté mal escrita; `sentence_date` queda entonces en null) y `year`, `caption` (la carátula, en las sentencias recientes), `outcome` y `outcomes`, `resolution_types`, `requesters` (requirentes), `pending_proceeding` (gestión pendiente), `challenged_provisions` (cada uno con `legal_body`, `article`, `paragraph`, `number`, `letter`, `section`, `phrase` y `text`) y `challenged_laws`, `constitutional_articles`, `keywords`, `majority` y `majority_author`, `dissent` y `dissent_author`, `concurrence` y `concurrence_author` (prevención), `bench`, `chamber`, `related_rulings`, `doctrine`, `justices` (todos los ministros nombrados en la causa), `fichas` (cada ficha del buscador de jurisprudencia del Tribunal para la causa, con `id`, `type`, `type_name`, `sentence_date`, `status`, `updated_at` y cada uno de sus `fields` con su `name` y sus `values`), `documents` (cada documento distinto de la causa, con `id`, `collection`: `case_file` para la sentencia firmada o `case_law` para la copia del buscador de jurisprudencia, `name`, `date`, `pages`, `bytes`, `text_status`, `document_url`, la copia idéntica byte a byte de Croma, y `source_document_url`), `text_status`, `document_url` y `source_document_url` (los del primer documento). Los campos que el Tribunal no indica vienen en null o vacíos.

> [!NOTE]
>
> Los resultados de búsqueda no incluyen el texto de la sentencia. `query` sí busca dentro de él; para leer el texto usa el endpoint Tribunal Constitucional Chile Ruling.

> [!NOTE]
>
> Una sentencia nueva aparece al día siguiente de que el Tribunal la firma, con su PDF firmado y su carátula. Su ficha (resultado, preceptos, votos, doctrina) llega cuando el buscador de jurisprudencia del Tribunal se pone al día, normalmente unos tres meses después.

## Una causa, completa

`POST /cl/tc-cl/ruling/v1` [Dataset](https://docs.usecroma.com/es/datasets.md)

| Campo | Tipo | Notas |
| - | - | - |
| `rol` | string | **Obligatorio.** El `rol` de la causa que devuelve la búsqueda, p. ej. `16770`. También sirven `16.770-25` o `16770-2025-INA`: solo cuenta el número. |
| `offset` | integer | Primer carácter del texto a devolver. Envía el `next_offset` de la respuesta anterior para seguir leyendo. Por defecto `0`. |
| `limit` | integer | Cuántos caracteres del texto devolver. La mayoría de las sentencias caben en una sola respuesta. Por defecto `200000`. |

```bash theme={"dark"}
curl https://api.croma.run/cl/tc-cl/ruling/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "rol": "16770" }'
```

Devuelve `as_of`, `found`, `rol` y `ruling`, que trae todo lo que devuelve la búsqueda más `content` (una ventana sobre el texto de la sentencia, con `text`, `offset`, `total_length`, `has_more` y `next_offset`). Cada resultado es una causa: `rol` (el número de la causa, p. ej. `16770`), `case_number` (con su año de ingreso, p. ej. `17637-2026`, en las sentencias recientes), `procedure` (p. ej. `INA`) y `procedure_name`, `ruling_type` (p. ej. `INA-STC`), `sentence_date` y `sentence_date_raw` (la fecha como la registra el Tribunal, que se conserva aunque esté mal escrita; `sentence_date` queda entonces en null) y `year`, `caption` (la carátula, en las sentencias recientes), `outcome` y `outcomes`, `resolution_types`, `requesters` (requirentes), `pending_proceeding` (gestión pendiente), `challenged_provisions` (cada uno con `legal_body`, `article`, `paragraph`, `number`, `letter`, `section`, `phrase` y `text`) y `challenged_laws`, `constitutional_articles`, `keywords`, `majority` y `majority_author`, `dissent` y `dissent_author`, `concurrence` y `concurrence_author` (prevención), `bench`, `chamber`, `related_rulings`, `doctrine`, `justices` (todos los ministros nombrados en la causa), `fichas` (cada ficha del buscador de jurisprudencia del Tribunal para la causa, con `id`, `type`, `type_name`, `sentence_date`, `status`, `updated_at` y cada uno de sus `fields` con su `name` y sus `values`), `documents` (cada documento distinto de la causa, con `id`, `collection`: `case_file` para la sentencia firmada o `case_law` para la copia del buscador de jurisprudencia, `name`, `date`, `pages`, `bytes`, `text_status`, `document_url`, la copia idéntica byte a byte de Croma, y `source_document_url`), `text_status`, `document_url` y `source_document_url` (los del primer documento). Los campos que el Tribunal no indica vienen en null o vacíos.

> [!NOTE]
>
> Las sentencias largas se leen por rangos: envía `offset` y `limit`, y luego pasa el `next_offset` de la respuesta como `offset` hasta que `has_more` sea falso.

> [!NOTE]
>
> Un rol para el que el Tribunal no ha publicado sentencia devuelve `found: false` con HTTP 200, no un error.

> **[Referencia completa](https://docs.usecroma.com/es/api-reference/overview.md)**
>
> Esquemas, todos los campos de respuesta y un playground interactivo.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.