API - Como usar?
<ul> <li dir="ltr" aria-level="1"> <div>📘 Documentação da API – LavePay / OSS</div> <div> </div> <div>Bem-vindo à documentação oficial da API LavePay para acesso às Ordens de Serviço (OSS).</div> <div>Esta API permite integrar sistemas externos para consultar e consumir dados relacionados às ordens de serviço vinculadas ao cliente autorizado.</div> <div> </div> <div> </div> <div> </div> <div>🔐 Autenticação</div> <div> </div> <div>Todas as chamadas devem conter:</div> <div> </div> <div>Campo - Tipo - Obrigatório - Descrição</div> </li> <li dir="ltr" aria-level="1"> <div>clientId - string - Sim - Identificador único do cliente</div> </li> <li dir="ltr" aria-level="1"> <div>clientSecret - string - Sim - Chave secreta para autenticação</div> </li> <li dir="ltr" aria-level="1"> <div>A autenticação é enviada via POST, mesmo em rotas GET.</div> <div> </div> <div> </div> <div> </div> <div>🛣 Endpoints Disponíveis</div> <div>1️⃣ Consultar OS por ID</div> <div>GET /api/laveweb/oss_get.php?id={id_os}&idClienteOss=(id_cliente)</div> <div> </div> <div>Retorna os dados da OS pertencente ao cliente autenticado.</div> <div> </div> <div> </div> <div> </div> <div>▶ Parâmetros da URL</div> <div> </div> <div>Parâmetro</div> <div> </div> <div> </div> <div> </div> <div>Tipo - Obrigatório - Descrição</div> <div>id - int - Sim ID da OS que deseja consultar</div> <div>idClienteSecret - int - Sim ID do Cliente que deseja consultar</div> <div> </div> <div>▶ Corpo da Requisição (POST)</div> <div> </div> <div>Enviar no corpo do POST (x-www-form-urlencoded):</div> <div>{</div> <div> "clientId": "SEU_CLIENT_ID",</div> <div> "clientSecret": "SEU_CLIENT_SECRET"</div> <div>}</div> <div> </div> <div>📤 Exemplo de Requisição (PHP cURL)</div> <div> </div> <div> </div> <div> </div> <div>$url = "https://lavepay.com.br/api/laveweb/oss_get.php?id={{id}}&idClienteOss={{}}";</div> <div> </div> <div>$data = [</div> <div> "clientId" => "CC0C-99BA-C8A8-2F8E",</div> <div> "clientSecret" => "dd69680a6b814fa0775fb76fcc92dccf"</div> <div>];</div> <div> </div> <div>$ch = curl_init($url);</div> <div>curl_setopt($ch, CURLOPT_POST, true);</div> <div>curl_setopt($ch, CURLOPT_POSTFIELDS, $data);</div> <div>curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);</div> <div>curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);</div> <div> </div> <div>$response = curl_exec($ch);</div> <div>curl_close($ch);</div> <div> </div> <div>echo $response;</div> <div> </div> <div> </div> <div>📥 Resposta de Sucesso</div> <div> </div> <div>Array</div> <div> </div> <div>(</div> <div> </div> <div> [status] => success</div> <div> </div> <div> [os] => Array</div> <div> </div> <div> (</div> <div> </div> <div> [id] => 15</div> <div> </div> <div> [idcliente] => 1</div> <div> </div> <div> [nomecliente] => lave web</div> <div> </div> <div> [idvendedor] => 2</div> <div> </div> <div> [nomevendedor] => webmaster</div> <div> </div> <div> [nomeliberado] => webmaster</div> <div> </div> <div> [retirado] => sim</div> <div> </div> <div> [deixousinal] => Pago</div> <div> </div> <div> [bal_ent] => Balcao</div> <div> </div> <div> [tipopagamento] => </div> <div> </div> <div> [tipopagamento2] => Crédito-#-#</div> <div> </div> <div> [valor1] => 22</div> <div> </div> <div> [valor2] => 0</div> <div> </div> <div> [desconto] => 0</div> <div> </div> <div> [desconto2] => 0</div> <div> </div> <div> [sinal] => 0</div> <div> </div> <div> [total] => 22</div> <div> </div> <div> [data] => 2025-05-27</div> <div> </div> <div> [status] => Retirada</div> <div> </div> <div> [identificador] => 473ed05660c225186837c9b1627d0b3e68866efa</div> <div> </div> <div> [obs] => </div> <div> </div> <div> [previsao_data] => 2025-05-29</div> <div> </div> <div> [enviaemail] => nao</div> <div> </div> <div> )</div> <div> </div> <div> </div> <div> </div> <div>)</div> <div> </div> <div> </div> <div> </div> <div>❌ Resposta – Erro de Autenticação</div> <div>{</div> <div> "status": "error",</div> <div> "message": "Acesso não autorizado"</div> <div>}</div> <div> </div> <div> </div> <div>❌ Resposta – OS não encontrada</div> <div>{</div> <div> "status": "error",</div> <div> "message": "OS não encontrada"</div> <div>}</div> <div> </div> <div> </div> <div> </div> <div>Isso ocorre quando:</div> </li> <li dir="ltr" aria-level="1"> <div>A OS não existe, ou </div> </li> <li dir="ltr" aria-level="1"> <div>OS não pertence ao cliente autenticado.</div> <div> </div> <div>▶ Camposdo Retorno</div> </li> <li dir="ltr" aria-level="1"> <div>id - ID do Rol</div> </li> <li dir="ltr" aria-level="1"> <div>idcliente - ID do Cliente</div> </li> <li dir="ltr" aria-level="1"> <div>nomecliente - Nome do Cliente</div> </li> <li dir="ltr" aria-level="1"> <div>idvendedor ID do atendimento</div> </li> <li dir="ltr" aria-level="1"> <div> </div> nomevendedor - Nome do atendente </li> <li dir="ltr" aria-level="1"> <div>nomeliberado - Que liberou (Entregou) o pedido</div> </li> <li dir="ltr" aria-level="1"> <div>retirado SIM / NÂO</div> </li> <li dir="ltr" aria-level="1"> <div>deixousinal - 1= Não pago / 2 = Pago parcial / Pago = Pago</div> </li> <li dir="ltr" aria-level="1"> <div>bal_ent - Entrega ou Balcão </div> </li> <li dir="ltr" aria-level="1"> <div>tipopagamento - forma de rececbimento 1</div> </li> <li dir="ltr" aria-level="1"> <div>tipopagamento2 - forma de rececbimento 2</div> </li> <li dir="ltr" aria-level="1"> <div>desconto - Desconto em %</div> </li> <li dir="ltr" aria-level="1"> <div>desconto2 - Desconto em R$</div> </li> <li dir="ltr" aria-level="1"> <div>sinal - Valor de sinal </div> </li> <li dir="ltr" aria-level="1"> <div>total - Total do Rol</div> </li> <li dir="ltr" aria-level="1"> <div>data - Data criação</div> </li> <li dir="ltr" aria-level="1"> <div>status - Em Produção / Finalizado / Retirado</div> </li> <li dir="ltr" aria-level="1"> <div>identificador -Hash</div> </li> <li dir="ltr" aria-level="1"> <div>obs - Observação do Rol</div> </li> <li dir="ltr" aria-level="1"> <div>previsao_data - Entrega prevista</div> </li> <li dir="ltr" aria-level="1"> <div>enviaemail - Sim / Não - O sistema enviar email nas alterações de status</div> <div> </div> <div><strong>⚙ Formato da API</strong></div> <div> </div> <div>Todas as respostas retornam:</div> <div>Content-Type: application/json UTF-8 </div> <div>JSON estruturado</div> <div> </div> </li> </ul>
Ler artigo