Peru · pe_oefa_sanctions_ruc
OpenAPI

Lookup oefa · sanctions by RUC

GET https://api.latinfo.dev/pe/oefa/sanctions/ruc/{ruc}

A sanctioned-entity case/resolution; one company can have multiple records. Coverage: Published environmental enforcement cases for legal-entity RUCs. Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below. multa_expediente is in UIT, not PEN; narrative detail is truncated to 500 characters. Returns all records as an array. Import time is not observation time; inspect freshness headers. Add limit (1–500) and offset to retrieve an explicit page; without them the complete original array is returned. X-Total-Count gives the exact row count; follow Link rel=next to retrieve all pages.

Contrato da fonte

Publicador
OEFA, Peru
Cobertura
Published environmental enforcement cases for legal-entity RUCs.
Significado do registro
A sanctioned-entity case/resolution; one company can have multiple records.
Identificador
Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.
Padrão aceito
^\d{11}$
Quantidade de registros
many
Licença
A permissão de reutilização não foi verificada. Acesso público não equivale a uma licença de reutilização.

Limitações conhecidas

  • multa_expediente is in UIT, not PEN; narrative detail is truncated to 500 characters.

Contrato da fonte para agentes · Documentação da fonte

Autenticação necessária. As requisições REST usam uma chave de api do Latinfo. O console adiciona o cabeçalho de autorização e não armazena a chave.

Parâmetros

rucstringpathobrigatório

RUC in the source's normalized format. Keep identifiers as strings; preserve leading zeros.

Example: 20165230974
limitintegerquery

Optional page size. Supplying limit or offset enables explicit pagination; default page size is 100.

offsetintegerquery

Row offset, default 0. Keep the same source generation while collecting pages.

generationstringquery

Opaque source-generation guard, automatically included in the next-page Link. A changed generation returns 409; restart retrieval.

Exemplo de requisição

curl https://api.latinfo.dev/pe/oefa/sanctions/ruc/20165230974 \
  -H "Authorization: Bearer $LATINFO_API_KEY"

Respostas

200Published source records. Missing data is not a clearance or a negative finding.

Cabeçalhos da resposta

X-Latinfo-Imported-At

Import time, not the date of the government observation.

X-Source-Updated-At

Publisher update time, when known.

X-Latest-Observation-At

Latest date in returned records, when known.

X-Freshness-Status

string

CURRENT · DELAYED · STALE · UNKNOWN
X-Credits-Cost

Actual credits charged for this request.

X-Source-Generation

Opaque immutable source generation. Follow the guarded next-page Link when collecting a history.

X-Total-Count

Exact row count for this identifier when pagination is requested.

X-Page-Offset

integer

X-Page-Limit

integer

Link

Next page URL, rel=next. Absent at the end.

Content-Type: application/json

Campos da resposta

[].ruc string obrigatório

Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.

[].nombre string obrigatório

Published entity name.

[].subsector string obrigatório

Published economic subsector; a dash may represent unavailable data.

[].departamento string obrigatório

Published department name.

[].nro_expediente string obrigatório

Environmental enforcement case identifier.

[].nro_rd string obrigatório

Directorate resolution identifier.

[].fecha_rd string obrigatório

Published fecha rd date. Format: YYYYMMDD.

[].tipo_sancion string obrigatório

Published sanction type, such as MULTA or AMONESTACION.

[].tipo_infraccion string obrigatório

Published formal infraction severity; not a Latinfo score.

[].medida_dictada string obrigatório

Published ordered measure.

[].detalle_infraccion string obrigatório

Published infraction narrative; truncated to 500 characters by the importer.

[].multa_expediente string obrigatório

Total fine for the environmental case, in UIT. Unit: UIT.

UIT

Esquema de resposta
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "ruc": {
        "type": "string",
        "description": "Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below."
      },
      "nombre": {
        "type": "string",
        "description": "Published entity name.",
        "x-latinfo-meaning": "text"
      },
      "subsector": {
        "type": "string",
        "description": "Published economic subsector; a dash may represent unavailable data.",
        "x-latinfo-meaning": "text"
      },
      "departamento": {
        "type": "string",
        "description": "Published department name.",
        "x-latinfo-meaning": "text"
      },
      "nro_expediente": {
        "type": "string",
        "description": "Environmental enforcement case identifier.",
        "x-latinfo-meaning": "identifier"
      },
      "nro_rd": {
        "type": "string",
        "description": "Directorate resolution identifier.",
        "x-latinfo-meaning": "identifier"
      },
      "fecha_rd": {
        "type": "string",
        "description": "Published fecha rd date. Format: YYYYMMDD.",
        "x-latinfo-meaning": "date"
      },
      "tipo_sancion": {
        "type": "string",
        "description": "Published sanction type, such as MULTA or AMONESTACION.",
        "x-latinfo-meaning": "text"
      },
      "tipo_infraccion": {
        "type": "string",
        "description": "Published formal infraction severity; not a Latinfo score.",
        "x-latinfo-meaning": "text"
      },
      "medida_dictada": {
        "type": "string",
        "description": "Published ordered measure.",
        "x-latinfo-meaning": "text"
      },
      "detalle_infraccion": {
        "type": "string",
        "description": "Published infraction narrative; truncated to 500 characters by the importer.",
        "x-latinfo-meaning": "text"
      },
      "multa_expediente": {
        "type": "string",
        "description": "Total fine for the environmental case, in UIT. Unit: UIT.",
        "x-latinfo-meaning": "amount",
        "x-latinfo-unit": "UIT"
      }
    },
    "required": [
      "ruc",
      "nombre",
      "subsector",
      "departamento",
      "nro_expediente",
      "nro_rd",
      "fecha_rd",
      "tipo_sancion",
      "tipo_infraccion",
      "medida_dictada",
      "detalle_infraccion",
      "multa_expediente"
    ],
    "additionalProperties": false
  }
}
400Invalid identifier or query. Correct the input before retrying.
Nenhum corpo de resposta documentado.
401Missing or invalid API key. Authenticate before retrying.
Nenhum corpo de resposta documentado.
404No published record, or identifier outside the legal-entity scope. Not proof that the company does not exist.
Nenhum corpo de resposta documentado.
409Source generation changed during paginated retrieval. Restart from offset 0.
Nenhum corpo de resposta documentado.
429Rate or credit limit exceeded. Inspect the response and rate-limit headers before retrying.
Nenhum corpo de resposta documentado.
503Source unavailable. Report unavailable, not an empty result.
Nenhum corpo de resposta documentado.
Exemplo JSON

Exemplo ilustrativo do esquema. Não é uma resposta ao vivo.

[
  {
    "ruc": "string",
    "nombre": "string",
    "subsector": "string",
    "departamento": "string",
    "nro_expediente": "string",
    "nro_rd": "string",
    "fecha_rd": "string",
    "tipo_sancion": "string",
    "tipo_infraccion": "string",
    "medida_dictada": "string",
    "detalle_infraccion": "string",
    "multa_expediente": "string"
  }
]

Procedência e limitações

A cobertura varia por país e fonte pública. Um campo ausente não comprova que o fato não exista. Os registros públicos podem ter atrasos ou erros; revise as evidências e a data da fonte antes de usar um resultado.