api bling
Moderador: Moderadores
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
api bling
Estou tentando fazer um post na API BLING e gostaria da ajuda dos colegas.
Fazendo experiências primeiro com CURL.EXE mandando um post de cadastro na api conforme segue:.
E estou recebendo este retorno de erro no xml: {"retorno":{"erros":[[{"erro":{"cod":6,"msg":"Start tag expected, '<' not found\n"}}]]}}
Alguém poderia dar uma forca para mim. NO final de tudo quero montar uma função em Harbur para fazer esta interação.
curl -X POST "https://bling.com.br/Api/v2/deposito/json/"
-d "apikey=xAPIKEY"
-d "xml=dep001.xml"
dep001.xml
<?xml version="1.0" encoding="UTF-8"?>
<depositos>
<deposito>
<descricao>Depósito Padrão</descricao
<situacao>A</situacao>
<depositoPadrao>true</depositoPadrao>
<desconsiderarSaldo>false</desconsiderarSaldo>
</deposito>
</depositos>
Obs. Editada por Itamar Lins para remover a apikey.
Fazendo experiências primeiro com CURL.EXE mandando um post de cadastro na api conforme segue:.
E estou recebendo este retorno de erro no xml: {"retorno":{"erros":[[{"erro":{"cod":6,"msg":"Start tag expected, '<' not found\n"}}]]}}
Alguém poderia dar uma forca para mim. NO final de tudo quero montar uma função em Harbur para fazer esta interação.
curl -X POST "https://bling.com.br/Api/v2/deposito/json/"
-d "apikey=xAPIKEY"
-d "xml=dep001.xml"
dep001.xml
<?xml version="1.0" encoding="UTF-8"?>
<depositos>
<deposito>
<descricao>Depósito Padrão</descricao
<situacao>A</situacao>
<depositoPadrao>true</depositoPadrao>
<desconsiderarSaldo>false</desconsiderarSaldo>
</deposito>
</depositos>
Obs. Editada por Itamar Lins para remover a apikey.
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
api bling
se o post relatar a realidade, eu apenas pergunto: com XML correto funciona?
Ou.... se a resposta é em json, por acaso o envio também não deveria ser?
Ou.... se a resposta é em json, por acaso o envio também não deveria ser?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
api bling
envio do post em xml e a resposta em json, nao sei se funciona por que ainda nao conseguir fazer o teste e nao sei onde estar o erro no xml.
// aqui tem a documentação de vários endpoint eu preciso validar um teste de POST e UM de PUT pode ser em quaisquer um dos endpoint
https://ajuda.bling.com.br/hc/pt-br/cat ... volvedores
// aqui tem a documentação de vários endpoint eu preciso validar um teste de POST e UM de PUT pode ser em quaisquer um dos endpoint
https://ajuda.bling.com.br/hc/pt-br/cat ... volvedores
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
api bling
no que colocou, falta fechar a tag descricao, a mensagem de erro deve ser sobre isso.jairfab escreveu:nao sei onde estar o erro no xml.
Mas tem que ser com curl ?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
api bling
Pode ser com qualquer função... porem a função que testei aqui não funciona em windows 7
Mas aceito sugestões de possíveis soluções ... O mias importante seria fazer funcionar.
Mas aceito sugestões de possíveis soluções ... O mias importante seria fazer funcionar.
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
api bling
Conseguir fazer um post no curl por linha de comando. agora quero fazer no curl lib
alguem tem ideia de como fazer eu ja tentei varias formas e nao deu certo dis que nao foi passado o parametro key
Estou tentando com este codigo ja fiz varias alteracoes ...mas nao sei como colocar este parametro key
alguem tem ideia de como fazer eu ja tentei varias formas e nao deu certo dis que nao foi passado o parametro key
Código: Selecionar todos
curl -X POST "https://bling.com.br/Api/v2/produto/json/" -d "apikey=81672077cde47c5ed795349ae17a98c1c1b10c9826041ecf9b9d28d9a1961c7204dc3b13" -d "xml=<produto><codigo>22000123</codigo><descricao>Caneta Preta 002 andre</descricao><situacao>Ativo</situacao><descricaoCurta>Descrição curta da caneta</descricaoCurta><descricaoComplementar>Descrição produto 002</descricaoComplementar><un>Pc</un><vlr_unit>1.68</vlr_unit><preco_custo>1.23</preco_custo><peso_bruto>0.2</peso_bruto><peso_liq>0.18</peso_liq><class_fiscal>1000.01.01</class_fiscal><marca>Marca da Caneta</marca><origem>0</origem><estoque>10</estoque><deposito><id>14886559917</id><estoque>200</estoque></deposito><gtin>223435780</gtin><gtinEmbalagem>54546</gtinEmbalagem><largura>11</largura><altura>21</altura><profundidade>31</profundidade><estoqueMinimo>1.00</estoqueMinimo><estoqueMaximo>100.00</estoqueMaximo><cest>28.040.00</cest><idGrupoProduto>12345</idGrupoProduto><condicao>Novo</condicao><freteGratis>N</freteGratis><linkExterno>https://minhaloja.com.br/meu-produto</linkExterno><observacoes>Observações do meu produtos</observacoes><producao>P</producao><dataValidade>20/03/2022</dataValidade><descricaoFornecedor>Descrição do fornecedor</descricaoFornecedor><idFabricante>0</idFabricante><codigoFabricante>123</codigoFabricante><unidadeMedida>Centímetros</unidadeMedida><garantia>4</garantia><itensPorCaixa>2</itensPorCaixa><volumes>2</volumes><urlVideo>https://www.youtube.com/watch?v=zKKL-SgC5lY</urlVideo><imagens><url>https://bling.com.br/bling.jpg</url></imagens><idCategoria>4573031</idCategoria></produto>"
Estou tentando com este codigo ja fiz varias alteracoes ...mas nao sei como colocar este parametro key
Código: Selecionar todos
//------------------------------------------------------------------------------------------------
function Send( )
hCurl := curl_easy_init()
cUrl := "https://bling.com.br/Api/v2/produtos/json/"
cKey := "?apikey=81672077cde47c5ed795349ae17a98c1c1b10c9826041ecf9b9d28d9a1961c7204dc3b13"
//cKey := "apikey=81672077cde47c5ed795349ae17a98c1c1b10c9826041ecf9b9d28d9a1961c7204dc3b13"
// cKey := "81672077cde47c5ed795349ae17a98c1c1b10c9826041ecf9b9d28d9a1961c7204dc3b13"
cXml:= "<produto><codigo></codigo><descricao>Caneta Preta 001 xxxx</descricao><situacao>Ativo</situacao><descricaoCurta>Descrição curta da caneta</descricaoCurta><descricaoComplementar>Descrição produto 002</descricaoComplementar><un>Pc</un><vlr_unit>1.68</vlr_unit><preco_custo>1.23</preco_custo><peso_bruto>0.2</peso_bruto><peso_liq>0.18</peso_liq><class_fiscal>1000.01.01</class_fiscal><marca>Marca da Caneta</marca><origem>0</origem><estoque>10</estoque><deposito><id>14886559917</id><estoque>200</estoque></deposito><gtin>223435780</gtin><gtinEmbalagem>54546</gtinEmbalagem><largura>11</largura><altura>21</altura><profundidade>31</profundidade><estoqueMinimo>1.00</estoqueMinimo><estoqueMaximo>100.00</estoqueMaximo><cest>28.040.00</cest><idGrupoProduto>12345</idGrupoProduto><condicao>Novo</condicao><freteGratis>N</freteGratis><linkExterno>https://minhaloja.com.br/meu-produto</linkExterno><observacoes>Observações do meu produtos</observacoes><producao>P</producao><dataValidade>20/11/2019</dataValidade><descricaoFornecedor>Descrição do fornecedor</descricaoFornecedor><idFabricante>0</idFabricante><codigoFabricante>123</codigoFabricante><unidadeMedida>Centímetros</unidadeMedida><garantia>4</garantia><itensPorCaixa>2</itensPorCaixa><volumes>2</volumes><urlVideo>https://www.youtube.com/watch?v=zKKL-SgC5lY</urlVideo><imagens><url>https://bling.com.br/bling.jpg</url></imagens><idCategoria>4573031</idCategoria></produto>"
* Local httpcode
curl_easy_setopt( hCurl, HB_CURLOPT_POST, 1 )
curl_easy_setopt( hCurl, HB_CURLOPT_URL, cUrl )
* curl_easy_setopt( hCurl, HB_CURLOPT_USERPWD, "xxxxxxxxxx$#B<SHJGHKxxxx" + ':' + "x@#$F&^%DEE" )
/* define nome de usuário e senha para autenticação */
*curl_easy_setopt(hCurl, 26 , cKey )
*curl_easy_setopt( hCurl, 5, cKey )
*curl_easy_setopt(hCurl, 87, cKey)
//CURLOPT_HTTPHEADER 23
curl_easy_setopt(hCurl, 23, "authorization: 81672077cde47c5ed795349ae17a98c1c1b10c9826041ecf9b9d28d9a1961c7204dc3b13")
curl_easy_setopt( hCurl, 1008 )
curl_easy_setopt( hCurl, 64, .F. )
* curl_easy_setopt(hCurl, 131, cXml )
curl_easy_setopt (hCurl, 36 , "PUT" )
curl_easy_setopt(hCurl, 15, cXml)
// aqui vai o xml do PUT DELETE OU POST
// curl_easy_setopt( hcurl, HB_CURLOPT_POSTFIELDS, Send() ) 15
nError := curl_easy_perform( hCurl )
? nError
* curl_easy_getinfo( hCurl, HB_CURLINFO_RESPONSE_CODE, @httpcode )
cResponse := curl_easy_dl_buff_get( hCurl )
? cResponse
return NIL
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
api bling
Conseguir estou utilizando com linha de comando mesmo mas deu tudo certo!
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
