Lookup osce · entidades by RUC
https://api.latinfo.dev/pe/osce/entidades/ruc/{ruc}
A public buyer registration with administrative geography and internal codes. Coverage: Public contracting entities in the published OSCE directory. Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below. Directory inclusion is not evidence of a specific procurement award. Returns one record. Import time is not observation time; inspect freshness headers.
Source contract
- Publisher
- OSCE / OECE, Peru
- Coverage
- Public contracting entities in the published OSCE directory.
- Record meaning
- A public buyer registration with administrative geography and internal codes.
- Identifier
- Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.
- Accepted pattern
^\d{11}$- Cardinality
one- License
- Reuse permission has not been verified. Public access is not a reuse license.
Known limitations
- Directory inclusion is not evidence of a specific procurement award.
Parameters
rucstringpathrequiredRUC in the source's normalized format. Keep identifiers as strings; preserve leading zeros.
Example: 20290898685
Request example
curl https://api.latinfo.dev/pe/osce/entidades/ruc/20290898685 \
-H "Authorization: Bearer $LATINFO_API_KEY"
Responses
200Published source records. Missing data is not a clearance or a negative finding.
Response headers
X-Latinfo-Imported-AtImport time, not the date of the government observation.
X-Source-Updated-AtPublisher update time, when known.
X-Latest-Observation-AtLatest date in returned records, when known.
X-Freshness-Statusstring
CURRENT · DELAYED · STALE · UNKNOWNX-Credits-CostActual credits charged for this request.
X-Source-GenerationOpaque immutable source generation. Follow the guarded next-page Link when collecting a history.
application/jsonResponse fields
ruc string requiredLookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.
nombre string requiredPublished entity name.
departamento string requiredPublished department name.
provincia string requiredPublished province name.
distrito string requiredPublished district name.
codigo_siaf string requiredSIAF entity code; retain leading zeros.
codigo_consucode string requiredOSCE internal entity code.
estado string requiredPublisher status; interpret in the context of this dataset.
ultima_actualizacion string requiredPublished ultima actualizacion date. Format: DD/MM/YY.
Response schema
{
"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"
},
"departamento": {
"type": "string",
"description": "Published department name.",
"x-latinfo-meaning": "text"
},
"provincia": {
"type": "string",
"description": "Published province name.",
"x-latinfo-meaning": "text"
},
"distrito": {
"type": "string",
"description": "Published district name.",
"x-latinfo-meaning": "text"
},
"codigo_siaf": {
"type": "string",
"description": "SIAF entity code; retain leading zeros.",
"x-latinfo-meaning": "code"
},
"codigo_consucode": {
"type": "string",
"description": "OSCE internal entity code.",
"x-latinfo-meaning": "identifier"
},
"estado": {
"type": "string",
"description": "Publisher status; interpret in the context of this dataset.",
"x-latinfo-meaning": "text"
},
"ultima_actualizacion": {
"type": "string",
"description": "Published ultima actualizacion date. Format: DD/MM/YY.",
"x-latinfo-meaning": "date"
}
},
"required": [
"ruc",
"nombre",
"departamento",
"provincia",
"distrito",
"codigo_siaf",
"codigo_consucode",
"estado",
"ultima_actualizacion"
],
"additionalProperties": false
}400Invalid identifier or query. Correct the input before retrying.
401Missing or invalid API key. Authenticate before retrying.
404No published record, or identifier outside the legal-entity scope. Not proof that the company does not exist.
429Rate or credit limit exceeded. Inspect the response and rate-limit headers before retrying.
503Source unavailable. Report unavailable, not an empty result.
Example JSON
Illustrative schema example. This is not a live response.
{
"ruc": "string",
"nombre": "string",
"departamento": "string",
"provincia": "string",
"distrito": "string",
"codigo_siaf": "string",
"codigo_consucode": "string",
"estado": "string",
"ultima_actualizacion": "string"
}Provenance and limitations
Coverage varies by country and public source. A missing field is not evidence that the underlying fact does not exist. Public registries may be delayed or contain source errors; inspect the returned evidence and source date before relying on a result.