tray-imagens-produtos
API de Imagens de Produtos e Variações da Tray. Utilize quando o desenvolvedor precisar fazer upload, atualizar ou remover imagens de produtos e variações. Inclui formatos aceitos, método de envio e p
Files1
View on GitHubSKILL.mdskills/imagens-produtos/SKILL.md
GitHubAPI de Imagens de Produtos e Variações — Tray
Documentação oficial: https://developers.tray.com.br/#apis-de-imagens-de-produtos-e-variacoes
Endpoints
| Método | Endpoint | Descrição |
|---|---|---|
| POST | /products/:id/images |
Cadastro e atualização de imagem do produto |
| POST | /variants/:id/images |
Cadastro e atualização de imagem da variação |
| POST | /images/remove |
Remoção de imagens |
Autenticação: ?access_token={token}
Envio de Imagens
As imagens podem ser enviadas de duas formas:
Via URL
{
"ProductImage": {
"image_url": "https://exemplo.com/imagem.jpg"
}
}
Via Base64
{
"ProductImage": {
"image_base64": "data:image/jpeg;base64,/9j/4AAQSk..."
}
}
Campos
| Campo | Tipo | Descrição |
|---|---|---|
image_url |
string | URL pública da imagem |
image_base64 |
string | Imagem codificada em Base64 |
position |
number | Posição/ordem da imagem (1 = principal) |
Thumbnails Gerados
Após o upload, a Tray gera automaticamente thumbnails em 3 tamanhos:
| Tamanho | Uso |
|---|---|
| 30px | Miniatura/ícone |
| 90px | Lista de produtos |
| 180px | Exibição média |
Cada thumbnail é disponibilizado em HTTP e HTTPS.
Remoção de Imagens
Para remover imagens, envie um POST para /images/remove com o ID da imagem.
Boas Práticas
- Faça upload sequencialmente — evite paralelismo excessivo para não exceder o rate limit
- Use URLs quando possível — evita o overhead de Base64 (33% maior)
- Defina a posição — a imagem de posição 1 é a imagem principal do produto
- Formatos aceitos — JPG, PNG, GIF
Como Usar no Claude Code
Exemplos de Prompt
- "faz upload das imagens para o produto 123 a partir de URLs"
- "define a imagem principal do produto e mais 3 imagens secundárias"
- "como envio imagens de variações separadas do produto?"
- "remove a imagem ID 55 do produto"
O que o Claude faz
- Gera o código de upload via URL ou Base64 conforme o caso
- Define o campo
position(1 = principal, 2, 3... para as demais) - Diferencia o endpoint de produto (
/products/:id/images) do de variação (/variants/:id/images) - Explica os thumbnails gerados automaticamente (30px, 90px, 180px)
O que você recebe
- Código de upload com wrapper
{"ProductImage": {...}}correto - Lógica de posicionamento para múltiplas imagens
- Exemplos separados para produto e variação
- Código de remoção via
/images/remove
Pré-requisitos
- Produto ou variação já cadastrado com ID disponível
- URLs das imagens públicas e acessíveis (para envio via URL)
access_tokenconfigurado