Esta documentação tem como objetivo apresentar com acessar a API do Gesprov versão 1.0 utilizando o PHP. A versão recomendada do PHP é a 7.2. Também é possível baixar o pacote com todos os exemplos Clicando aqui
Para iniciar a utilização dessa API, é necessário obter três informações com o Administrador do sistema:
*Obs: Deverá ser criado um usuário específico dentro do sistema apenas para que possa ser utilizando com a API. Também deverá ser verificado o nível de permissão necessário para este usuário, além das filiais que ele terá permissão de acesso.
Antes de efetuar a chamada de qualquer um dos endpoits, é necessário efetuar a autenticação dentro da nossa API. Utilizando a Classe ApiClient, Disponível no nosso pacote de exemplos, é possível executar essa etapa da seguinte forma:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
Para obter os dados de um cliente específico, é necessário informar três parâmetros:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$cpf_cnpj = "14265417752"; //CPF para testes
$parametros = array(
"cpf_cnpj" => $cpf_cnpj,
"enviar_contratos" => "Ativos",
"enviar_servicos" => "Ativos/Bloqueados",
);
$dados_cliente = $apiClientObj->consultarClientePorCpfCnpj($parametros);
var_dump($dados_cliente);
object{
["cliente"]=>
object {
["id"] => int(1)
["tipo"] => string(3) "cpf"
["nome_razao_social"] => string(26) "NOME COMPLETO DO CLIENTE"
["apelido"] => string(9) "APELIDO DO CLIENTE"
["cpf_cnpj"] => string(11) "14265417752" //CPF para testes
["rg_ie"] => string(13) "000000000000"
["nome_fantasia"] => string(0) ""
["id_endereco"] => int(220)
["numero"] => string(1) "0"
["complemento"] => string(0) ""
["referencia"] => string(0) ""
["telefone1"] => string(11) "00000000000"
["telefone2"] => string(11) "00000000000"
["telefone3"] => string(11) "00000000000"
["telefone4"] => string(11) "00000000000"
["email"] => string(21) "email@cliente.com.br"
["login_central"] => string(11) "login_central_cliente"
["senha_central"] => string(4) "senha_central_cliente"
["dt_nascimento"] => string(10) "1990-01-01"
["dt_cadastro"] => datetime "2021-01-01 12:00:00"
["pai"] => string(0) ""
["mae"] => string(0) ""
["observacoes"] => string(0) ""
["status"] => "Ativo"
["rua_cliente"] => string(26) "RUA DO CLIENTE"
["bairro_cliente"] => string(10) "CENTRO"
["cep_cliente"] => string(8) "61700000"
["cidade_cliente"] => string(13) "Aquiraz"
["estado_cliente"] => string(9) "Ceará"
["uf_cliente"] => string(2) "CE"
["contratos"] => array{
[0] =>
object{
["id"] => int(1)
["dt_cadastro"] => datetime "2021-01-01 12:00:00"
["status"] => string(5) "Ativo"
["filial"] => string(33) "NOME DO PROVEDOR"
["servicos"] => array{
[0] => object{
["id"] => int(1)
["dt_contratacao"] => datetime "2021-01-01 12:00:00"
["fidelidade"] => string(3) "Sim"
["boleto_email"] => string(4) "Não"
["gerar_nf"] => string(4) "Não"
["id_endereco"] => int(316)
["numero"] => int(488)
["complemento"] => string(0) ""
["referencia"] => string(0) ""
["valor_servico"] => float "119.90"
["acrescimo_servico"] => float "0.00"
["desconto_servico"] => float "0.00"
["vencimento"] => int(5)
["data_fim_vigencia"] => datetime "2022-01-01 12:00:00"
["valor_instalacao"]=> string(4) "0.00"
["desconto_instalacao"] => string(4) "0.00"
["aceite_eletronico"] => string(3) "Sim"
["situacao"]=> string(5) "Ativo"
["agregador_servicos"] => string(4) "Não"
["cortesia"]=> string(4) "Não"
["plano"] => string(13) "PLANO 200M"
["conta_bancaria_servico"] => string(15) "BANCO DO BRASIL"
}
}
}
}
}
}
[
"erro" => "parametros_incorretos",
"descricao_erro" => "O campo enviar_contratos deve ser preenchido com uma das opções:
'Todos', 'Ativos', 'Cancelados'"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Para listar os serviços, é necessário solicitar os contratos"
];
[
"erro" => "cpf_cnpj_sem_contrato",
"descricao_erro" => "Não existe contratos " . ($dados['enviar_contratos'] == 'Ativos' ? 'ativos' : 'cancelados') . " para este CPF / CNPJ"
];
[
"erro" => "cpf_cnpj_nao_localizado",
"descricao_erro" => "CPF / CNPJ não localizado no sistema"
];
Para obter as faturas de um cliente específico, é necessário informar três parâmetros:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$cpf_cnpj = "14265417752";
$parametros = array(
"cpf_cnpj" => $cpf_cnpj,
"situacao_titulo" => "Pagos",
"numero_servico" => "1",
);
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$dados_faturas = $apiClientObj->consultarTitulosPorCliente($parametros);
var_dump($dados_faturas);
object{
["titulos"] =>
object{
["id"] => int(5335)
["id_servico"] => int(1)
["nrdoc"] => int(5335)
["nosso_numero"] => int(3644)
["descricao"]=>
string(57) "Referente ao periodo de 14/07/2021 a 09/08/2021 (27 dias)"
["tipo"] => string(11) "MENSALIDADE"
["data_processamento"] => datetime "2021-07-14 16:00:38"
["vencimento"] => datetime "2021-08-10 00:00:00"
["valor"] => float "75.40"
["desconto"] => float "0.00"
["motivo_desconto"] => string(0) ""
["tarifa"] => float "0.00"
["impresso"] => int(0)
["situacao"] => string(7) "Vencido"
["usuario_criacao_conta"] => string(7) "Usuário"
["conta_bancaria"] => string(15) "BANCO DO BRASIL"
["linha_digitavel"] => string(51) "0019000000 00000000000 00000000000 9 87080000007540"
}
}
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Informe o CPF / CNPJ para efetuar a busca dos titulos do cliente"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "O parametro situacao_titulo deve ter um dos seguintes valores: 'Em abertos', 'Vencidos', 'A vencer', 'Pagos'"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Para listar os titulos, é necessário informar o parametro situacao_titulo"
];
Através deste endpoint, é possível solicitar um desbloqueio em confiança. É possível solicitar um desbloqueio em confiança para serviços que estão com a situação 'Bloqueado'. Neste endpoint, é necessário informar um parâmetro de entrada:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$parametros = array(
"numero_servico" => 567
);
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$dados_faturas = $apiClientObj->solicitarDesbloqueioEmConfianca($parametros);
var_dump($dados_faturas);
object {
["status"]=> string(7) "sucesso"
["mensagem"]=> string(46) "Desbloqueio em confiança efetuado com sucesso"
}
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Número do serviço não informado"
];
[
"status" => "falha",
"mensagem" => "Serviço não localizado"
];
[
"status" => "falha",
"mensagem" => "Não foi possível efetuar o desbloqueio em confiança, pois já foi efetuado um desbloqueio dentro do período de 30 dias"
];
[
"status" => "falha",
"mensagem" => "Não é possível efetuar o desbloqueio em confiança, pois este serviço já está ativo"
];
Através deste endpoint, é possível verificar as formas de envio habilitadas dentro do sistema. é possível ter até quatro formas de envio habilitada:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$categorias_chamados = $apiClientObj->consultarFormasEnvioHabilitas();
var_dump($categorias_chamados);
object{
["formas_envio"] => array(3) {
[0]=> string(5) "email"
[1]=> string(3) "sms"
[2]=> string(4) "push"
[3]=> string(8) "whatsapp"
}
}
Através deste endpoint, é possível enviar as faturas diretamente ao cliente. Para efetuar o envio, é necessário informar dois parametros:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$parametros = array(
"id_fatura" => 9991,
"formas_envio" => ['email']
);
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$dados_envio = $apiClientObj->enviarFatura($parametros);
var_dump($dados_envio);
object{
["status"] => string(7) "sucesso"
["descricao"] => string(26) "Fatura enviada com sucesso"
}
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Número da fatura não informado"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Você deve informar as formas de envio da fatura para o cliente"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Forma de envio não disponível. Por favor, verifique as formas de envio disponível e teste novamente"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Nenhuma fatura localizada para o número informado"
];
Através deste endpoint, é possível buscar as categorias de chamados cadastros no servidor do Gesprov. Isso é necessário para a abertura de chamados:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$categorias_chamados = $apiClientObj->consultarCategoriasChamados();
var_dump($categorias_chamados);
object(stdClass)#9 (1) {
["categorias"]=>
array(7) {
[0]=>
object{
["id"] => int(1)
["nome"] => string(10) "SEM CONEXÃO"
["status"] => int(1)
["apenas_clientes"] = int(1)
["departamento"] => string(7) "SUPORTE"
}
[1]=>
object {
["id"]=> int(2)
["nome"] => string(22) "DIFICULDADES NA CONEXÃO"
["status"] => int(1)
["apenas_clientes"] => int(1)
["departamento"] => string(7) "SUPORTE"
}
[2]=>
object{
["id"] => int(3)
["nome"] => string(20) "ASSUNTOS FINANCEIROS"
["status"] => int(1)
["apenas_clientes"] => int(1)
["departamento"] => string(10) "FINANCEIRO"
}
[3]=>
object{
["id"] => int(5)
["nome"] => string(20) "INFORMAÇÕES COMERCIAIS"
["status"] => int(1)
["apenas_clientes"] => int(0)
["departamento"] => string(9) "COMERCIAL"
}
[4]=>
object{
["id"] => int(6)
["nome"] => string(11) "VIABILIDADE"
["status"] => int(1)
["apenas_clientes"] => int(0)
["departamento"] => string(9) "COMERCIAL"
}
}
}
Através deste endpoint, abrir um novo chamado / atendimento para um cliente. Para abrir chamado / atendimento, é necessário informar cinco parametros:
<?php
include_once("ApiClient.php");
$url = "https://sandbox.gesprov.com.br";
$client_id = "nome_usuario";
$client_secret = "senha_usuario";
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$parametros = array(
"numero_contrato" => "321",
"descricao" => "Descrição da abertura dos chamados",
"relato_cliente" => "Relato do cliente na abertura de atendimentos",
"url_arquivo_gravacao" => "url_arquivo_gravacao",
"categoria_chamado" => "2",
);
$apiClientObj = new Gesprov\ApiClient($url, $client_id, $client_secret, false);
$dados_atendimento = $apiClientObj->abrirChamado($parametros);
var_dump($dados_atendimento);
object {
["status"] => string(7) "sucesso"
["descricao"] => string(26) "Chamado aberto com sucesso"
["protocolo"] => string(12) "202112221196"
}
[
"erro" => "usuario_invalido",
"descricao_erro" => "O token informado não é valido. Verfique o seu token e tente novamente"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Número de contrato não informado"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Descrição do chamado não informada"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Você deve informar o relato do cliente para abrir o chamado"
];
[
"erro" => "parametros_incorretos",
"descricao_erro" => "Você deve informar a subcategoria para abrir o chamado"
];