Descrição de produto para loja virtual
Esta ferramenta transforma os dados crus do produto — nome, medidas, material, diferencial — em uma descrição pronta para loja virtual ou marketplace. Você envia a ficha pela API e recebe título e texto de venda para cada item. Funciona para catálogo de qualquer tamanho: de dez produtos a dez mil.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
O problema da descrição copiada do fornecedor
Quem revende costuma anunciar com o texto que veio do fornecedor — o mesmo texto de outros duzentos vendedores. O resultado é conhecido: o anúncio não se diferencia em nada, o Google trata tudo como conteúdo duplicado e a decisão do comprador vira só preço. Uma descrição própria, escrita a partir dos atributos reais do produto e do seu diferencial de loja, é a forma mais barata de sair dessa guerra.
O que sai para cada item
Para cada ficha enviada, a ferramenta gera título de anúncio, um parágrafo de venda e os benefícios em tópicos — tudo derivado dos atributos que você mandou. Ela não inventa característica: se a ficha não diz que o tecido tem proteção UV, a descrição não vai dizer. Isso é proposital; em marketplace, prometer o que o produto não entrega significa devolução, avaliação negativa e reclamação registrada.
Catálogo inteiro, uma chamada por item
O fluxo em lote é simples: exporte o catálogo do seu ERP ou da planilha, faça uma chamada por item para /text/product-description e grave os resultados de volta. Cada chamada devolve um task_id, então dá para disparar centenas em paralelo e recolher tudo depois. Também dá para pedir estilos diferentes por canal — mais direto no marketplace, mais completo na loja própria — sem tocar na ficha original.
Preço publicado, sem surpresa
Cada item custa US$ 0,003 pela chamada mais US$ 0,0135 pela descrição gerada — cerca de US$ 0,0165 por produto, em dólar americano. Um catálogo de 500 itens sai por aproximadamente US$ 8,25, gerado em minutos. Não há plano, franquia nem cobrança escondida: o preço está publicado na página e é o que aparece na sua conta, item por item.
Casos de uso
Vendedor do Mercado Livre preso no texto do fornecedor
Rafael Almeida Costa vende peças de moto no Mercado Livre com 300 anúncios idênticos aos dos concorrentes — todos copiaram a mesma ficha. Ele exportou a planilha, acrescentou uma coluna com o diferencial de cada peça (original, garantia, envio no mesmo dia) e regenerou as 300 descrições em uma tarde. Agora os anúncios dele dizem algo que os outros não dizem.
Loja de moda na Shopee
Uma loja de Belo Horizonte sobe 40 peças novas por semana na Shopee. A ficha de cada peça — tecido, medidas, cores — entra na API e volta como descrição curta no tom da marca, com os cuidados de lavagem no final. O que tomava a tarde de sábado da dona virou um clique no fim do cadastro.
Distribuidora com catálogo B2B de 2.000 itens
A Distribuidora Horizonte Verde S.A. herdou um catálogo com descrições desiguais: umas longas, outras vazias, várias em caixa alta. O time exportou os 2.000 itens, normalizou tudo via API com um padrão único — resumo técnico mais aplicação recomendada — e o portal B2B passou a ter cara de catálogo profissional, não de colagem.
Perguntas frequentes
A ferramenta inventa características que o produto não tem?
Não — ela escreve a partir da ficha que você enviar. Se a ficha for pobre, a descrição sai correta porém genérica; o caminho é enriquecer os atributos de entrada, não torcer para a IA adivinhar.
Funciona para Mercado Livre, Shopee e Amazon?
Sim. Indique o canal na chamada e a descrição sai no formato e no tamanho adequados. As regras de cada marketplace mudam com frequência, então vale conferir os limites vigentes antes de publicar em massa.
Usar a mesma descrição em várias lojas atrapalha o SEO?
Atrapalha: conteúdo duplicado faz suas próprias páginas competirem entre si no Google. Peça uma variação por canal — a ficha é a mesma, a redação muda — e cada página passa a ter texto próprio.
Como é cobrado um catálogo grande?
Por item, sem pacote: US$ 0,003 + US$ 0,0135 por descrição. Mil itens custam cerca de US$ 16,50, pagos em dólar via PayPal. Não tem assinatura nem valor mínimo.
Meus dados de catálogo ficam protegidos?
As fichas são processadas apenas para gerar as descrições daquela chamada e os resultados ficam acessíveis pelo task_id de quem pediu. Nada do seu catálogo é exposto nem compartilhado com terceiros.
Posso pedir um tom diferente por categoria?
Pode. O tom vai na chamada, então nada impede que a linha infantil saia lúdica e a linha profissional saia técnica — mesmo catálogo, instruções diferentes.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/text/product-description \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/text/product-description", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/product-description",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/product-description", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/product-description", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"items": [
"valor-1",
"valor-2"
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.product_description",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_tokens | 20000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
422 | task_failed | A tarefa falhou do nosso lado. Você não paga nada por ela. |