API: Suframa




Documentação da API Suframa


Recuperar dados de uma empresa no Suframa

Método para recuperar as informações de uma empresa brasileira através do seu CNPJ. As informações são exatamente as mesmas retornadas pelo site do Suframa.


    URL para requisição

https://www.sintegraws.com.br/api/v1/execute-api.php?token=TOKEN_DE_ACESSO&cnpj=CNPJ_DESEJADO&plugin=SF

Parâmetros passados na API do Suframa


token

string

OBRIGATÓRIO

O seu token é gerado após o cadastro no portal: Obtenha seu token clicando aqui.


cnpj

string

OBRIGATÓRIO

CNPJ que deseja obter as informações do Suframa.


plugin

string

OBRIGATÓRIO

Site no qual deseja as informações, no caso do Suframa informar "SF".

Exemplo de resposta da API Suframa


Uma resposta típica é composta por um JSON.

Atenção: utilize o CNPJ 84496066000104 como modo SandBox (teste) para que não seja efetuada cobrança nos créditos contratados.


  •  200  OK
  • Time: 800 ms
  • Size: 818 bytes
Campos de retorno da API Suframa
Campo Tipo Descrição
code string Código de retorno utilizado para informar o status da requisição.
status string Indica a situação da requisição.
Valores possíveis:
  • OK
  • ERROR
message string Mensagem explicativa indicando o campo status.
cnpj string CNPJ no formato 00000000000000.
inscricao_suframa string Inscrição Estadual.
razao_social string Razão social.
endereco_eletronico string e-mail do CNPJ.
telefone string Telefone de contato do CNPJ.
situacao_cadastral string Situação Cadastral da Inscrição Suframa.
data_validade_cadastral string Data da situação cadastral no formato dd-MM-yyyy.
natureza_juridica objeto Natureza jurídica.
natureza_juridica.codigo string Códio da vatureza jurídica.
natureza_juridica.descricao string Descrição da natureza jurídica.
endereco objeto Endereço
endereco.uf string Sigla da Unidade da Federação.
endereco.cep string CEP no formato 00000000.
endereco.municipio string Município.
endereco.bairro string Bairro.
endereco.logradouro string Logradouro.
endereco.numero string Número.
endereco.complemento string Complemento.
atividade_principal Array<objeto> Atividade principal. Um array com um elemento.
atividade_principal.codigo string Código CNAE da atividade no formato 00000000000000000.
atividade_principal.descricao string Descrição da atividade.
atividade_principal.atividade_exercida Boolean Se exerce a atividade
Valores possíveis:
  • true
  • false
atividades_secundarias Array<objeto> Atividades secundárias.
atividades_secundarias.code string Código CNAE da atividade no formato 00000000000000000.
atividades_secundarias.text string Descrição da atividade.
atividades_secundarias.atividade_exercida Boolean Se exerce a atividade
Valores possíveis:
  • true
  • false
incentivos Array<objeto> Insentivos tributários
incentivos.tributo string Qual tributo o CNPJ tem incentivo.
Valores possíveis:
  • IPI
  • ICMS
incentivos.beneficio string Indica a situação da requisição.
Valores possíveis:
  • Isenção
  • Isenção de produtos advindos da ZFM ou seus entrepostos
  • null
incentivos.finalidade string Tipo de finalidade do incentivo.
Valores possíveis:
  • Consumo Interno, Industrialização e Utilização
  • Consumo Interno, Operações de Serviços e Aplicação em processos industriais específicos
  • Consumo, Utilização ou Industrialização a partir de matéria-prima regional
  • Industrialização e Comercialização
incentivos.base_legal string Base legal para o incentivo.
Valores possíveis:
  • Convênio ICMS n° 65 de 1988
  • Decreto 7.212 de 2010 (Art. 81)
  • Decreto 7.212 de 2010 (Art. 95)
  • Decreto 7.212 de 2010 (Art. 99 à 120)
