LogoLogo
Documentação de Temas
Documentação de Temas
  • 🚀COMECE POR AQUI
    • Temas Tray
    • Entenda o Tema
    • Meu primeiro tema
  • 💻Tray CLI
    • Instalação
    • Comandos
      • Erros Retornados
    • API para integrações Tray CLI
  • 🧱Construindo seu Template
    • Twig
      • O que é o Twig
      • Como ele é utilizado nos temas
      • Possibilidades de uso
      • Documentação para consulta
    • Visão Geral
      • Estrutura do Tema
      • Arquivo de configuração
      • Extensões de arquivos
      • Codificação de Arquivos
      • Avisos e Recomendações
      • Flags
    • Editor do Tema
      • Antigo
        • Como criar um Editor
        • Settings.html
      • Novo
        • Estrutura
          • Seções
          • Ícones
          • Componentes
            • Text
            • Textarea
            • Email
            • Number
            • Color
            • Checkbox
            • Radio
            • Select
            • Toggle
            • Upload
            • Tab
            • Alert
          • Exemplo de utilização
        • Thumb preview do tema
        • Imagens padrões
        • Como desabilitar e reabilitar?
      • Settings.json
    • Desenvolver
      • Atributo Google Analytics 4
      • Como adicionar o botão comprar na listagem dos produtos
      • Como criar um carrossel de produtos
      • Como inserir um vídeo na home da loja
      • Como manipular as variações de produtos
      • Como saber se o usuário está logado
      • Descontinuação do carrinho.php
      • Exibindo as formas de pagamento de um produto
      • Informação de preço com tempo de cache menor
      • Order Bump - Produtos Relacionados
      • Páginas Institucionais
      • Página de recuperação de senha
      • Página Live Shop
      • Recursos extras
      • Personalização das paginas de carrinho e checkout
    • Core Web Vitals
      • Desempenho
        • Lazyload
        • Primeira dobra
        • Fontes
        • Definição largura e altura
        • Sprite formas de pagamentos
      • Boas Práticas
        • Origem cruzada
      • Acessibilidade
        • Atributo Lang
        • Nome discernível
        • Atributo ALT
        • Contraste
        • IDs únicos
        • ARIA Labelled By
        • Tabindex
    • Otimizar e Medir
      • Carregamento na home
      • Layout AMP
      • Utilizando PWA na loja
    • Referências
      • Objetos
        • banner
        • breadcrumb
        • category
        • categories
        • filters
        • filter_options
        • links
        • pages
        • paginate
        • paymentMethods
        • product
        • productTabs
        • products
        • productFeatured
        • seals
        • search
        • settings
        • store
        • tags
        • tray
        • themePath
        • utils
      • Funções
        • asset()
        • Brands()
        • Categories()
        • Image()
        • Products()
        • Translation()
      • Data Attributes
        • Banners
        • Cart
        • Compare
        • Filter
        • Logged User
        • Search (Suggestion)
      • Componentes
        • Adicionar ao carrinho sem sair da página
        • Banner Desconto Progressivo
        • Banner extra com contagem de cliques
        • Banner Régua
        • Banner Rotativo
        • Botão "Voltar para o topo"
        • Botões Quantidade
        • Carrinho Lateral
        • Exibir a segunda imagem ao passar o mouse
        • Filtro Inteligente
        • Link flutuante para Whatsapp
        • Menu de Categorias
        • Menu de Categorias em 3 Níveis
        • Menu de Categorias com ver mais categorias
        • Menu de Categorias com Imagens
        • Menu de Categorias com Imagens - Hover
        • Menu de Categorias com produto
        • Menu de Marcas
        • Modal de Ofertas
        • Notícias com imagem na home
        • Novo Filtro Inteligente
        • Paginação
        • Porcentagem Desconto
        • Popup de Newsletter
        • Star Ranking
        • Selos da Loja
        • Selos do produto
        • Showcase ( List / Grid )
        • Topo Flutuante
        • Tray Login
        • Whatsapp flutuante
    • APIs Disponíveis
      • Busca
      • Carrinho de Compra
      • Categorias
      • Produtos
      • Variações de Produto
  • ✔️Homologação
    • Loja de Temas Tray
    • Requerimentos
      • Exclusividade
      • Identidade única
      • Estrutura necessária
      • Funcionalidades
      • Nova Busca e Filtro inteligente
      • Selos de produtos
      • Google Lighthouse
      • Consistência e funcionalidade
      • Compatibilidade com navegadores
      • Assets
      • Otimização para buscadores (SEO)
      • Acessibilidade
      • Configurações
      • Sistema de cores
      • Imagens responsivas
      • Nomes dos temas
      • Versionamento e notas de lançamento
      • Lojas demonstrativas
      • Documentação e suporte
    • Checklist obrigatório
    • Templates
    • Homologando o tema
    • Atualizando o tema
    • FAQ
  • 📣NOVIDADES
    • Tray CLI
    • Checklist
    • Tema Draft
    • Novo Editor
