Para integrar com o QualP através da versão 4, você deve utilizar o cliente disponibilizado por este pacote, informando que deseja a versão 4 da api:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')->v4();
Para adicionar os pontos de sua rota, deve ser utilizado o método locations
, passando um array
de locais:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->locations([
'Ponta Grossa - PR',
'Curitiba - PR',
[
'lat' => -23.5505,
'lng' => -46.6333
]
])
É possível utilizar nomes de cidades, ruas, CEP e um array contendo a latitude e longitude do destino.
Se você já possui a rota roteirizada e deseja apenas consultar informações de pedágio ou locais privados no QualP,
você pode nos enviar sua polilinha para que seja realizada a consulta:
Para isso, utilize o método polyline
, informando um array
com a string da polilinha e sua precisão:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->polyline([
'string' => 'sua polilinha',
'precision' => 6
]);
Para a precisão da polilinha, deve ser informado 5
ou 6
, e não é possível utilizar o método locations
e o método polyline
na mesma chamada a API.
Para informar o tipo do veículo utilizado na rota, deve ser utilizado o método vehicleType
,
que recebe uma instância da classe \Qualp\Api\Support\Vehicles::class
:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->locations([
'Ponta Grossa - PR',
'Curitiba - PR',
[
'lat' => -23.5505,
'lng' => -46.6333
]
])
->vehicleType(\Qualp\Api\Support\Vehicles::TRUCK())
Para informar a quantidade de eixos do seu veículo, você deve utilizar o método vehicleAxis
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->locations([
'Ponta Grossa - PR',
'Curitiba - PR',
[
'lat' => -23.5505,
'lng' => -46.6333
]
])
->vehicleType(\Qualp\Api\Support\Vehicles::TRUCK())
->vehicleAxis(6)
Você pode informar qualquer valor entre 2 e 10, ou a string "all"
, para obter informações referentes
a todos os eixos do veículo.
Para receber informações referentes a tabela frete, você deve aidicionar o método showFreightTable
a sua chamada,
informando a categoria, tipo de carga e número de eixos desejado. .
$apiQuery->showFreightTable();
$apiQuery->freightTableAxis("6");
O método freightTableCategory
deve receber uma instância da classe Qualp\Api\Support\FreightTable\Category::class
:
$apiQuery->freightTableCategory(\Qualp\Api\Support\FreightTable\Category::A());
O método freightTableLoad
recebe uma instância da classe Qualp\Api\Support\FreightTable\Load::class
$apiQuery->freightTableLoad(\Qualp\Api\Support\FreightTable\Load::CONTEINEIRIZADA());
Se você deseja que a API calcule a ida e volta da sua rota, adicione o método calculateReturn
a sua chamada:
$apiQuery->calculateReturn();
Para incluir a polilinha da sua rota, utilize o método showPolyline
:
$apiQuery->showPolyline();
Você também pode incluir a polilinha simplificada, através do método showSimplifiedPolyline
:
$apiQuery->showSimplifiedPolyline();
Para incluir um link para a imagem estática da rota em sua consulta, você pode utilizar o método showStaticImage
:
$apiQuery->showStaticImage();
Você pode obter um link para abrir sua rota no site do qualp através do método showLinkToQualP
:
$apiQuery->showLinkToQualp();
Para usuários com permissão específica, é possível alterar o router utilizado para montar sua rota para o google, através do método usingGoogleRouter
:
$apiQuery->usingGoogleRouter();
Para altear o formato de resposta, utilize os métodos json
e xml
:
$apiQuery->json();
$apiQuery->xml();
Se você deseja que os locais privados da rota sejam mostrados no retorno, você deve informar a api para retorná-los através do
método showPrivatePlaces
:
$apiQuery->showPrivatePlaces();
As configurações relacionadas a locais privados são feitas através dos métodos abaixo:
Para alterar a distância máxima entre a rota e o local privado, utilize o método maxDistanceFromPlacesToRoute
:
$apiQuery->maxDistanceFromPlacesToRoute(1000);
Para incluir as categorias dos seus locais privados na resposta da API, adicione o método showPrivatePlacesCategories
:
$apiQuery->showPrivatePlacesCategories();
Para incluir as categorias dos seus locais privados na resposta da API, adicione o método showPrivatePlacesAreas
:
$apiQuery->showPrivatePlacesAreas();
Para incluir os contatos dos seus locais privados na resposta da API, adicione o método showPrivatePlacesContacts
:
$apiQuery->showPrivatePlacesContacts();
Para incluir os produtos dos seus locais privados na resposta da API, adicione o método showPrivatePlacesProducts
:
$apiQuery->showPrivatePlacesProducts();
Para incluir os serviços dos seus locais privados na resposta da API, adicione o método showPrivatePlacesServices
:
$apiQuery->showPrivatePlacesServices();
Para enviar uma requisição POST
, utilize o método post
no final de sua consulta:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->locations([
'Ponta Grossa - PR',
'Curitiba - PR',
[
'lat' => -23.5505,
'lng' => -46.6333
]
])
->vehicleType(\Qualp\Api\Support\Vehicles::TRUCK())
->vehicleAxis(6)
->showFreightTable()
->freightTableLoad(\Qualp\Api\Support\FreightTable\Load::CONTEINEIRIZADA())
->freightTableAxis("all")
->freightTableCategory(\Qualp\Api\Support\FreightTable\Category::A())
->showLinkToQualP()
->showStaticImage()
->showPolyline()
->showPrivatePlaces()
->maxDistanceFromPlacesToRoute(2000)
->calculateReturn()
->post();
Para enviar uma polilinha, é obrigatório utilizar o método post.
Para enviar uma requisição GET
, utilize o método get
no final de sua requisição:
\Qualp\Api\QualpApiClient::withAccessToken('SEU ACCESS TOKEN')
->v4()
->locations([
'Ponta Grossa - PR',
'Curitiba - PR',
[
'lat' => -23.5505,
'lng' => -46.6333
]
])
->vehicleType(\Qualp\Api\Support\Vehicles::TRUCK())
->vehicleAxis(6)
->showFreightTable()
->freightTableLoad(\Qualp\Api\Support\FreightTable\Load::CONTEINEIRIZADA())
->freightTableAxis("all")
->freightTableCategory(\Qualp\Api\Support\FreightTable\Category::A())
->showLinkToQualP()
->showStaticImage()
->showPolyline()
->showPrivatePlaces()
->maxDistanceFromPlacesToRoute(2000)
->calculateReturn()
->get();