---
title: "Search documentary mentions of persons"
method: GET
path: "/api/v1/person/search"
tags: ["Persons", "Search"]
---

# Search documentary mentions of persons

`GET /api/v1/person/search`

Search only person_public_search_v1, bounded to 50 results and revalidated against the activated company_public_v2 generation. Results are unresolved name mentions, never identity profiles. Authority failure is 503/no-store, not an empty result. No raw persons, enrichment or person-procurement fallback.

## Query parameters

- `q` string, required
- `limit` integer

## Response `200`

Person search results

- PersonSearchResponse
  - `schema_version` 'person_search_v1', required
  - `status` 'available', required
  - `query` string, required
  - `count` integer, required
  - `items` PersonSearchItem[], required
    - `slug` string, required
    - `name` string, required
    - `mentions_count` integer, required
    - `companies_count` integer, required
    - `first_seen` string, date, nullable, required
    - `last_seen` string, date, nullable, required
    - `subject_type` 'person_documentary_mentions', required
    - `identity_resolution` 'not_performed', required
    - `source_slug` 'borme', required
  - `subject_type` 'person_documentary_mentions', required
  - `identity_resolution` 'not_performed', required
  - `projection` PersonPublicProjectionMetadata, required
    - `name` 'person_public_v1', required
    - `schema_version` '1.0', required
    - `contract_sha256` string, required
    - `source_generation` string, required
    - `content_sha256` string, required
    - `projected_at` string, date-time, required
  - `_legal_notice` string, required
  - `_source_catalog` SourceCatalogEnvelope, required
    - `catalog_version` string, required
    - `policy_fingerprint` string, required
    - `policy_effective_date` string, date
    - `sources` object, required
  - `_data_sources_used` PublicSourcePolicyMetadata[], required
    - `slug` string, required
    - `name` string, required
    - `license` string, required
    - `license_url` string, uri, nullable
    - `attribution_required` boolean, required
    - `attribution_text` string, nullable
    - `official_url` string, uri, nullable
    - `reuse_conditions` string, required — Condiciones de reutilizacion que el consumidor debe conservar al presentar o transformar el dato.
    - `policy_effective_date` string, date, required
    - `reviewed_at` string, date, required
    - `data_updated_at` string, date-time, nullable
    - `catalog_version` string, required
  - `_attributions` object

## Other responses

- `400` — Invalid request
- `422` — The query is lexically valid but outside a documented numeric or length bound, or uses an unsupported indexed combination.
- `429` — Rate limit exceeded
- `503` — The public read failed closed because its legal source catalog, subject classification, bounded projection, database helper or required artifact is unavailable. Clients must not infer an empty result.

---

[API](https://skmtc.net/openmercantil/apis/openmercantil-public-api.md) · [All operations](https://skmtc.net/openmercantil/apis/openmercantil-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openmercantil/openmercantil-public-api/revisions/996f96a11758/schema)