Powered by GitBook
On this page
  • Consultar Informações do Produto
  • Attrs
  • Listagem de Produtos

Was this helpful?

  1. Construindo seu Template
  2. APIs Disponíveis

Produtos

Através da API de Produtos é possível consultar e listar os produtos contidos na loja virtual.

Endereço para Integração

URL de Acesso

https://{URL_LOJA}/web_api/products

Protocolo

Rest/HTTP

Consultar Informações do Produto

Para retornar as informações do produto, basta realizar uma requisição via GET, enviando na URL o código do produto desejado.

Veja abaixo uma chamada de exemplo para consultar informações do produto:

<script type="text/javascript">  
    var productId =  "84";
    
    $.ajax({
        method: "GET",
        url: "/web_api/products/"+productId
    }).done(function( response, textStatus, jqXHR ) {
        console.log(response);
    }).fail(function( jqXHR, status, errorThrown ){
        var response = $.parseJSON( jqXHR.responseText );
        console.log(response);
    });
</script>

Na consulta do produto, a API retorna a resposta em JSON.

Abaixo um detalhamento de cada nó do JSON de resposta:

JSON de Resposta
Descrição

Product

Dados do Produto

Product.ean

EAN do Produto

Product.id

Código do Produto

Product.name

Nome do Produto

Product.price

Preço do Produto

Product.promotional_price

Preço Promocional do Produto

Product.start_promotion

Data Inicial da Promoção do Produto

Product.end_promotion

Data Final da Promoção do Produto

Product.brand

Marca do Produto

Product.model

Modelo do Produto

Product.category_id

Código da Categoria do Produto

Product.available

Disponibilidade do Produto

Product.hot

Produto em Destaque

Product.release

Liberação do Produto

Product.additional_button

Botão Adicional do Produto

Product.has_variation

Confirmação de Produto com Variação

Product.url

Objeto com as URLs do Produto

Product.url.http

URL Simples do Produto

Product.url.https

URL Segura do Produto

Product.payment_option

Informações de Pagamento

Product.payment_option_details[]

Informações de Pagamento

Product.payment_option_details[].display_name

Nome da Forma de Pagamento

Product.payment_option_details[].plots

Quantidade de parcelas

Product.payment_option_details[].value

Valor da parcela

Product.related_categories

Categorias Relacionadas do Produto

Product.release_date

Data da Liberação do Produto

Product.virtual_product

Produto Virtual

Product.ProductImage[]

Imagens do Produto

Product.ProductImage[].http

URL Simples da Imagem do Produto

Product.ProductImage[].https

URL Segura da Imagem do Produto

Product.ProductImage[].thumbs

Miniatura da Imagem do Produto

Product.ProductImage[].thumbs.30

Miniatura de Tamanho 90px

Product.ProductImage[].thumbs.30.http

URL Simples da Miniatura de 90px

Product.ProductImage[].thumbs.30.https

URL Segura da Miniatura de 90px

Product.ProductImage[].thumbs.90

Miniatura de Tamanho 300px

Product.ProductImage[].thumbs.90.http

URL Simples da Miniatura de 300px

Product.ProductImage[].thumbs.90.https

URL Segura da Miniatura de 300px

Product.ProductImage[].thumbs.180

Miniatura de Tamanho 450px

Product.ProductImage[].thumbs.180.http

URL Simples da Miniatura de 450px

Product.ProductImage[].thumbs.180.https

URL Segura da Miniatura de 450px

Product.Variant[]

Variações do Produto

Exemplo de resposta com sucesso baseando no envio do exemplo acima:

