Integração com Api Onvio (PHP / CURL)
05/05/2021
0
Olá amigos,
Estou fazendo a integração do ERP com a Api da Onvio, mas estou com dificuldade de enviar o xml para a Api. Precisa ser enviado dois parâmetros no Body que é o "file[]" como "application/xml" e a "query" como "application/json" e não sei como informar eles em conjunto. Hoje da forma que eu envio da retorno de erro "HTTP 400 Bad Request".
Estou fazendo a integração do ERP com a Api da Onvio, mas estou com dificuldade de enviar o xml para a Api. Precisa ser enviado dois parâmetros no Body que é o "file[]" como "application/xml" e a "query" como "application/json" e não sei como informar eles em conjunto. Hoje da forma que eu envio da retorno de erro "HTTP 400 Bad Request".
$url = "https://api.onvio.com.br/dominio/invoice/v2/batches"; $header = [ "Content-Type: multipart/form-data", "Authorization: Bearer ".$access_token ]; $data = [ "file[]" => new CURLFILE("./xml_api_onvio.xml"), // envia arquivo (precisa ser "application/xml") "query" => "{boxe/File: true}" // Query (precisa ser "application/json") ]; $tokens = conexao_onvio($url, $header, $data, "post");
function conexao_onvio($url, $header, $data = null, $modo = null){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); if($modo == 'post'){ curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); $response = json_decode(curl_exec($ch), true); curl_close($ch); return $response; }
Eduardo Silva
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)