> ## 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.

# Cámara de Diputados

> Mexican federal laws, codes, and reglamentos, with the full reform history behind each one.

The official compilation of Mexican federal legislation: 315+ laws and codes
(including the Constitution, and recently abrogated laws flagged `abrogated`),
135+ reglamentos, and the chronological log of every reform decree. Four
endpoints: two catalogs, one detail lookup, and the reform log.

## Federal laws

`POST /mx/diputados/federal-laws/v1`

| Field   | Type    | Notes                                                                                        |
| ------- | ------- | -------------------------------------------------------------------------------------------- |
| `query` | string  | Optional name filter. Case- and accent-insensitive substring; also matches the abbreviation. |
| `page`  | integer | 1-based page number. 100 laws per page.                                                      |

```bash theme={"dark"}
curl https://api.croma.run/mx/diputados/federal-laws/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "instituciones de crédito" }'
```

Returns `laws` and `pagination` (`total`, `page`, `page_size`, `total_pages`).

| Field                  | Notes                                                                                    |
| ---------------------- | ---------------------------------------------------------------------------------------- |
| `id`                   | Law identifier (e.g. `lic`, `cpeum`). Pass it to the lookup below.                       |
| `name`, `abbreviation` | Full name and official short code, when the compilation uses one.                        |
| `publication_date`     | Original DOF publication date.                                                           |
| `last_reform_date`     | Date of the most recent reform; null when unreformed.                                    |
| `last_reform_note`     | Set when the latest listed event is judicial rather than a reform.                       |
| `status_note`          | Legal-status annotations: invalidity declarations, pending abrogation, entry into force. |
| `abrogated`            | `true` when the law is listed as abrogated (no longer in force).                         |
| `reformed`             | Whether the law has ever been reformed.                                                  |
| `pdf_url`, `doc_url`   | Current consolidated text.                                                               |

## One law

`POST /mx/diputados/federal-law/v1`

| Field    | Type   | Notes                                          |
| -------- | ------ | ---------------------------------------------- |
| `law_id` | string | **Required.** The `id` from the catalog above. |

```bash theme={"dark"}
curl https://api.croma.run/mx/diputados/federal-law/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "law_id": "lic" }'
```

Returns `found`, `law_id`, and `law`. The law carries every catalog field plus
`original_publication` (`dof_date` and a scan of the original) and `reforms`:
every decree that amended it, newest first, each with `number`, `dof_date`,
`description` (the decree headline), `pdf_url`, `doc_url`, and any `errata`.

## Federal regulations

`POST /mx/diputados/federal-regulations/v1`

| Field   | Type    | Notes                                                         |
| ------- | ------- | ------------------------------------------------------------- |
| `query` | string  | Optional name filter. Case- and accent-insensitive substring. |
| `page`  | integer | 1-based page number. 50 per page.                             |

```bash theme={"dark"}
curl https://api.croma.run/mx/diputados/federal-regulations/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "ley aduanera" }'
```

Returns `regulations` and `pagination`. Each reglamento has `name`,
`abrogated`, `publication_date`, `pdf_url`, `doc_url`, and an inline `history`
of entries typed `original`, `reform`, `amounts` (the annual amount and fee
updates), `erratum`, `clarification`, or `validity` (Fe de erratas, Aclaración,
and Disposición de vigencia notices), each with its `dof_date` and `doc_url`.

## Reforms by year

`POST /mx/diputados/law-reforms/v1`

| Field  | Type    | Notes                                                                             |
| ------ | ------- | --------------------------------------------------------------------------------- |
| `year` | string  | Optional 4-digit year. Defaults to the current year. Archives verified from 2022. |
| `page` | integer | 1-based page number. 50 decrees per page.                                         |

```bash theme={"dark"}
curl https://api.croma.run/mx/diputados/law-reforms/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "year": "2026" }'
```

Returns `year`, `found` (`false` when no reform log exists for that year),
`pagination`, and `decrees`, newest first. There is one entry per DOF
publication day, and a single day can bundle several instruments. Each entry has
`dof_date`, `summary` (full decree prose, which can be long), `actions`, and
`affected_laws`, since one decree can touch many laws. Canonical actions are
`reforman`, `adicionan`, `derogan`, `abrogan`, `expiden`, `modifican`,
`actualizan`, `fe de erratas`, and `aclaración`, plus `sentencia` for court
entries that carry no decree verb.

<Card title="Full reference" icon="code" href="/api-reference/overview">
  Schemas, response fields, and an interactive playground.
</Card>