{
    "Product": {
        "ean": "8882",
        "id": "84",
        "name": "Produto Teste 4",
        "description": "Produto para Teste Automatizado. Produto sem variação.<\/p>\r\n",
        "description_small": "Produto de Teste 4",
        "price": "199.90",
        "promotional_price": "0.00",
        "start_promotion": "0000-00-00",
        "end_promotion": "0000-00-00",
        "brand": "Paginacao",
        "model": "Modelo 3",
        "category_id": "16",
        "available": "1",
        "availability": "Em estoque",
        "hot": "1",
        "release": "0",
        "additional_button": "",
        "has_variation": "",
        "additional_message": "Mensagem.",
        "warranty": "1 ano",
        "rating": "0",
        "count_rating": "0",
        "ProductImage": [
            {
                "http": "http://images.tcdn.com.br/img/img_prod/123/1.png",
                "https": "https://images.tcdn.com.br/img/img_prod/123/1.png",
                "thumbs": {
                    "30": {
                        "http": "http://images.tcdn.com.br/img/img_prod/123/30_1.png",
                        "https": "https://images.tcdn.com.br/img/img_prod/123/30_1.png"
                    },
                    "90": {
                        "http": "http://images.tcdn.com.br/img/img_prod/123/90_1.png",
                        "https": "https://images.tcdn.com.br/img/img_prod/123/90_1.png"
                    },
                    "180": {
                        "http": "http://images.tcdn.com.br/img/img_prod/400636/180_1.png",
                        "https": "https://images.tcdn.com.br/img/img_prod/400636/180_1.png"
                    }
                }
            }
        ],
        "image": "1",
        "url": {
            "http": "http://sualojavirtual.commercesuite.com.br/produto-teste-4-pr.htm",
            "https": "https://sualojavirtual.commercesuite.com.br/produto-teste-4-pr.htm"
        },
        "Properties": [],
        "payment_option": "ou 12x com juros de R$ 18,89",
        "related_categories": [
            "16"
        ],
        "release_date": "0000-00-00",
        "virtual_product": "",
        "Variant": []
    }
}

Attrs

Caso deseje exibir apenas alguns atributos da API, pode-se utilizar o parâmetro attrs.

O parâmetro Attrs deve ser passado pela url da requisição da API, nela você deve passar os atributos da qual deseja exibir separados por (,).

Exemplo:

https://{URL_LOJA}/web_api/products?attrs=Product.ean,Product.price

