A API de CEP disponibiliza uma API RESTful que permite consultar dados detalhados sobre endereços, incluindo nome da rua, bairro, cidade, estado e região.
- 951.053 Endereços
- 5.308 Cidades
- 27 Estados
Abaixo está as tecnologias usadas no desenvolvimento desse projeto.
Código | Descrição |
---|---|
200 |
Requisição executada com sucesso (success). |
400 |
CEP informado não existe no sistema. |
404 |
CEP pesquisado não encontrado (Not found). |
GET /cep/{cep}
Resposta:
200 OK
: Retorna um objeto JSON contendo informações detalhadas sobre o endereço correspondente ao CEP fornecido.
Exemplo de resposta:
{
"cep": "01001000",
"rua": "Praça da Sé",
"bairro": "Sé",
"cidade": "São Paulo",
"uf": "SP",
"regiao": "Sudeste"
}
404 Not Found
: Se nenhum endereço for encontrado para o CEP fornecido.
Exemplo de resposta:
{
"error":"Endereço não encontrado para o CEP fornecido 99999999"}
}
GET /cidades/{uf}
Resposta:
200 OK
: Retorna um objeto JSON contendo uma lista de todas as cidades correspondente ao UF fornecido.
Exemplo de resposta:
[
{
"cidade": "Arapiraca"
},
{
"cidade": "Maceió"
},
{
"cidade": "Palmeira dos Índios"
}
]
404 Not Found
: Se nenhuma cidade for encontrado para o UF fornecido.
Exemplo de resposta:
{
"error":"Nenhuma Cidade foi encontrada com o UF fornecido: BU"}
}
GET /cidade/{cidade}/{uf?}
Resposta:
200 OK
: Retorna um objeto JSON contendo uma lista de todas as cidades.
Exemplo de resposta sem UF:
[
{
"cidade": "São Paulo",
"uf": "SP"
},
{
"cidade": "São Paulo",
"uf": "RS"
}
]
Exemplo de resposta com UF:
{
"cidade": "São Paulo",
"uf": "SP"
}
404 Not Found
: Se nenhuma cidade for encontrada.
Exemplo de resposta sem UF:
{
"error":'Nenhuma cidade encontrada com o nome "São Paulos".'}
}
Exemplo de resposta com UF:
{
"error":'Nenhuma cidade encontrada com o nome "São Paulos" e UF "RJ".'}
}
Veja abaixo todos os passos para fazer a instalação corretamente da aplicação.
- PHP 8.1+
- MariaDB 10.6 database
- Nginx Servidor Web
Antes de começar será necessário instalar o Docker no seu servidor/máquina. com o docker instalado siga os próximos passos abaixo.
-
Clone o repositório
git clone https://github.com/brunoribeiro-lab/api-cep.git
-
Copie o .env.example para .env e abra o arquivo
.env
e substitua pelas informações corretas:cp .env.example .env
Defina as configurações no arquivo .env
DB_HOST=127.0.0.1 // IP do banco de dados DB_PORT=3336 // porta do banco de dados DB_DATABASE=minha_app // nome do banco de dados DB_USERNAME=root // nome de usuário do banco de dados DB_PASSWORD=senha_do_banco // senha do banco de dados APP_URL=http://localhost:8000 // url da aplicação + porta (caso seja diferente de 80 não precisa informar a porta) APP_PORT=8080 // porta da aplicação ex: 8080 APP_PHP_PORT=9002 // porta do PHP ex: 80 APP_REDIS_PORT=6378 // porta do redis ex: 6378
-
Executando o Docker Composer
docker-compose up -d --build app
-
Instalando as bibliotecas
docker-compose run --rm composer update
-
Gerando uma chave do Laravel
docker-compose run artisan key:generate
-
Importando as tabelas
docker-compose run --rm artisan migrate
-
Importando os dados do endereço
docker-compose run artisan db:seed --class=ImportarDadosSeeder
Portas expostas detalhadas para o .env de exemplo
- nginx -
:8080
- mysql -
:3336
- php -
:9002
- redis -
:6378