url_comprovante BETA string URL do comprovante da consulta Suframa em formato .PDF, o arquivo ficará disponível para download por 10 minutos.
Retornos disponíveis
code status message
0 OK Pesquisa realizada com sucesso.
1 OK CNPJ não tem cadastro no site do Suframa.
2 ERROR CNPJ inválido.
3 ERROR Token inválido.
4 ERROR Usuário não contratou nenhum pacote de créditos.
5 ERROR Os créditos contratados acabaram.
6 ERROR Plugin não existe.
7 ERROR Site do suframa esta com instabilidade.
8 ERROR Ocorreu um erro interno, por favor contatar o nosso suporte.
Exemplos de códigos
var request = require("request"); var options = { method: 'GET', url: 'https://www.sintegraws.com.br/api/v1/execute-api.php', qs: { token: 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', cnpj: '84496066000104', plugin: 'SF' } }; request(options, function (error, response, body) { if (error) throw new Error(error); // Aqui recuperamos e realizamos o parse do JSON retornado var resposeSWS = JSON.parse(body); console.log(resposeSWS.status); });
var data = null; // Endpoint da API Suframa const url = new URL('https://www.sintegraws.com.br/api/v1/execute-api.php'); // Parâmetros utilizados na chamada da API const params = new URLSearchParams(); params.set('token', 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'); params.set('cnpj', '84496066000104'); params.set('plugin', 'SF'); url.search = params.toString(); var xhr = new XMLHttpRequest(); xhr.addEventListener("readystatechange", function () { if (this.readyState === this.DONE) { // Aqui recuperamos e realizamos o parse do JSON retornado var resposeSWS = JSON.parse(this.responseText); if(resposeSWS.code == "0") { // Agora preenchemos os campos com os valores retornados document.getElementById("nome_empresarial").innerHTML = resposeSWS.nome_empresarial; //preencher os outros campos // ... } else { // Aqui exibimos uma mensagem caso tenha ocorrido algum erro alert(response.message); } } }); xhr.open("GET", url); xhr.send(data);
// Parâmetros utilizados na chamada da API var token = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; var cnpj = "84496066000104"; var plugin = "SF"; $.ajax({ // Endpoint da API Suframa url: "https://www.sintegraws.com.br/api/v1/execute-api.php?token="+token+"&cnpj="+cnpj+"&ano="+ano+"&plugin="+ plugin, method:'GET', complete: function(xhr){ // Aqui recuperamos o JSON retornado response = xhr.responseJSON; if(response.status == 'OK') { // Agora preenchemos os campos com os valores retornados $('#nome_empresarial').val(response.nome_empresarial); //preencher os outros campos // ... // Aqui exibimos uma mensagem caso tenha ocorrido algum erro } else { alert(response.message); } } });
<? // Endpoint da API Suframa $service_url = 'https://www.sintegraws.com.br/api/v1/execute-api.php'; // Parâmetros utilizados na chamada da API $params = array( 'token' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', 'cnpj' => '84496066000104', 'plugin' => 'SF' ); $service_url = $service_url . '?' . http_build_query($params); $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $service_url, CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 90, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", )); // Faz a chamada da API $response = curl_exec($curl); // Aqui fazemos o parse do JSON retornado $json = json_decode($response); // Aqui exibimos uma mensagem caso tenha ocorrido algum erro if ($json->code != '0') { die("Erro " . $json->code . ": " . $json->message); } // Mostra informações do Suframa echo "Nome empresarial: " . $json->nome_empresarial; // preencher os outros campos // ... ?>
<? $request = new HttpRequest(); // Endpoint da API Suframa $request->setUrl('https://www.sintegraws.com.br/api/v1/execute-api.php'); $request->setMethod(HTTP_METH_GET); // Parâmetros utilizados na chamada da API $request->setQueryData(array( 'token' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', 'cnpj' => '84496066000104', 'plugin' => 'SF' )); // Faz a chamada da API $response = $request->send(); // Aqui fazemos o parse do JSON retornado $json = json_decode($response->getBody()); // Aqui exibimos uma mensagem caso tenha ocorrido algum erro if ($json->code != '0') { die("Erro " . $json->code . ": " . $json->message); } // Mostra informações do Suframa echo "Nome empresarial: " . $json->nome_empresarial; // preencher os outros campos // ... ?>
<? $client = new http\Client; $request = new http\Client\Request; // Endpoint da API Suframa $request->setRequestUrl('https://www.sintegraws.com.br/api/v1/execute-api.php'); $request->setRequestMethod('GET'); // Parâmetros utilizados na chamada da API $request->setQuery(new http\QueryString(array( 'token' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX', 'cnpj' => '84496066000104', 'plugin' => 'SF' ))); // Faz a chamada da API $client->enqueue($request)->send(); $response = $client->getResponse(); // Aqui fazemos o parse do JSON retornado $json = json_decode($response->getBody()); // Aqui exibimos uma mensagem caso tenha ocorrido algum erro if ($json->code != '0') { die("Erro " . $json->code . ": " . $json->message); } // Mostra informações do Suframa echo "Nome empresarial: " . $json->nome_empresarial; // preencher os outros campos // ... ?>
import requests url = "https://www.sintegraws.com.br/api/v1/execute-api.php" querystring = {"token":"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","cnpj":"84496066000104","plugin":"SF"} response = requests.request("GET", url, params=querystring) print(response.text)
import http.client token = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" cnpj = "84496066000104"; plugin = "SF"; url = "/api/v1/execute-api.php?token=" + token + "&cnpj=" + cnpj + "&ano=" + ano + "&plugin=" + plugin; conn = http.client.HTTPSConnection("www.sintegraws.com.br") conn.request("GET", url) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
HttpResponse response = Unirest.get("https://www.sintegraws.com.br/api/v1/execute-api.php") .queryString("token", "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX") .queryString("cnpj", "84496066000104") .queryString("plugin", "SF") .asString();
using System; using System.Collections.Generic; using System.Net.Http; using System.Threading.Tasks; namespace Consumo_Sintegra_WS_Exemplo { public class Program { static void Main(string[] args) { consultaCNPJSintegraWS("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "84496066000104", "SF"); } public static void consultaCNPJSintegraWS(String token, String cnpj, String plugin) { Suframa suframa = new Suframa(); using (HttpClient client = new HttpClient()) { String url = "https://www.sintegraws.com.br/api/v1/execute-api.php?token=" + token + "&cnpj=" + cnpj + "&plugin=" + plugin; var response = client.GetAsync(url).Result; using (HttpContent content = response.Content) { Task<string> result = content.ReadAsStringAsync(); string jsonRetorno = jsonRetorno = result.Result; suframa = Newtonsoft.Json.JsonConvert.DeserializeObject<Suframa>(jsonRetorno); if (suframa.code.Equals("0")) { Console.WriteLine("Razão Social: " + suframa.nome_empresarial); Console.WriteLine("Situação Suframa: " + suframa.situacao_cadastral); } else { Console.WriteLine("Erro: " + suframa.message); } } } } } public class Suframa { public string code { get; set; } public string status { get; set; } public string message { get; set; } public string nome_empresarial { get; set; } public string cnpj { get; set; } public string inscricao_suframa { get; set; } public string endereco_eletronico { get; set; } public string telefone { get; set; } public string situacao_cadastral { get; set; } public string data_validade_cadastral { get; set; } public NaturezaJuridica natureza_juridica { get; set; } public Endereco endereco { get; set; } public AtividadePrincipal atividade_principal { get; set; } public List<AtividadeSecundaria> atividade_secundaria { get; set; } public List<Incentivo> incentivos { get; set; } public string url_comprovante { get; set; } } public class NaturezaJuridica { public string codigo { get; set; } public string descricao { get; set; } } public class Endereco { public string logradouro { get; set; } public string numero { get; set; } public string complemento { get; set; } public string bairro { get; set; } public string cep { get; set; } public string municipio { get; set; } public string uf { get; set; } } public class AtividadePrincipal { public string codigo { get; set; } public string descricao { get; set; } public bool atividade_exercida { get; set; } } public class AtividadeSecundaria { public string codigo { get; set; } public string descricao { get; set; } public bool atividade_exercida { get; set; } } public class Incentivo { public string tributo { get; set; } public string beneficio { get; set; } public string finalidade { get; set; } public string base_legal { get; set; } } }

O SintegraWS provê uma API para recuperação de dados de empresas brasileiras através de seu CNPJ. Existem quatro tipos de consulta, veja as documentações abaixo: