Luiz Fernando Posted April 22, 2022 Report Share Posted April 22, 2022 Para quem interessar, é gratuito com uma limitação de até 3 consultas por minuto https://www.cnpj.ws/docs/api-publica/consultando-cnpj Obs: esse diferente dos demais free como a consulta direto da receita federal, é que aqui tem a inscrição estudual aferra 1 Quote Link to comment Share on other sites More sharing options...
lucimauromelo Posted April 24, 2022 Report Share Posted April 24, 2022 Voce já consegui fazer a consulta ? Quote Link to comment Share on other sites More sharing options...
Luiz Fernando Posted April 25, 2022 Author Report Share Posted April 25, 2022 12 horas atrás, lucimauromelo disse: Voce já consegui fazer a consulta ? consegui sim, funciona perfeitamente. Obs: só não irei postar o código pois fiz usando a windev, aqui no forum tem varios exemplos de dar tratamento em json, coisa bem simples. Quote Link to comment Share on other sites More sharing options...
rochinha Posted May 15, 2022 Report Share Posted May 15, 2022 Amiguinhos, Basta usar uma função hb_hash() ou hb_json() para decodificar o resultado: Classe bem didática e passível de fatoração por vocês. Tõ meio preguiçoso. Citar /* * CNPJ WS Class by Rochinha * * API https://www.cnpj.ws/docs/api-publica/consultando-cnpj * Fonte de Incentivo http://fivewin.com.br/index.php?/topic/31401-api-consulta-cnpj-free/ * */ #include "fivewin.ch" #include "hbclass.ch" PROCEDURE Main LOCAL cRetorno LOCAL CNPJws := wsCNPJClass():New() PUBLIC cCNPJws := CNPJws:CNPJUrl PUBLIC cCNPJUsuario := CNPJws:CNPJUsuario PUBLIC cCNPJSenha := CNPJws:CNPJSenha PUBLIC cCNPJApiKey := CNPJws:CNPJApiKey cConsultarCNPJ := CNPJws:ConsultarCNPJ( "18.066.611/0001-06" ) ? "Consultar CNPJ",, cConsultarCNPJ RETURN CREATE CLASS wsCNPJClass CLASSVAR cToken INIT "" CLASSVAR cAppKey INIT "" CLASSVAR cMSG INIT "" CLASSVAR CNPJUrl INIT "publica.cnpj.ws" CLASSVAR CNPJEndPoint INIT "cnpj" CLASSVAR CNPJUsuario INIT "irochinha@hotmail.com.br" CLASSVAR CNPJSenha INIT "Iasmin@2011" CLASSVAR CNPJApiKey INIT "" METHOD ConsultarCNPJ() METHOD WS( cToken, cPostGet, cUrl, cMsg ) ENDCLASS METHOD ConsultarCNPJ( cParam ) CLASS wsCNPJClass LOCAL cUrl := "https://" + self:CNPJUrl + "/" + self:CNPJEndPoint + "/" + charRem( "./-", cParam ) RETURN ::WS( self:CNPJApiKey, "GET", cUrl, "" ) METHOD WS( cToken, cPostGet, cUrl, cMsg ) CLASS wsCNPJClass LOCAL oServer, cRetorno default cPostGet := "POST" default cMsg := "" oServer := XMLHttpRequest() oServer:Open( cPostGet, cUrl, .F. ) IF cToken == Nil ELSE oServer:SetRequestHeader( "Content-Type", "application/json; charset=UTF-8" ) oServer:SetRequestHeader( "appKey", self:CNPJApiKey ) oServer:SetRequestHeader( "Authorization", "Bearer " + self:CNPJApiKey ) ENDIF IF cPostGet = "POST" oServer:Send( cMsg ) ELSE oServer:Send() ENDIF cRetorno := oServer:responseText RETURN cRetorno /* * Wrappler VB Functions by Rochinha */ FUNCTION win_OleCreateObject( _ole_ ) RETURN TOleAuto():New( _ole_ ) FUNCTION XMLHttpRequest() return oXMLHttpRequest := TOleAuto():New( "Microsoft.XMLHTTP" ) FUNCTION DOMDocument() return oDOMDocument := TOLEAUTO():New( "Microsoft.XMLDOM" ) FUNCTION Msxml2XMLHTTP() return oMsxml2XMLHTTP := TOLEAUTO():New( "Msxml2.XMLHTTP" ) FUNCTION MSXML2DOMDocument() return oMSXML2DOMDocument := TOLEAUTO():New( "MSXML2.DOMDocument" ) FUNCTION MicrosoftXMLDOM() return oMicrosoftXMLDOM := TOLEAUTO():New( "Microsoft.XMLDOM" ) FUNCTION MicrosoftXMLHTTP() return oMicrosoftXMLHTTP := TOleAuto():New( "Microsoft.XMLHTTP" ) FUNCTION MSXML2ServerXMLHTTP() return oMSXML2ServerXMLHTTP := TOleAuto():New( "MSXML2.ServerXMLHTTP" ) FUNCTION ServerXMLHTTP() return oServerXMLHTTP := TOleAuto():New( "MSXML2.ServerXMLHTTP" ) FUNCTION CAPICOMStore() return oCAPICOMStore := TOleAuto():New( "CAPICOM.Store" ) FUNCTION CAPICOMSignedData() return oCAPICOMSignedData := TOleAuto():New( "CAPICOM.SignedData.1" ) FUNCTION CAPICOMUtilities() return oCAPICOMUtilities := TOleAuto():New( "CAPICOM.Utilities" ) FUNCTION CAPICOMHashedData() return oCAPICOMHashedData := TOleAuto():New( "CAPICOM.HashedData.1" ) FUNCTION CAPICOMSigner() return oCAPICOMSigner := TOleAuto():New( "CAPICOM.Signer.2" ) // versao 2 FUNCTION CAPICOMAttribute() return oCAPICOMAttribute := TOleAuto():New( "CAPICOM.Attribute" ) FUNCTION MSXML2MXDigitalSignature() return MSXML2MXDigitalSignature := TOleAuto():New( "MSXML2.MXDigitalSignature.5.0" ) Quote Link to comment Share on other sites More sharing options...
rochinha Posted May 15, 2022 Report Share Posted May 15, 2022 Amiguinhos, Versão 2: Citar /* * CNPJ WS Class by Rochinha * * API https://www.cnpj.ws/docs/api-publica/consultando-cnpj * Fonte de Incentivo http://fivewin.com.br/index.php?/topic/31401-api-consulta-cnpj-free/ * */ #include "fivewin.ch" #include "hbclass.ch" PROCEDURE Main LOCAL cRetorno LOCAL CNPJws := wsCNPJClass():New() PUBLIC cCNPJws := CNPJws:CNPJUrl PUBLIC cCNPJUsuario := CNPJws:CNPJUsuario PUBLIC cCNPJSenha := CNPJws:CNPJSenha PUBLIC cCNPJApiKey := CNPJws:CNPJApiKey cConsultarCNPJ := CNPJws:ConsultarCNPJ( "18.066.611/0001-06" ) ? "Consultar CNPJ",, cConsultarCNPJ cConsultarCNPJ := CNPJws:ConsultarSUFRAMA( "61940292006682", "210140267" ) ? "Consultar SUFRAMA",, cConsultarCNPJ RETURN CREATE CLASS wsCNPJClass CLASSVAR cToken INIT "" CLASSVAR cAppKey INIT "" CLASSVAR cMSG INIT "" CLASSVAR CNPJUrl INIT "publica.cnpj.ws" CLASSVAR CNPJEndPoint INIT { "cnpj", "suframa" } CLASSVAR CNPJUsuario INIT "irochinha@hotmail.com.br" CLASSVAR CNPJSenha INIT "Iasmin@2011" CLASSVAR CNPJApiKey INIT "" METHOD ConsultarCNPJ() METHOD ConsultarSUFRAMA() METHOD WS( cToken, cPostGet, cUrl, cMsg ) ENDCLASS METHOD ConsultarCNPJ( cCNPJ ) CLASS wsCNPJClass LOCAL cUrl := "https://" + self:CNPJUrl + "/" + self:CNPJEndPoint[1] + "/" + charRem( "./-", cCNPJ ) RETURN ::WS( self:CNPJApiKey, "GET", cUrl, "" ) METHOD ConsultarSUFRAMA( cCNPJ, cInscricao ) CLASS wsCNPJClass LOCAL cUrl := "https://" + self:CNPJUrl + "/" + self:CNPJEndPoint[2] cMSG := [{] cMSG := cMSG + ["cnpj":"] + charRem( "./-", cCNPJ ) + [",] cMSG := cMSG + ["inscricao":"] + charRem( "./-", cInscricao ) + ["] cMSG := cMSG + [}] RETURN ::WS( self:CNPJApiKey, "POST", cUrl, cMSG ) METHOD WS( cToken, cPostGet, cUrl, cMsg ) CLASS wsCNPJClass LOCAL oServer, cRetorno default cPostGet := "POST" default cMsg := "" oServer := XMLHttpRequest() oServer:Open( cPostGet, cUrl, .F. ) IF cToken == Nil ELSE oServer:SetRequestHeader( "Content-Type", "application/json; charset=UTF-8" ) oServer:SetRequestHeader( "appKey", self:CNPJApiKey ) oServer:SetRequestHeader( "Authorization", "Bearer " + self:CNPJApiKey ) ENDIF IF cPostGet = "POST" oServer:Send( cMsg ) ELSE oServer:Send() ENDIF cRetorno := oServer:responseText RETURN cRetorno Luiz Fernando 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.