---
title: "Superfinanciera Doctrine Search"
method: POST
path: "/co/superfinanciera-doctrine/search/v1"
tags: ["Colombia", "Superfinanciera Doctrina"]
---

# Superfinanciera Doctrine Search

`POST /co/superfinanciera-doctrine/search/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/co/superfinanciera-doctrine/search/v1`
- Auth: HTTP bearer

Search the Superintendencia Financiera de Colombia's doctrine and case-law catalog: every concepto it has issued since 1994 (the Superintendencia Bancaria's before 2005), every ruling of its Delegatura para Funciones Jurisdiccionales, and the high-court rulings it catalogues as jurisprudencia financiera. Free text matches the number, case file number, title, summary, subject descriptors and full text. Filter by `collection`, `year`, `number`, `registration_number` (expediente or radicado), `issuer`, `topic`, the date (`from_date`/`to_date`) and `text_status`. Each result links to its entry in the Superintendencia's catalog and to the document. 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 document's number, case file number, title, summary, topics and full text.
  - `collection` 'any' | 'concept' | 'jurisdictional_ruling' | 'financial_case_law' | 'other': Part of the catalog: `concept` (conceptos, the SFC's doctrine), `jurisdictional_ruling` (fallos of its Delegatura para Funciones Jurisdiccionales), `financial_case_law` (high-court sentencias the SFC catalogues as jurisprudencia financiera), `other`, or `any`.
  - `year` integer: Optional year the SFC files the document under (the year it was issued, in almost every case). 0 searches every year.
  - `number` string: Optional number of the concepto, fallo or sentencia as the SFC prints it (`2020311455-001`, `2017-1900`, `T-123`). Case, spaces and leading zeros are ignored.
  - `registration_number` string: Optional case file number (expediente or radicado) of a fallo or sentencia, e.g. `2019123456`. Case, spaces and punctuation are ignored.
  - `issuer` string: Optional issuer, matched from the start of the name: `superintendencia financiera` (its Delegatura para Funciones Jurisdiccionales included), `superintendencia bancaria`, `corte constitucional`, `consejo de estado`, `corte suprema`. Case and accents are ignored.
  - `topic` string: Optional subject descriptor, as the SFC publishes it in `topics`, e.g. `PROTECCIÓN AL CONSUMIDOR FINANCIERO`. Case and accents are ignored.
  - `from_date` string, date: Optional date filter in yyyy-mm-dd format.
  - `to_date` string, date: Optional date filter in yyyy-mm-dd format.
  - `text_status` 'any' | 'extracted' | 'no_text_layer' | 'audio' | 'dead_link' | 'withdrawn' | 'no_document': Optional state of the document's text: `extracted` (the full text is here), `no_text_layer` (a scan or a format with no text to read), `audio` (a hearing published as a recording), `dead_link` (the SFC's link leads to no document), `withdrawn`, `no_document`, or `any`.
  - `page` integer: 1-based page number for paginated results.
  - `per_page` integer: Results per page (1-50).

## Response `200`

Successful response

