---
title: "SIC Regulations Search"
method: POST
path: "/co/sic-normativa/regulations-search/v1"
tags: ["Colombia", "SIC"]
---

# SIC Regulations Search

`POST /co/sic-normativa/regulations-search/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/co/sic-normativa/regulations-search/v1`
- Auth: HTTP bearer

Search the normative register of Colombia's Superintendencia de Industria y Comercio (SIC): the laws and decrees it applies, its resoluciones, circulares, the títulos of the Circular Única, its doctrina, draft resolutions and appointments, about 7,600 acts. Free text matches the title and the Superintendencia's summary. Filter by `kind` (as the register files it: `Resoluciones`, `Circulares`, `Títulos Circular única`, `Leyes`, `Decretos`, `Doctrina`, ...), `topic` (its area, e.g. `Protección al Consumidor`), the date of issue and the date of publication. Each result carries Croma's copy of every attached file. Served by Croma (`as_of` says how current the data is).

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

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `query` string: Optional search terms matched against the title and the Superintendencia's summary.
  - `kind` string: Optional kind as the register files it, e.g. `Resoluciones`, `Circulares`, `Títulos Circular única`, `Leyes`, `Decretos`, `Doctrina`, `Nombramientos`. Case and accents are ignored.
  - `topic` string: Optional area of the Superintendencia, e.g. `Protección al Consumidor`, `Protección de Datos Personales`, `Propiedad Industrial`, matched from the start. Case and accents are ignored.
  - `issued_from` string, date: Optional date filter in yyyy-mm-dd format.
  - `issued_to` string, date: Optional date filter in yyyy-mm-dd format.
  - `published_from` string, date: Optional date filter in yyyy-mm-dd format.
  - `published_to` string, date: Optional date filter in yyyy-mm-dd format.
  - `page` integer: 1-based page number for paginated results.
  - `per_page` integer: Results per page (1-50).

## Response `200`

Successful response

- SicRegulationsSearchResponse
  - `data` SicRegulationsSearchData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `query` string, required
    - `kind` string, nullable, required
    - `topic` string, nullable, required
    - `issued_from` string, nullable, required
    - `issued_to` string, nullable, required
    - `published_from` string, nullable, required
    - `published_to` string, nullable, required
    - `total` number, required: Matches, counted up to 1000.
    - `total_is_exact` boolean, required: False when more than 1000 match: `total` is then 1000, and the pages go on.
    - `page` number, required
    - `per_page` number, required
    - `total_pages` number, required: Pages over `total`; there are more when `total_is_exact` is false.
    - `count` number, required
    - `results` object[], required
      - `id` string, required: The act's permanent number in the Superintendencia's normative register, e.g. `24968`.
      - `title` string, required: The act as the register titles it, e.g. "Resolución No. 71690 del 10 de septiembre de 2026 \"por la cual se adoptan medidas transitorias...\"".
      - `kinds` string[], required: The kinds the register files the act under, as it names them: "Resoluciones", "Circulares", "Títulos Circular única", "Leyes", "Decretos", "Doctrina", "Nombramientos", "Proyectos de resolución", ... An act can carry more than one.
      - `kind_keys` string[], required: `kinds` in canonical form (lowercased, unaccented, hyphenated), which is what the `kind` filter matches.
      - `topic` string, nullable, required: The Superintendencia's area the act belongs to, e.g. "Protección al Consumidor", "Protección de Datos Personales", "Propiedad Industrial". Null when the register files it under none.
      - `topic_key` string, nullable, required: `topic` in canonical form, which is what the `topic` filter matches.
      - `summary` string, nullable, required: What the act does, in the Superintendencia's own words.
      - `issued_at` string, nullable, required: `yyyy-mm-dd` the act was issued (fecha de expedición).
      - `published_at` string, nullable, required: `yyyy-mm-dd` the Superintendencia published the act in its register.
      - `official_url` string, required: The act in the Superintendencia's normative register.
      - `document_url` string, nullable, required: Croma's copy of the act's main file (its PDF), byte for byte as the Superintendencia published it. Null when it publishes no file.
      - `source_document_url` string, nullable, required: The act's main file on the Superintendencia's own site.
      - `documents` object[], required: Every file the Superintendencia attached to the act.
        - `name` string, required: The file name as the Superintendencia published it.
        - `format` string, required: The file's format from its name: `pdf`, `docx`, `xlsx`, ...
        - `document_url` string, nullable, required: Croma's copy of the file, byte for byte as the Superintendencia published it. Null when its link no longer answers.
        - `source_document_url` string, required: The file on the Superintendencia's own site.
        - `bytes` number, nullable, required: Size of the file in bytes, when the copy was made.

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