VIA VAREJO (CNOVA)

 Tópico anterior Próximo tópico Novo tópico

VIA VAREJO (CNOVA)

C#

 Compartilhe  Compartilhe  Compartilhe
#493809 - 13/05/2020 16:53:31

ATSILVA
SAO PAULO
Cadast. em:Março/2014


 Anexos estao visíveis somente para usuários registrados

Estou efetuando integração com a Via Varejo (CNova), porém, no ambiente de SANDBOX não consigo conectar (veja imagem em anexo).
Alguém, já efetuou integração, sabe o que ocorre?

PS: Os valores do client_id e access_token não são reais, foram alterados.





Resposta escolhida #493813 - 13/05/2020 17:13:10

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Realmente não achei esse endpoint na API Explorer

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493824 - 14/05/2020 09:26:58

ATSILVA
SAO PAULO
Cadast. em:Março/2014


Última edição em 14/05/2020 09:29:51 por ATSILVA

 Anexos estao visíveis somente para usuários registrados

API Browser




#493825 - 14/05/2020 09:28:47

ATSILVA
SAO PAULO
Cadast. em:Março/2014


 Anexos estao visíveis somente para usuários registrados

Endpoints



#493829 - 14/05/2020 11:07:06

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Hmmm, realmente me passou essa. Você está preenchendo o body com o objeto esperado?

{
  "itens": [
    {
      "marca": "marca",
      "titulo": "titulo",
      "idCategoria": "idCategoria",
      "idItem": "idItem",
      "atributos": [
        {
          "idUda": "idUda",
          "valor": "valor"
        },
        {
          "idUda": "idUda",
          "valor": "valor"
        }
      ],
      "descricao": "descricao",
      "garantia": "garantia",
      "skus": [
        {
          "preco": {
            "oferta": "oferta",
            "padrao": "padrao"
          },
          "estoque": {
            "tempoDePreparacao": "tempoDePreparacao",
            "quantidade": "quantidade"
          },
          "gtin": "gtin",
          "imagens": [
            "imagens",
            "imagens"
          ],
          "dimensao": {
            "largura": "largura",
            "altura": "altura",
            "peso": "peso",
            "profundidade": "profundidade"
          },
          "idSkuViaVarejo": "idSkuViaVarejo",
          "idSkuLojista": "idSkuLojista",
          "atributos": [
            {
              "idUda": "idUda",
              "valor": "valor"
            },
            {
              "idUda": "idUda",
              "valor": "valor"
            }
          ]
        }
      ]
    }
  ]
}


_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493830 - 14/05/2020 11:08:52

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Além disso, a URL que sugere no Swagger é:
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493831 - 14/05/2020 11:17:39

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Aqui, prontinho, só construa o body de acordo com suas necessidades:

using (var httpClient = new HttpClient())
{
    using (var request = new HttpRequestMessage(new HttpMethod("POST"), "https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens"))
    {
        request.Headers.TryAddWithoutValidation("Accept", "application/json");
        request.Headers.TryAddWithoutValidation("access_token", "Token_aqui");
        request.Headers.TryAddWithoutValidation("client_id", "client_id_aqui");

        request.Content = new StringContent("{\n  \"itens\": [\n    {\n      \"marca\": \"marca\",\n      \"titulo\": \"titulo\",\n      \"idCategoria\": \"idCategoria\",\n      \"idItem\": \"idItem\",\n      \"atributos\": [\n        {\n          \"idUda\": \"idUda\",\n          \"valor\": \"valor\"\n        },\n        {\n          \"idUda\": \"idUda\",\n          \"valor\": \"valor\"\n        }\n      ],\n      \"descricao\": \"descricao\",\n      \"garantia\": \"garantia\",\n      \"skus\": [\n        {\n          \"preco\": {\n            \"oferta\": \"oferta\",\n            \"padrao\": \"padrao\"\n          },\n          \"estoque\": {\n            \"tempoDePreparacao\": \"tempoDePreparacao\",\n            \"quantidade\": \"quantidade\"\n          },\n          \"gtin\": \"gtin\",\n          \"imagens\": [\n            \"imagens\",\n            \"imagens\"\n          ],\n          \"dimensao\": {\n            \"largura\": \"largura\",\n            \"altura\": \"altura\",\n            \"peso\": \"peso\",\n            \"profundidade\": \"profundidade\"\n          },\n          \"idSkuViaVarejo\": \"idSkuViaVarejo\",\n          \"idSkuLojista\": \"idSkuLojista\",\n          \"atributos\": [\n            {\n              \"idUda\": \"idUda\",\n              \"valor\": \"valor\"\n            },\n            {\n              \"idUda\": \"idUda\",\n              \"valor\": \"valor\"\n            }\n          ]\n        }\n      ]\n    }\n  ]\n}");
        request.Content.Headers.ContentType = MediaTypeHeaderValue.Parse("application/json");

        var response = await httpClient.SendAsync(request);
    }


_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493832 - 14/05/2020 11:19:13

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe

Última edição em 14/05/2020 11:24:09 por KERPLUNK

Eu sugeriria também converter o json para objeto, fica mais fácil de trabalhar do que com texto cru.
EDIT:
Ficaria assim a estrutura de classes:

public class Atributo
    {
        public string idUda { get; set; }
        public string valor { get; set; }
    }

    public class Preco
    {
        public string oferta { get; set; }
        public string padrao { get; set; }
    }

    public class Estoque
    {
        public string tempoDePreparacao { get; set; }
        public string quantidade { get; set; }
    }

    public class Dimensao
    {
        public string largura { get; set; }
        public string altura { get; set; }
        public string peso { get; set; }
        public string profundidade { get; set; }
    }

    public class Atributo
    {
        public string idUda { get; set; }
        public string valor { get; set; }
    }

    public class Sku
    {
        public Preco preco { get; set; }
        public Estoque estoque { get; set; }
        public string gtin { get; set; }
        public IList<string> imagens { get; set; }
        public Dimensao dimensao { get; set; }
        public string idSkuViaVarejo { get; set; }
        public string idSkuLojista { get; set; }
        public IList<Atributo> atributos { get; set; }
    }

    public class Produto
    {
        public string marca { get; set; }
        public string titulo { get; set; }
        public string idCategoria { get; set; }
        public string idItem { get; set; }
        public IList<Atributo> atributos { get; set; }
        public string descricao { get; set; }
        public string garantia { get; set; }
        public IList<Sku> skus { get; set; }
    }




_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493834 - 14/05/2020 12:43:44

ATSILVA
SAO PAULO
Cadast. em:Março/2014


 Anexos estao visíveis somente para usuários registrados

Obrigado pela sua ajuda e dedicação.
O endpoint https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens é somente para quando a aplicação estiver homologada no ambiente de produção.
O problema é que o endpoint de testes https://sandbox-mktplace.viavarejo.com.br/api/v2/import/itens não funciona, retorna essa mensagem de NOT FOUND ou NO SUCH APP.

No caso da imagem acima, a mensagem de erro esta correta, já que meu token não esta em produção e sim em homologação.
Você obteve reposta positiva com o endpoint de produção?




#493835 - 14/05/2020 13:15:26

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Aí você vai ter que ver com eles. Seu código está ok, o que não está ok é o endpoint, só falando com eles

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493836 - 14/05/2020 13:29:14

ATSILVA
SAO PAULO
Cadast. em:Março/2014


Sim, obrigado mais uma vez.
Já enviei mensagem, mas, o pessoal é meio ruim pra responder.
Grande abraço.



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por ATSILVA em 18/05/2020 18:19:15