- SuperfinancieraDoctrineSearchResponse
  - `data` SuperfinancieraDoctrineSearchData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `query` string, required
    - `collection` string, nullable, required
    - `year` number, nullable, required
    - `number` string, nullable, required
    - `registration_number` string, nullable, required
    - `issuer` string, nullable, required
    - `topic` string, nullable, required
    - `from_date` string, nullable, required
    - `to_date` string, nullable, required
    - `text_status` 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 document's identifier in the Superintendencia's catalog, e.g. `18717`. The lookup takes it, and the catalog's own page for the document (`official_url`) carries it.
      - `collection` 'concept' | 'jurisdictional_ruling' | 'financial_case_law' | 'other', required: Which part of the catalog: `concept` (doctrine: the SFC's answers to consultations), `jurisdictional_ruling` (rulings of its Delegatura para Funciones Jurisdiccionales, which decides consumer disputes with supervised entities), `financial_case_law` (rulings of the Corte Constitucional, the Consejo de Estado and the Corte Suprema de Justicia that the SFC catalogues as financial case law), or `other` for the few entries it files under none of them.
      - `type` string, nullable, required: The kind of document as the SFC labels it: "Concepto", "Fallo" or "Sentencia".
      - `number` string, nullable, required: The document's number as the SFC prints it, e.g. "2020311455-001" (a concepto), "2017-1900" (a fallo), "T-123" or "SL1234-2025" (a sentencia). Null when it prints none, as on many sentencias and on the most recently catalogued fallos.
      - `number_key` string, nullable, required: The number in canonical form: lowercased, spaces dropped, leading zeros of each group of digits dropped ("2020311455 - 001" becomes "2020311455-1"). The `number` filter matches this.
      - `registration_number` string, nullable, required: The case file number (expediente or radicado) as the SFC prints it. Present on fallos and sentencias, null on conceptos.
      - `registration_key` string, nullable, required: The case file number uppercased, with everything but letters and digits dropped. The `registration_number` filter matches this.
      - `year` number, nullable, required: The year the SFC files the document under, which is the year it was issued in almost every case.
      - `issued_at` string, nullable, required: `yyyy-mm-dd` the document is dated, as the SFC prints it. Null when it prints no date.
      - `title` string, nullable, required: The title the SFC gives the document, usually a subject and a reference separated by ` / `.
      - `subject` string, nullable, required: The subject part of `title`: what comes before ` / `.
      - `summary` string, nullable, required: The SFC's own summary of the document. Null on the few it publishes without one.
      - `topics` string[], required: The subject descriptors the SFC files the document under, as it publishes them.
      - `topic_keys` string[], required: The same descriptors in canonical form (lowercased, unaccented, spaces hyphenated: "proteccion-al-consumidor-financiero"), which is what the `topic` filter matches.
      - `issuer` string, nullable, required: Who issued the document, as the SFC records it: "Colombia. Superintendencia Financiera de Colombia", "Superintendencia Financiera de Colombia. Delegatura para Funciones Jurisdiccionales", "Colombia. Superintendencia Bancaria" (conceptos before 2005), or the court, for a sentencia.
      - `issuer_key` string, nullable, required: The issuer in canonical form, without the leading "Colombia." ("corte-constitucional", "superintendencia-financiera-de-colombia-delegatura-para-funciones-jurisdiccionales"). The `issuer` filter matches it from the start.
      - `reporting_judges` string[], required: For a sentencia, the magistrado ponente as the SFC records it. Empty otherwise.
      - `series` string, nullable, required: The SFC series the document is collected in, e.g. "Superintendencia Financiera de Colombia. Conceptos 2021". Null when it records none.
      - `notes` string, nullable, required: The SFC's own notes on the entry, e.g. "Formato de archivo de sonido" on a fallo published as a recording. Null when there are none.
      - `withdrawn_at` string, nullable, required: `yyyy-mm-dd` the SFC withdrew the concepto from its catalog, when it did. Null otherwise.
      - `text_status` 'extracted' | 'no_text_layer' | 'audio' | 'dead_link' | 'withdrawn' | 'no_document', required: Whether `text` holds the document's full text, and why not when it does not: `extracted` (it does), `no_text_layer` (the document is a scan, or in a format with no text to read), `audio` (a hearing the SFC published as a recording), `dead_link` (the SFC's link does not lead to a document), `withdrawn` (the SFC withdrew the entry) or `no_document` (the SFC published the entry without a document).
      - `document_format` 'docx' | 'doc' | 'rtf' | 'html' | 'pdf' | 'audio' | 'other' | 'none', required: What the linked document is: `docx`, `doc` (Word 97-2003), `rtf`, `html`, `pdf`, `audio`, `other`, or `none` when there is no document.
      - `official_url` string, required: The document's entry in the Superintendencia's own catalog.
      - `document_url` string, nullable, required: The address the Superintendencia publishes the document itself at. Null when it publishes none.

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