Fórum Integração com Api Onvio (PHP / CURL) #615675
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 :)