---
title: "Asamblea Legislativa de El Salvador Decree"
method: POST
path: "/sv/asamblea-sv/decree/v1"
tags: ["El Salvador", "Asamblea Legislativa de El Salvador"]
---

# Asamblea Legislativa de El Salvador Decree

`POST /sv/asamblea-sv/decree/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/sv/asamblea-sv/decree/v1`
- Auth: HTTP bearer

Retrieve one decree from the register of El Salvador's Asamblea Legislativa by its `id` from a search result (e.g. `7000`) or its `official_url`: its full text, number, kind, dates of issue and publication, Diario Oficial issue, subject, subtopic, area of law, the Asamblea's summary, Croma's copy of its document and the links to the record and the document on the Asamblea's own site. The text comes back a character range at a time (`offset`, `limit`); follow `next_offset` until `has_more` is false.

**Dataset endpoint**: answers from the whole source in milliseconds and carries `as_of`.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `decree_id` string, required: The decree's `id` from a search result, e.g. `7000`. Its `official_url` works too.
  - `offset` integer: First character of the range to return. Pass the previous response's `next_offset` to continue reading.
  - `limit` integer: Maximum characters to return (1000-1000000).

## Response `200`

Successful response

- AsambleaSvDecreeResponse
  - `data` AsambleaSvDecreeData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `found` boolean, required
    - `decree_id` string, required
    - `decree` object, nullable, required
      - `id` string, required: The decree's permanent number in the Asamblea Legislativa's register, e.g. "7000".
      - `number` string, nullable, required: The decree number, e.g. "632". Numbers restart with each legislature.
      - `type` string, nullable, required: The kind of act: "Decreto", "Ley", "Código" or "Reglamento".
      - `title` string, required: The decree's title as the Asamblea registers it.
      - `summary` string, nullable, required: The Asamblea's summary of what the decree provides.
      - `subject` string, nullable, required: The subject (materia) the Asamblea files it under, e.g. "Hacienda y Presupuesto".
      - `subtopic` string, nullable, required: The subtopic (sub-materia), e.g. "Autorizaciones para Préstamos".
      - `area_of_law` string, nullable, required: The area of law (rama del derecho), e.g. "Derecho Administrativo".
      - `issue_date` string, nullable, required: `yyyy-mm-dd` the Asamblea issued the decree.
      - `year` number, nullable, required: The year the Asamblea issued the decree.
      - `publication_date` string, nullable, required: `yyyy-mm-dd` of publication in the Diario Oficial. While `pending_publication` is true, the date the Diario Oficial has assigned.
      - `gazette_number` string, nullable, required: The number of the Diario Oficial that publishes it.
      - `gazette_volume` string, nullable, required: The volume (tomo) of the Diario Oficial that publishes it.
      - `pending_publication` boolean, required: True while the decree awaits its publication in the Diario Oficial; `publication_date` is then the date assigned to it.
      - `text_status` 'ok' | 'scanned' | 'missing', required: `ok` when the full text is here; `scanned` when the document is an image with no text in it; `missing` when the Asamblea publishes no readable document yet.
      - `official_url` string, required: The decree's record on the Asamblea Legislativa's site.
      - `document_url` string, nullable, required: Croma's copy of the decree's document (PDF), byte for byte as the Asamblea published it. Null when it publishes none.
      - `source_document_url` string, nullable, required: The decree's document on the Asamblea Legislativa's own site.
      - `document_modified_at` string, nullable, required: When the Asamblea last changed the document, as its site reports it.
      - `content` object, nullable, required: A range of the decree's text, or null when `text_status` is not `ok`.
        - `text` string, required: The requested character range of the decree's text.
        - `offset` number, required: First character of the range, which is where the reading actually started.
        - `total_length` number, required: Length of the whole text in characters, however much of it this response carries.
        - `has_more` boolean, required: Whether the text continues past this range.
        - `next_offset` number, nullable, required: Pass this back as `offset` to read the next range. Null at the end of the text.

## Other responses

- `400`: Invalid request body
- `401`: Missing or invalid API key
- `429`: Rate limit exceeded
- `500`: Internal error
- `502`: Upstream source returned an error

---

[API](https://skmtc.dev/usecroma/apis/croma-marketplace-api.md) · [All operations](https://skmtc.dev/usecroma/apis/croma-marketplace-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usecroma/apis/croma-marketplace-api/revisions/df016cdb29d7?raw)
