Lookup sunat · ciiu by RUC
https://api.latinfo.dev/pe/sunat/ciiu/ruc/{ruc}
A taxpayer activity profile with declared workforce and principal geography. Coverage: Legal-entity RUCs in the published economic-activity padron. Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below. Principal activity is text with Rev. 4/Rev. 3 fallback; a classification join is required before treating it as a code. Returns one record. Import time is not observation time; inspect freshness headers.
Contrato da fonte
- Publicador
- SUNAT, Peru
- Cobertura
- Legal-entity RUCs in the published economic-activity padron.
- Significado do registro
- A taxpayer activity profile with declared workforce and principal geography.
- Identificador
- Lookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.
- Padrão aceito
^20\d{9}$- Quantidade de registros
one- 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
- Principal activity is text with Rev. 4/Rev. 3 fallback; a classification join is required before treating it as a code.
Parâmetros
rucstringpathobrigatórioRUC in the source's normalized format. Keep identifiers as strings; preserve leading zeros.
Example: 20100017491
Exemplo de requisição
curl https://api.latinfo.dev/pe/sunat/ciiu/ruc/20100017491 \
-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-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/jsonCampos da resposta
ruc string obrigatórioLookup by ruc as a string, preserving leading zeros. Accepted syntax and normalization are defined by the contract below.
tipo_contribuyente string obrigatórioPublished taxpayer-type label; not reliable by itself for legal/natural-person classification.
ciiu_principal string obrigatórioPrincipal economic-activity description, Rev. 4 with Rev. 3 fallback; not a numeric activity code.
ciiu_r3_principal string obrigatórioOriginal Rev. 3 principal economic-activity description.
ciiu_secundaria string obrigatórioOriginal Rev. 3 secondary economic-activity description.
nro_trabajadores string obrigatórioDeclared workforce count, not independently verified. Unit: people.
people
comercio_exterior string obrigatórioPublished import/export activity designation.
sistema_contabilidad string obrigatórioPublished accounting system: manual, computerized or both.
estado string obrigatórioPublisher status; interpret in the context of this dataset.
condicion string obrigatórioPublished fiscal-address condition; distinct from taxpayer status.
departamento string obrigatórioPublished department name.
provincia string obrigatórioPublished province name.
distrito string obrigatórioPublished district name.
ubigeo string obrigatórioSix-digit INEI district code; retain leading zeros.
Esquema de resposta
{
"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."
},
"tipo_contribuyente": {
"type": "string",
"description": "Published taxpayer-type label; not reliable by itself for legal/natural-person classification.",
"x-latinfo-meaning": "text"
},
"ciiu_principal": {
"type": "string",
"description": "Principal economic-activity description, Rev. 4 with Rev. 3 fallback; not a numeric activity code.",
"x-latinfo-meaning": "text"
},
"ciiu_r3_principal": {
"type": "string",
"description": "Original Rev. 3 principal economic-activity description.",
"x-latinfo-meaning": "text"
},
"ciiu_secundaria": {
"type": "string",
"description": "Original Rev. 3 secondary economic-activity description.",
"x-latinfo-meaning": "text"
},
"nro_trabajadores": {
"type": "string",
"description": "Declared workforce count, not independently verified. Unit: people.",
"x-latinfo-meaning": "quantity",
"x-latinfo-unit": "people"
},
"comercio_exterior": {
"type": "string",
"description": "Published import/export activity designation.",
"x-latinfo-meaning": "text"
},
"sistema_contabilidad": {
"type": "string",
"description": "Published accounting system: manual, computerized or both.",
"x-latinfo-meaning": "text"
},
"estado": {
"type": "string",
"description": "Publisher status; interpret in the context of this dataset.",
"x-latinfo-meaning": "text"
},
"condicion": {
"type": "string",
"description": "Published fiscal-address condition; distinct from taxpayer status.",
"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"
},
"ubigeo": {
"type": "string",
"description": "Six-digit INEI district code; retain leading zeros.",
"x-latinfo-meaning": "code"
}
},
"required": [
"ruc",
"tipo_contribuyente",
"ciiu_principal",
"ciiu_r3_principal",
"ciiu_secundaria",
"nro_trabajadores",
"comercio_exterior",
"sistema_contabilidad",
"estado",
"condicion",
"departamento",
"provincia",
"distrito",
"ubigeo"
],
"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.
Exemplo JSON
Exemplo ilustrativo do esquema. Não é uma resposta ao vivo.
{
"ruc": "string",
"tipo_contribuyente": "string",
"ciiu_principal": "string",
"ciiu_r3_principal": "string",
"ciiu_secundaria": "string",
"nro_trabajadores": "string",
"comercio_exterior": "string",
"sistema_contabilidad": "string",
"estado": "string",
"condicion": "string",
"departamento": "string",
"provincia": "string",
"distrito": "string",
"ubigeo": "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.