API de CEP Correios

Web service

framework

Off Topic

24/11/2016

Alguém sabe onde consigo um exemplo pra consumir a base de dados do correio?
Henrique

Henrique

Curtidas 0

Melhor post

Jones Granatyr

Jones Granatyr

24/11/2016

Opa! Dê uma olhada nesse site: https://viacep.com.br/
GOSTEI 2

Mais Respostas

Sandro Lemes

Sandro Lemes

24/11/2016

Olá! Simplifique sua vida!

Hoje já existe o WebService Nativo dos Correios, disponibilizado gratuitamente !

Vide o tópico:
https://www.devmedia.com.br/forum/consulta-cep-entre-outros-servicos-direto-no-webservice-dos-correios-a-partir-do-delphi-7-acima/591246

Att.
Sandro Lemes
GOSTEI 0
Réulison Silva

Réulison Silva

24/11/2016

REST API de CEP

Utilize a REST API da WebmaniaBR® para consultar o CEP nos Correios e o IBGE grátis. Perfeito para preenchimento automático de formulários e validar endereços através do CEP.

Guia Rápido
Todas as solicitações na API devem ser realizadas em ambiente criptografado HTTPS através da URL https://webmaniabr.com/api/. O prefixo /1/ indica que atualmente nós estamos utilizando a versão 1.0 da API.

URL HTTP Verb Função
/1/cep/ GET Consulta de CEP

Todas as respostas são no formato objeto JSON.

Javascript
Utilize o jQuery da WebmaniaBR® para consultas Ajax nos Correios, com preenchimento automático do formulário.

<script src="jquery.js"></script>
<script src="jquery.correios.min.js"></script>

<script>
jQuery(function($){
    correios.init( 'app_key', 'app_secret' );
    $('cep').correios( 'endereco', 'bairro', 'cidade', 'uf' );
});
</script>


Autenticação
Envie na URL de solicitação os parâmetros app_key e app_secret da sua aplicação. Não possui ainda uma aplicação? Preencha o seu e-mail no formulário abaixo para receber as suas credenciais grátis.

Consultar CEP
Para realizar a consulta do CEP envie a requisição no método GET para a URL /1/cep/0000-000/, com as credenciais da sua aplicação. Segue abaixo exemplo:

curl -X GET \\
https://webmaniabr.com/api/1/cep/80540-180/?app_key=NHRvLagxDUWw70Guhd4fMSKccftSjvtL&app_secret=qVB3AmE2N5UKSL2ok01YP6gVUEqERYQLiPGtye65C6OQZAd0


A resposta do corpo da mensagem será no formato objeto JSON, contendo os campos endereco, bairro, cidade, uf, cep e ibge:

{
  "endereco": "Avenida Anita Garibaldi",
  "bairro": "Ahú",
  "cidade": "Curitiba",
  "uf": "PR",
  "cep": "80540-180",
  "ibge": "4106902"
}


Uma requisição bem sucedida é indicada através do status HTTP, o status 2xx indica sucesso. Quando uma requisição ocorre falha o corpo da resposta [body] continua no formato JSON, mas sempre contém o campo error. Caso o CEP seja inválido ou não seja localizado o endereço, será retornado a seguinte mensagem:

{
  "error": "CEP não encontrado"
}


Infraestrutura
O servidores da WebmaniaBR estão localizados na Amazon AWS, líder global em cloud computing, na região us-east-1 (Leste dos EUA) com ponto de presença em sa-east-1 (São Paulo). Manter a sua estrutura perto de algumas das duas localidades, garante um menor tempo de resposta nas requisições na API.

Utilizamos uma infraestrutura na Amazon AWS anycast de alta disponibilidade, o que significa que ao se comunicar com API da WebmaniaBR a requisição será redirecionada para o servidor mais próximo da sua localidade. As comunicações são sempre realizadas por nossos IP's estáticos:

13.248.145.90
76.223.17.240

Todos os arquivos são armazenados na Amazon S3 que garante 99,999999999% de durabilidade dos arquivos e criptografia de ponta a ponta.

Limite de requisições

A WebmaniaBR® aplica um limite de até 2 solicitações por segundo ou 3.000 requisições por mês, calculado com a soma das solicitações do lado do cliente e do lado do servidor. Se o aplicativo exceder o limite inicial, apresentará falhas.

Localização do servidor: O firewall bloqueia por padrão o IP de servidores em regiões com alto índice de ataques, como na Europa e na Ásia oriental. Caso a sua comunicação via GET no endpoint https://webmaniabr.com/api/ retorne 403 Erro Forbidden entre em contato para liberarmos o IP do seu servidor.

Credenciais de acesso: Os endpoints exigem as credenciais de acesso válida e correta na URI da requisição, o envio incorreto é atribuído como uso indevido da API.
GOSTEI 0
Francisco Ribeiro

Francisco Ribeiro

24/11/2016

Bom Dia...

Quero acessar, diretamente, os web service do IBGE e/ou Correios, pois quero ter certeza da origem e qualidade das informações. Alguém pode me dizer como faço isso??
GOSTEI 0
Thomas Vieira

Thomas Vieira

24/11/2016

Bom Dia...

Quero acessar, diretamente, os web service do IBGE e/ou Correios, pois quero ter certeza da origem e qualidade das informações. Alguém pode me dizer como faço isso??


Bom dia,

Segue abaixo link com todos os endpoints gratuitos do IBGE:

https://servicodados.ibge.gov.br/api/docs/localidades?versao=1#api-_


O retorno dos dados é sempre em JSON

Para retorno de dados referente às unidades da federação(estados) o endpoint é:

https://servicodados.ibge.gov.br/api/v1/localidades/estados


Você vai receber uma lista com todas as UFs. Você pode pegar o ID e consultar todos os municípios pelo endpoint:

https://servicodados.ibge.gov.br/api/v1/localidades/estados//municipios
, trocando "" pelo id da UF que você quer listar todos os municípios.

No caso dos Correios é um pouco mais complicado. A consulta pública deve ser realizada utilizando Webservices, mas mesmo assim tem solução. :o)

Segue abaixo código simplificado em node, utilizando o soap:
import { Router } from 'express';
import * as soap from 'soap';

const addressesRouter = Router();

addressesRouter.get('/:cep', async (request, response) => {
const { params } = request;
const cep = parseInt(params.cep, 10);

await soap.createClient(
'https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl',
(err, client) => {
client.consultaCEP({ cep }, (err, res) => {
return response.json(res);
});
},
);
});

export default addressesRouter;
[/code]

Espero ter ajudado!

Abraço,

Thomas Eusebio Vieira
GOSTEI 0
Fernando Bueno

Fernando Bueno

24/11/2016

https://brasilapi.com.br/

CEP
Busca por CEP com múltiplos providers de fallback.

GET https://brasilapi.com.br/api/cep/v1/[cep]

Consulta com sucesso
// GET https://brasilapi.com.br/api/cep/v1/05010000

{
  "cep": "05010000",
  "state": "SP",
  "city": "São Paulo",
  "neighborhood": "Perdizes",
  "street": "Rua Caiubi"
}
Consulta com erro
// GET https://brasilapi.com.br/api/cep/v1/00000000

{
  "name": "CepPromiseError",
  "message": "Todos os serviços de CEP retornaram erro.",
  "type": "service_error",
  "errors": [
    {
      "name": "ServiceError",
      "message": "CEP INVÁLIDO",
      "service": "correios"
    },
    {
      "name": "ServiceError",
      "message": "CEP não encontrado na base do ViaCEP.",
      "service": "viacep"
    }
  ]
}
GOSTEI 0
POSTAR