Api Mostrar Junto é pvt

ola pessoal,

estou tentando utilizar a api : Catalog API porém é uma api privada, e eu preciso acessar os skus dos produtos cadastrados no mostrar junto, e no momento eu so consigo visualizar isso no ambiente de desenvolvimento pois quando vai pra prod ele da erro pois precisa dos tokens, eu nao sei por onde começar a fazer isso funcionar, nao tem nem uma outra api que eu tenha achando que me retorne a mesma coisa e eu procurei muito, só tem informações jogadas em vários forums mas é como se as pessoas julgassem que todo mundo sabe fazer tudo ai manda uma doc X e um retorno “faz isso la” e no final nada funciona.

alguém pode me dar pelo menos um overview de como eu posso fazer isso ?

ps. eu estou desenvolvendo um app front-end para compre-junto

1 Like

Oi @MMendes tudo bem?

Fiquei com algumas dúvidas:

:small_blue_diamond: 1. Você quer usar o “Compre Junto” só pra exibir produtos relacionados (nativamente)?

Nesse caso, não é necessário desenvolver um app. A VTEX já tem esse recurso nativamente via o CMS e o Admin:

:white_check_mark: Como usar o “Compre Junto” nativo:

  1. Vá em Catálogo > Produtos > Produtos relacionados.
  2. Você pode cadastrar SKUs relacionados manualmente na aba “Mostrar Junto” ou “Acessórios”.
  3. Esses dados são expostos automaticamente no front usando os componentes nativos da VTEX IO (product-related e product-accessories).

:backhand_index_pointing_right: Você pode usar o Mostrar Junto da Própria VTEX. Documentação oficial:

:small_blue_diamond: 2. Você está criando um app front-end personalizado e precisa acessar a API privada (Catalog API) para buscar os SKUs relacionados?

Se sim, então você não pode chamar diretamente essa API no front-end em produção, pois ela exige autenticação (appKey e appToken), e essas credenciais nunca devem estar no front-end por questões de segurança.

:white_check_mark: Como resolver:

Você precisa montar uma arquitetura com uma aplicação back-end intermediária. Esse app back-end vai:

  1. Receber a requisição do seu app front-end.
  2. Chamar a Catalog API com appKey e appToken.
  3. Retornar ao seu front-end somente os dados necessários.

Vou considerar que você já tenha obtido a App Key + Token. Caso não, consulte Chaves de aplicação

Dessa forma, para que seu app custom possa funcionar, você precisa de uma aplicação backend para “encapsular” as credenciais. Ou seja, ao invés de você chamar o endpoint da VTEX, você chamará a API Backend criada que estará com os tokens. Portanto, só será necessário criar a regra de chamada para essa sua aplicação backend.

Isso vai servir para você usar em prod.

:wrench: Dicas práticas no Backend:

Lembre-se de liberar CORS para:

  • *.myvtex.com
  • *.vtexcommercestable.com.br
  • Seu domínio público (www.sualoja.com.br)

OBS.: A aplicação Backend, por fim, precisa estar alocada em algum servidor online também.

Espero que estas informações lhe esclareça melhor como seguir.

At.te,
Diretoria Four2One