---
title: "Supersociedades Ownership Search"
method: POST
path: "/co/supersociedades/ownership-search/v1"
tags: ["Colombia", "Supersociedades"]
---

# Supersociedades Ownership Search

`POST /co/supersociedades/ownership-search/v1`

## Request

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

Find the filings with the Superintendencia de Sociedades that declare a given person or company: by the identity document or NIT of a shareholder, an officer (legal representative, accountant, revisor fiscal) or a related company (subsidiary, associate, joint venture), optionally by role, company name and fiscal year. Each result is one filing's declared parties: shareholders with shares and percentage, foreign investors, subsidiaries, associates, joint ventures, officers and investor classes. Newest filing first. 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
  - `party_document_number` string: Optional identity document or NIT of a person or company, numeric, as declared in the notes: finds the filings that declare it as a shareholder, officer or related company.
  - `party_role` 'any' | 'shareholder' | 'officer' | 'related': Where to match `party_document_number`: among the `shareholder`s (and foreign investors), the `officer`s (legal representatives, accountant, revisor fiscal), the `related` companies (subsidiaries, associates, joint ventures), or `any`.
  - `query` string: Optional words matched against the company name (razón social) as filed.
  - `fiscal_year` integer: Optional fiscal year (2015 or later). 0 searches every year.
  - `include_all_filings` boolean: `false` (default) returns one filing per company and fiscal year (the individual books when filed, else the separado, else the consolidado). `true` returns every filing, including consolidated ones.
  - `page` integer: 1-based page number for paginated results.
  - `per_page` integer: Results per page (1-100).

## Response `200`

Successful response

- SupersociedadesOwnershipSearchResponse
  - `data` SupersociedadesOwnershipSearchData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `total` number, required: Matches across every page, 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 on this page.
    - `results` object[], required: Newest filing first.
      - `id` string, required: The filing's identifier: entry point, NIT and corte, e.g. `pymes_individuales_800011651_2025-12-31`. The same filing carries the same id in every Supersociedades dataset.
      - `document_number` string, required: The company's NIT, numeric, no verification digit.
      - `name` string, nullable, required: Razón social as filed.
      - `fiscal_year` integer, required: Fiscal year of the corte.
      - `cutoff_date` string, required: The corte, `yyyy-mm-dd`; December 31 for an annual filing.
      - `filing_id` string, nullable, required: Número de radicado of the filing. Numbers grow with time, so the highest one held for a corte is what a refresh reads above.
      - `statement_type` 'individual' | 'separado' | 'consolidado' | 'combinado', nullable, required: What the filing covers: `individual`, `separado`, `consolidado` or `combinado`.
      - `niif_group` 'plenas' | 'pymes', nullable, required: Reporting framework: `plenas` (group 1) or `pymes` (group 2).
      - `preferred` boolean, required: True for the one filing that stands for the company in that fiscal year: the individual books when filed, else the separado, else the consolidado, latest radicado first. Searches return preferred filings unless asked otherwise.
      - `shareholders` object[], required: Shareholders or partners as declared in the note, in the order filed.
        - `name` string, nullable, required: Name as declared.
        - `document_type` string, nullable, required: Identity document type as declared, e.g. "CEDULA DE CIUDADANIA", "NIT", "CEDULA DE EXTRANJERIA", "PASAPORTE".
        - `document_number` string, nullable, required: Identity document number or NIT as declared.
        - `country` string, nullable, required: Country as declared, e.g. "169 - COLOMBIA".
        - `shares` number, nullable, required: Shares or cuotas held, as declared.
        - `participation_pct` number, nullable, required: Share of the capital, in percent, as declared.
      - `foreign_investors` object[], required
        - `name` string, nullable, required: Name as declared.
        - `document_type` string, nullable, required: Identity document type as declared, e.g. "CEDULA DE CIUDADANIA", "NIT", "CEDULA DE EXTRANJERIA", "PASAPORTE".
        - `document_number` string, nullable, required: Identity document number or NIT as declared.
        - `country` string, nullable, required: Country as declared, e.g. "169 - COLOMBIA".
        - `shares` number, nullable, required: Shares held, as declared.
        - `participation_pct` number, nullable, required: Share of the capital, in percent, as declared.
        - `movement` string, nullable, required: Movement of the stake during the fiscal year, as declared.
      - `subsidiaries` object[], required: Companies this company controls, as declared.
        - `name` string, nullable, required
        - `document_number` string, nullable, required: The subsidiary's NIT, as declared.
        - `place_of_business` string, nullable, required
        - `country` string, nullable, required
        - `non_controlling_interest_pct` number, nullable, required: Share of the subsidiary's capital held by parties other than this company, in percent.
        - `non_controlling_voting_pct` number, nullable, required: Share of the subsidiary's voting rights held by parties other than this company, in percent.
      - `associates` object[], required: Companies it holds a significant stake in, as declared.
        - `name` string, nullable, required
        - `document_number` string, nullable, required: The associate's NIT, as declared.
        - `place_of_business` string, nullable, required
        - `country` string, nullable, required
        - `ownership_pct` number, nullable, required: This company's share of the associate's capital, in percent.
        - `voting_pct` number, nullable, required: This company's share of the associate's voting rights, in percent.
      - `joint_ventures` object[], required
        - `name` string, nullable, required
        - `document_number` string, nullable, required: NIT of the joint venture, as declared.
        - `place_of_business` string, nullable, required
        - `country` string, nullable, required
        - `ownership_pct` number, nullable, required
        - `voting_pct` number, nullable, required
      - `officers` object[], required: Legal representatives, accountant and revisor fiscal, as declared.
        - `role` string, required: `legal_representative`, `first_alternate_legal_representative`, `second_alternate_legal_representative`, `accountant`, `statutory_auditor` (revisor fiscal), `alternate_statutory_auditor`, or the filing's own label.
        - `document_type` string, nullable, required
        - `document_number` string, nullable, required
        - `first_names` string, nullable, required
        - `last_names` string, nullable, required
        - `professional_card` string, nullable, required: Tarjeta profesional, for the accountant and the revisor fiscal.
        - `chamber_registration_date` string, nullable, required: Date the appointment was registered at the chamber of commerce, yyyy-mm-dd.
      - `investor_classes` object[], required: Counts and nominal values by class of investor (natural persons, legal entities), as declared.
        - `dimension` string, required: The dimension the member belongs to, e.g. `ContraparteAccionistasSocios`.
        - `member` string, required: The member: one shareholder, one asset class, one component of equity.
        - `row` integer, nullable, required: The row number for line-item members, else null.
        - `values` object[], required: Every fact filed for the member.
          - `concept` string, required: The concept as the taxonomy names it, e.g. `NombreAccionistaSocio`.
          - `label` string, nullable, required: The concept's label in the form, when the filing carries it.
          - `value` string, required: The value as filed. Numbers are filed as text, in the filing's unit.
          - `period_end` string, nullable, required: `yyyy-mm-dd` the fact's period ends, when the form carries several periods.
      - `shareholder_document_numbers` string[], required: Every identity document or NIT declared among the shareholders and foreign investors, for reverse lookup.
      - `officer_document_numbers` string[], required: Every identity document declared among the officers, for reverse lookup.
      - `related_document_numbers` string[], required: Every NIT declared among subsidiaries, associates and joint ventures, for reverse lookup.
      - `party_document_numbers` string[], required: The three lists above as one, for a lookup by document in any role.
      - `shareholder_count` integer, required: Shareholders declared in the note.

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