---
title: "SUNARP Registry Entry"
method: POST
path: "/pe/sunarp/registry-entry/v1"
tags: ["Peru", "SUNARP"]
---

# SUNARP Registry Entry

`POST /pe/sunarp/registry-entry/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/pe/sunarp/registry-entry/v1`
- Auth: HTTP bearer

Read one SUNARP partida: its inscriptions (asientos), newest first, with act, date, title and section, the older cards and book folios it continues from, and every page as a PDF we keep (`document_url`). Take `office`, `registry_area` and `partida_number` from a `sunarp-registry-search` result. `found: false` when the office has no such partida; `has_images: false` when SUNARP shows no pages for it (vehicle partidas: for a vehicle's characteristics and owners use `sunarp-vehicular-vehicle-by-plate`).

Supports async delivery: set `Prefer: wait=N` for an inline result, pass `callback_url` to receive a POST when ready, or poll `GET /jobs/{id}`.

## Headers

- `Idempotency-Key` string
- `Prefer` string

## Request body

- object
  - `office` string, required: The registry office (oficina registral) by name, e.g. `LIMA`, `AREQUIPA`, `CUSCO`. Case and accents are ignored.
  - `registry_area` 'real_estate' | 'non_land_property' | 'legal_entities' | 'natural_persons' | 'vehicles' | 'mining' | 'vessels' | 'aircraft' | 'movable_contracts', required: The registry: `real_estate` (propiedad inmueble predial), `non_land_property` (propiedad inmueble no predial), `legal_entities` (personas jurídicas), `natural_persons` (personas naturales), `vehicles` (propiedad vehicular), `mining` (propiedad minera), `vessels` (naves y embarcaciones), `aircraft` (aeronaves) or `movable_contracts` (registro mobiliario de contratos).
  - `partida_number` string, required: The partida number from a search result, e.g. `53237569`. A partida starting with P is written as `P12345678`.
  - `connection_id` string: Optional. Run as this connection (`conn_…`). Empty lets Croma pick among your organization's connections, moving to the next one when one reaches its daily allowance.
  - `callback_url` string, uri: POST the job result here when it finishes.

## Response `200`

Successful response

- SunarpRegistryEntryResponse
  - `data` SunarpRegistryEntryData, required
    - `found` boolean, required: Whether the source has the partida in that office and registry.
    - `office` string, required: The office, as the source names it.
    - `registry_area` string, required
    - `partida_number` string, required
    - `registry_zone` string, nullable, required
    - `status` 'open' | 'closed' | 'extinguished', nullable, required
    - `plate` string, nullable, required: Vehicle plate (vehicles only).
    - `vehicle_status` string, nullable, required: Vehicle status (vehicles only).
    - `has_images` boolean, required: False when the source shows no pages for the partida (vehicle partidas among them).
    - `moved_to_partida` string, nullable, required: When the source has renumbered the partida, the number to ask for instead.
    - `page_count` number, required: Pages returned across inscriptions, cards and folios.
    - `pages_truncated` boolean, required: True when the partida has more pages than one call returns; the source lists the newest inscriptions first, and those are the ones kept.
    - `inscriptions` object[], required: Inscriptions (asientos), in the order the source lists them.
      - `number` string, nullable, required: Inscription (asiento) number as the source prints it, e.g. "51" or "C00002".
      - `act` string, nullable, required: The act recorded, e.g. "COMPRA VENTA".
      - `registered_at` string, nullable, required: When it was inscribed, `yyyy-mm-ddThh:mm` (Lima time).
      - `title_number` string, nullable, required: Number of the title (título) that produced it.
      - `year` string, nullable, required: Year of that title.
      - `section` string, nullable, required: Section (rubro) letter, when the source gives one.
      - `section_name` string, nullable, required: Section (rubro) name, e.g. "DESCRIPCION DEL INMUEBLE".
      - `pages` object[], required
        - `page` number, required: Page number within its inscription or card.
        - `document_url` string, required: Our stored copy of the page (PDF), byte-identical to what the source serves.
    - `cards` object[], required: Older cards (fichas) the partida continues from.
      - `ficha_number` string, nullable, required
      - `pages` object[], required
        - `page` number, required: Page number within its inscription or card.
        - `document_url` string, required: Our stored copy of the page (PDF), byte-identical to what the source serves.
    - `folios` object[], required: Book folios (tomo / folio) the partida continues from.
      - `volume` string, nullable, required: Tomo.
      - `folio` string, nullable, required: Folio (foja).
      - `document_url` string, required: Our stored copy of the folio (PDF).
    - `checked_at` string, required: When the source was read (ISO 8601).

## Other responses

- `202`: Accepted — the result is being computed asynchronously. Poll `job.status_url` (GET /jobs/{id}) or supply `callback_url` to have the result POSTed to you. Returned when `Prefer: wait` elapses before completion, or immediately when `callback_url` is set.
- `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)
