Peru · pe_sunat_ciiu_ruc
OpenAPI

Lookup sunat · ciiu by RUC

GET 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.

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: 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-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.

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.

tipo_contribuyente string obrigatório

Published taxpayer-type label; not reliable by itself for legal/natural-person classification.

ciiu_principal string obrigatório

Principal economic-activity description, Rev. 4 with Rev. 3 fallback; not a numeric activity code.

ciiu_r3_principal string obrigatório

Original Rev. 3 principal economic-activity description.

ciiu_secundaria string obrigatório

Original Rev. 3 secondary economic-activity description.

nro_trabajadores string obrigatório

Declared workforce count, not independently verified. Unit: people.

people

comercio_exterior string obrigatório

Published import/export activity designation.

sistema_contabilidad string obrigatório

Published accounting system: manual, computerized or both.

estado string obrigatório

Publisher status; interpret in the context of this dataset.

condicion string obrigatório

Published fiscal-address condition; distinct from taxpayer status.

departamento string obrigatório

Published department name.

provincia string obrigatório

Published province name.

distrito string obrigatório

Published district name.

ubigeo string obrigatório

Six-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.
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.
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",
  "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.