- Composer
- PHP >= 8.2
- Serviços oferecidos pelos Correios;
- Cálculo de Frete de um produto;
- Rastreio de uma encomenda;
- Retorna os significados das siglas contidas no código de rastreio.
Segue abaixo as instruções de utilização:
git clone https://github.com/luannsr12/api-correios/
cd api-correios
composer install
Após o download e instalação, edite o arquivo "config.php" e adicione o Access Token da sua aplicação. Esse Access Token deve ser passado no header das requisições da API.
<?php
// Usado para comsumir a API
define("ACCESS_TOKEN", "SEU_ACCESS_TOKEN");
Endpoint: /correios/tracking/
Method: POST
Curl:
curl --location --request GET '{{base_url}}/correios/tracking' \
--header 'Access-token: SEU_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"objects": ["QQ588651634BR"],
"provider": "Muambator"
}'
Body:
provider é opcional. Por padrão o site de busca é o Melhor Rastreio Consulte na documentação da SDK para ver os providers: Sdk Correios
{
"objects": ["QQ588651634BR"],
"provider": "Muambator"
}
Response:
{
"success": true,
"result": [
{
"code": "QQ588651634BR",
"status": "MOVEMENT",
"service_provider": "api.melhorrastreio.com.br",
"data": [
{
"date": "03-09-2024 07:27:10",
"to": "Unidade de Distribuição - MARECHAL CANDIDO RONDON/PR",
"from": "Unidade de Tratamento - CURITIBA/PR",
"location": "Unidade de Tratamento - CURITIBA/PR",
"originalTitle": "Objeto em transferência - por favor aguarde",
"details": "Objeto em transferência - por favor aguarde"
},
{
"date": "03-06-2024 12:25:05",
"to": "Unidade de Tratamento - CASCAVEL/PR",
"from": "Unidade de Tratamento - SOROCABA/SP",
"location": "Unidade de Tratamento - SOROCABA/SP",
"originalTitle": "Objeto em transferência - por favor aguarde",
"details": "Objeto em transferência - por favor aguarde"
}
]
}
]
}
Endpoint: /correios/services/
Method: GET
Curl:
curl --location '{{base_url}}/correios/services' \
--header 'Access-token: SEU_ACCESS_TOKEN'
Response:
{
"status": "sucess",
"result": {
"PAC": "04510",
"SEDEX": "04014",
"SEDEX 12": "04782",
"SEDEX 10": "04790",
"SEDEX Hoje": "04804"
}
}
Endpoint: /correios/calculate/
Method: GET
-
Para o tipo de encomenda, segue as definições abaixo:
- Caixa/Pacote (1);
- Rolo/Prisma (2);
- Envelope (3);
-
Observações importantes:
- Caso seja Envelope, informe 0 na altura;
- Caso seja Envelope, o peso não pode ultrapassar 1kg;
- Caso seja Rolo/Prisma, informe o diâmetro da embalagem;
- Caso seja Rolo/Prisma, informe 0 na altura e largura;
- Caso seja Caixa/Pacote, informe 0 no diâmetro;
- Para os serviços de "Mão Própria" e/ou "Aviso de Recebimento" informe "S" - sim ou "N" - não;
- O valor Declarado é opcional, sendo que caso não deseje declarar, informe 0;
Curl:
curl --location '{{base_url}}/correios/calculate' \
--header 'Access-token: SEU_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"servico": "04510",
"origem": "85930-000",
"destinatario": "85960-000",
"tipo": 1,
"comprimento": 20,
"altura": 20,
"largura": 20,
"diametro": 0,
"peso": 0.500,
"maoPropria": "s",
"valorDeclarado": 150,
"avisoRecebimento": "s"
}'
Body:
{
"servico": "04510",
"origem": "12460-000",
"destinatario": "37530-000",
"tipo": 1,
"comprimento": 20,
"altura": 20,
"largura": 20,
"diametro": 0,
"peso": 0.500,
"maoPropria": "s",
"valorDeclarado": 150,
"avisoRecebimento": "s"
}
Response:
{
"status": "sucess",
"result": {
"cServico": {
"Codigo": "04510",
"Valor": "45,83",
"PrazoEntrega": "11",
"ValorSemAdicionais": "29,40",
"ValorMaoPropria": "7,50",
"ValorAvisoRecebimento": "6,35",
"ValorValorDeclarado": "2,58",
"EntregaDomiciliar": "S",
"EntregaSabado": "N",
"obsFim": [],
"Erro": "0",
"MsgErro": []
}
}
}
Endpoint: /correios/flag/
Method: GET
Curl:
curl --location --request GET '{{base_url}}/correios/flag' \
--header 'Access-token: SEU_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"Id": "AR"
}'
Body:
{
"Id": "AR"
}
Response:
{
"success": true,
"result": {
"Id": "AR",
"Name": "AVISO DE RECEBIMENTO"
}
}
Endpoint: /correios/flags/
Method: GET
Curl:
curl --location '{{base_url}}/correios/flags' \
--header 'Access-token: SEU_ACCESS_TOKEN'
Response:
{
"success": true,
"result": {
"AL": {
"name": "AGENTES DE LEITURA"
},
"AR": {
"name": "AVISO DE RECEBIMENTO"
},
"AS": {
"name": "ENCOMENDA PAC – ACAO SOCIAL"
},
"BE": {
"name": "REMESSA ECONÔMICA S/ AR DIGITAL"
},
"BF": {
"name": "REMESSA EXPRESSA S/ AR DIGITAL"
}
}
}
@luannsr12 |
@germano-rs |
@pauloalmeidasilva |
---|