From tray-api
Manages Tray e-commerce shopping carts via 6 API endpoints: create, retrieve, update, delete carts including product kits. For cart operations like add/remove items or abandoned carts.
npx claudepluginhub tray-tecnologia/tray-api-ai-plugin --plugin tray-apiThis skill uses the workspace's default tool permissions.
> Execute estas verificações antes de gerar qualquer payload ou código:
Monitors deployed URLs for regressions after deploys, merges, or upgrades by checking HTTP status, console errors, network failures, performance (LCP/CLS/INP), content, and API health.
Share bugs, ideas, or general feedback.
Execute estas verificações antes de gerar qualquer payload ou código:
access_token não aparece como literal string no código gerado.when_not_to_use no frontmatter).API para gerenciamento de carrinhos de compras na plataforma Tray.
Referência oficial: https://developers.tray.com.br/#apis-de-carrinho-de-compra
Todas as requisições utilizam query string para autenticação:
?access_token={token}
| Método | Endpoint | Descrição |
|---|---|---|
| GET | /carts/{session_id}?access_token={token} | Obter dados do carrinho |
| GET | /carts/{session_id}/complete?access_token={token} | Obter dados completos do carrinho |
| POST | /carts?access_token={token} | Criar carrinho |
| POST | /carts/kit?access_token={token} | Criar carrinho com kit de produtos |
| PUT | /carts/{session_id}?access_token={token} | Atualizar carrinho |
| DELETE | /carts/{session_id}?access_token={token} | Excluir carrinho |
| Campo | Tipo | Descrição |
|---|---|---|
customer_id | integer | ID do cliente associado ao carrinho |
product_id | integer | ID do produto |
variant_id | integer | ID da variação do produto |
quantity | integer | Quantidade do item |
session_id | string | Identificador da sessão do carrinho |
total | decimal | Valor total do carrinho |
subtotal | decimal | Subtotal do carrinho (sem frete e descontos) |
shipping_cost | decimal | Custo do frete |
coupon_code | string | Código do cupom de desconto aplicado |
GET /carts/abc123session?access_token={token}
Resposta:
{
"Cart": {
"session_id": "abc123session",
"customer_id": "456",
"subtotal": "250.00",
"shipping_cost": "15.00",
"total": "265.00",
"coupon_code": "",
"Products": [
{
"product_id": "789",
"variant_id": "101",
"quantity": "2",
"price": "125.00"
}
]
}
}
POST /carts?access_token={token}
Content-Type: application/json
{
"Cart": {
"customer_id": 456,
"product_id": 789,
"variant_id": 101,
"quantity": 2
}
}
POST /carts/kit?access_token={token}
Content-Type: application/json
{
"Cart": {
"customer_id": 456,
"kit_id": 10,
"products": [
{"product_id": 789, "variant_id": 101, "quantity": 1},
{"product_id": 790, "variant_id": 102, "quantity": 1}
]
}
}
PUT /carts/abc123session?access_token={token}
Content-Type: application/json
{
"Cart": {
"product_id": 789,
"variant_id": 101,
"quantity": 5
}
}
DELETE /carts/abc123session?access_token={token}
/carts/{session_id}/complete quando precisar de todas as informações do carrinho, incluindo detalhes de produtos e frete.session_id é o identificador único do carrinho — armazene-o de forma segura na sessão do usuário.coupon_code, valide se o cupom existe e está ativo utilizando a API de cupons.Cart e os campos necessáriosPOST /carts (produto simples) de POST /carts/kit (bundle)/carts/{session_id}/complete para consultas com dados completos de produtos e fretesession_id na sessão do usuáriocustomer_id, product_id e quantityaccess_token configuradocustomer_id do cliente (ou sessão anônima)product_id e variant_id dos produtos