inpi-br
v1.2.0
Published
Cliente HTTP leve para consulta de marcas no INPI (pePI)
Maintainers
Readme
inpi-br
Aviso Legal / Disclaimer: Esta é uma biblioteca open-source não-oficial para interoperabilidade e consulta de dados públicos do Instituto Nacional da Propriedade Industrial (INPI), desenvolvida em conformidade com a Lei de Acesso à Informação (Lei nº 12.527/2011). Não possui qualquer vínculo, endosso ou associação com o INPI ou com o Governo Federal. O software é fornecido "COMO ESTÁ" (AS IS), sem garantias de funcionamento contínuo.
Cliente HTTP leve em Node.js/TypeScript para consulta de marcas no INPI pePI.
Usa axios + cheerio (sem Playwright/browser).
Instalação
npm i inpi-brUso básico
import {
createInpiHttpSession,
initInpiHttpSession,
consultarMarcaINPIViaHTTP,
} from "inpi-br";
const session = createInpiHttpSession();
await initInpiHttpSession(session);
const processos = await consultarMarcaINPIViaHTTP("fintalk", session);
for (const p of processos) {
console.log(p.numeroProcesso, p.nomeMarca, p.situacao, p.titular);
}Atalho (cria e inicia a sessão automaticamente):
import { consultarMarcaINPIViaHTTP } from "inpi-br";
const processos = await consultarMarcaINPIViaHTTP("fintalk");API
| Export | Descrição |
| --- | --- |
| createInpiHttpSession() | Cria sessão axios + cookie jar |
| initInpiHttpSession(session) | Login anônimo + formulário de marca |
| consultarMarcaINPIViaHTTP(termo, session?, options?) | Pesquisa radical de marca (array) |
| consultarMarcaINPICompleto(termo, session?, options?) | Igual, com totalFound / truncated |
| parseProcessosFromHtml(html) | Parse da tabela de resultados |
| parsePrioridadeDate(value) | dd/mm/yyyy da coluna Prioridade para YYYY-MM-DD |
| parseSearchMetaFromHtml(html) | Total pePI e página X de N |
| InpiHttpError | Erro tipado (SESSION, CAPTCHA, HTTP, PARSE, TIMEOUT) |
| ProcessoINPI | Tipo do processo (dataDeposito opcional) |
Paginação e limites
- Body da busca:
registerPerPage=100(padrão). Giraffas retorna os 49 processos na página 1 de 1. - Se o HTML ainda disser
página 1 de Ncom N > 1:GET ...?Action=nextPageMarca&page=2..Ncom os mesmos cookies. Dedup pornumeroProcesso. - Caps de segurança (evitam scrape ilimitado em termos genéricos):
maxPages=10,maxResults=500. ExporteMAX_PAGES/MAX_RESULTS/REGISTER_PER_PAGE.truncated: truequando o cap corta o total pePI.
Observações
- Cliente não oficial. Respeite os termos de uso do INPI.
- Pode falhar com CAPTCHA, bloqueio ou mudanças no HTML do pePI.
- Encoding das respostas tratado como Latin-1.
Licença
MIT