Terá como resposta o conteúdo abaixo:

 "Products": [
     {
       "Product": {
         "ean": "",
         "id": "110",
         "price": "3000.00"
       }
     },

Abaixo um exemplo de utilização desse parâmetro:

<script type="text/javascript">
  var params = {};

  params["id"] = "2";
  params["attrs"] = "Product.price,Product.ean";

  $.ajax({
    method: "GET",
    url: "/web_api/products/",
    data: params
  }).done(function( response, textStatus, jqXHR ) {
    console.log(response);
  }).fail(function( jqXHR, status, errorThrown ){
    var response = $.parseJSON( jqXHR.responseText );
    console.log(response);
  });
</script>

Listagem de Produtos

Para a listagem de produtos, deverá ser realizada uma requisição via GET.

Podem ser enviados alguns parâmetros nesta integração para realizar filtros na listagem de produtos. Segue abaixo um detalhamento de cada nó do JSON de resposta:

Dados de Entrada
Obrig.
Descrição

id

Não

Código do Produto

name

Não

Nome do Produto

category_id

Não

Categoria do Produto

ean

Não

EAN do Produto

price

Não

Preço do Produto

brand

Não

Marca do Produto

available

Não

Dsiponibilidade do Produto

attrs

Não

Atributos do Produto

created

Não

Data de Criação do Produto

modified

Não

Data de Modificação do Produto

stock

Não

Estoque do Produto

promotion

Não

Produto Promocional

free_shipping

Não

Produto com Frete Grátis

release

Não

Produto em Lançamento

hot

Não

Produto em Destaque

quantity_sold

Não

Quantidade Vendida do Produto

rand

Não

Retornar Produtos Randômicos

sort

Não

Ordenação da Consulta

limit

Não

Quantidade Limite de Registros

page

Não

Página da Consulta

Veja abaixo uma chamada de exemplo listagem de produtos:

<script type="text/javascript">  
    var params = {};

    params["category_id"] = "123";
    params["page"] = "2";
    params["limit"] = "20";

    $.ajax({
        method: "GET",
        url: "/web_api/products/",
        data: params
    }).done(function( response, textStatus, jqXHR ) {
        console.log(response);
    }).fail(function( jqXHR, status, errorThrown ){
        var response = $.parseJSON( jqXHR.responseText );
        console.log(response);
    });
</script>

Na listagem de produtos, a API retorna a resposta em JSON.

Abaixo um detalhamento de cada nó do JSON de resposta:

JSON de Resposta
Descrição

paging

Dados do Produto

paging.total

Total de Registros

paging.page

Páginas corrente

paging.offset

Registro Inicial da Página

paging.limit

Limite de Registros

paging.maxLimit

Máximo de Registros

sort

Ordenação

availableFilters

Filtros Disponíveis

appliedFilters

Filtros Utilizados

Products[]

Lista de Produtos

Products[].Product

Dados do Produto

Products[].Product.ean

EAN do Produto

Products[].Product.id

Código do Produto

Products[].Product.name

Nome do Produto

Products[].Product.price

Preço do Produto

Products[].Product.promotional_price

Preço Promocional do Produto

Products[].Product.start_promotion

Data Inicial da Promoção do Produto

Products[].Product.end_promotion

Data Final da Promoção do Produto

Products[].Product.brand

Marca do Produto

Products[].Product.model

Modelo do Produto

Products[].Product.category_id

Código da Categoria do Produto

Products[].Product.available

Produto Disponível

Products[].Product.availability

Disponibilidade do Produto

Products[].Product.hot

Produto em Destaque

Products[].Product.release

Liberação do Produto

Products[].Product.additional_button

Botão Adicional do Produto

Products[].Product.has_variation

Confirmação de Produto com Variação

Products[].Product.url

Objeto com as URLs do Produto

Products[].Product.url.http

URL Simples do Produto

Products[].Product.url.https

URL Segura do Produto

Products[].Product.payment_option

Informações de Pagamento

Products[].Product.related_categories

Categorias Relacionadas do Produto

Products[].Product.release_date

Data da Liberação do Produto

Products[].Product.virtual_product

Produto Virtual

Products[].Product.ProductImage[]

Imagens do Produto

Products[].Product.ProductImage[].http

URL Simples da Imagem do Produto

Products[].Product.ProductImage[].https

URL Segura da Imagem do Produto

Products[].Product.ProductImage[].thumbs

Miniatura da Imagem do Produto

Products[].Product.ProductImage[].thumbs.30

Miniatura de Tamanho 30px

Products[].Product.ProductImage[].thumbs.30.http

URL Simples da Miniatura de 30px

Products[].Product.ProductImage[].thumbs.30.https

URL Segura da Miniatura de 30px

Products[].Product.ProductImage[].thumbs.90

Miniatura de Tamanho 90px

Products[].Product.ProductImage[].thumbs.90.http

URL Simples da Miniatura de 90px

Products[].Product.ProductImage[].thumbs.90.https

URL Segura da Miniatura de 90px

Products[].Product.ProductImage[].thumbs.180

Miniatura de Tamanho 180px

Products[].Product.ProductImage[].thumbs.180.http

URL Simples da Miniatura de 180px

Products[].Product.ProductImage[].thumbs.180.https

URL Segura da Miniatura de 180px

Products[].Product.Variant[]

Variações do Produto

Exemplo de resposta com sucesso baseando no envio do exemplo acima:

{
    "paging": {
        "total": 201,
        "page": 1,
        "offset": 0,
        "limit": 1,
        "maxLimit": 50
    },
    "sort": [ { "id": "asc" } ],
    "availableFilters": [
        "id", "name", "category_id", "ean", "available", "price",
        "brand", "model", "hot", "quantity_sold", "release",
        "free_shipping", "weight", "image", "release_date", "stock",
        "promotion", "modified", "created" ],
    "appliedFilters": [],
    "Products": [
        {
            "Product": {
                "ean": "8882",
                "id": "84",
                "name": "Produto Teste 4",
                "price": "199.90",
                "promotional_price": "0.00",
                "start_promotion": "0000-00-00",
                "end_promotion": "0000-00-00",
                "brand": "Paginacao",
                "model": "Modelo 3",
                "category_id": "16",
                "available": "1",
                "availability": "Em estoque",
                "hot": "1",
                "release": "0",
                "additional_button": "",
                "has_variation": "",
                "url": {
                    "http": "http://sualoja.commercesuite.com.br/produto1.htm",
                    "https": "https://sualoja.commercesuite.com.br/produto1.htm"
                },
                "payment_option": "ou 12x com juros de R$ 18,89",
                "related_categories": ["16"],
                "release_date": "0000-00-00",
                "virtual_product": "",
                "ProductImage": [{
                    "http": "http://images.tcdn.com.br/img/img_prod/123/1.png",
                    "https": "https://images.tcdn.com.br/img/img_prod/123/1.png",
                    "thumbs": {
                        "30": {
                            "http": "http://images.tcdn.com.br/img/img_prod/123/30_1.png",
                            "https": "https://images.tcdn.com.br/img/img_prod/123/30_1.png"
                        },
                        "90": {
                            "http": "http://images.tcdn.com.br/img/img_prod/123/90_1.png",
                            "https": "https://images.tcdn.com.br/img/img_prod/123/90_1.png"
                        },
                        "180": {
                            "http": "http://images.tcdn.com.br/img/img_prod/132/180_1.png",
                            "https": "https://images.tcdn.com.br/img/img_prod/123/180_1.png"
                        }
                    }
                } ],
                "Variant": []
            }
        }
    ]
}
PreviousCategoriasNextVariações de Produto

Last updated 2 years ago

Was this helpful?

Para mais detalhes sobre a API de produtos acesse o link da documentação

🧱
https://developers.tray.com.br/?java#api-de-produtos