Quer o provador na sua loja?

Conte o nome da marca e a plataforma. A demonstração usa peças da sua loja.

Desenvolvedores

Provador por foto em uma chamada

Mande a foto da pessoa e de 1 a 3 peças. Volta uma imagem com o look inteiro, roupa e sapato juntos.

Começar

  1. Crie a conta e uma chave secreta sk_test_ no painel. A de teste não gasta saldo e marca o resultado com test: true.
  2. Mande a foto e as peças para POST /v1/tryon, do seu servidor.
  3. Pegue o resultado em GET /v1/jobs/{id} ou num webhook_url. A URL da imagem é assinada e expira.
curl https://api.weseti.com/v1/tryon \
  -H "Authorization: Bearer $WESETI_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "person_image": { "url": "https://exemplo.com/fotos/pessoa.jpg" },
    "garments": [
      { "image_url": "https://exemplo.com/fotos/vestido.jpg", "name": "Vestido envelope", "slot": "dress" }
    ],
    "consent": { "adult": true, "own_photo": true }
  }'
# 202 { "job_id": "job_…", "status": "queued", "test": true }

curl https://api.weseti.com/v1/jobs/job_… \
  -H "Authorization: Bearer $WESETI_SECRET_KEY"
# 200 { "status": "succeeded", "result": { "url": "https://…", "expires_at": "…" } }

O pedido

person_image{ "url": "https://…" } ou { "base64": "…", "content_type": "image/jpeg" }. Corpo inteiro, uma pessoa.garmentsDe 1 a 3 peças, uma por slot: top, bottom, dress, outerwear, shoes. Sem slot, ele sai do name. dress não combina com top nem bottom.consentObrigatório: { "adult": true, "own_photo": true }. A pessoa da foto é maior de idade e mandou a própria foto.webhook_urlOpcional. Recebe job.completed. Sem ele, use GET /v1/jobs/{id}.Idempotency-KeyCabeçalho opcional. Repetir o pedido em 24 h devolve o mesmo job.

Imagens por URL: só https, até 10 MB, JPEG, PNG ou WebP, 10 s para baixar. Endereço interno é recusado, inclusive depois de redirecionar.

Respostas

202Na fila: { "job_id", "status": "queued", "test" }.400 validation_failedCorpo inválido ou imagem fora do formato.400 slot_conflictDuas peças no mesmo slot, ou dress com top ou bottom.401 unauthorizedSem chave secreta, ou chave revogada.402 insufficient_creditsSem saldo. Adicione crédito por Pix no painel.402 plan_limit_reachedO plano chegou ao limite do mês. details.url leva aos planos.403 billing_managed_by_platformConta cobrada pela Shopify ou Nuvemshop: sem Pix aqui.422 consent_requiredFaltou o consent com adult e own_photo.422 photo_rejectedA foto não serve: corpo inteiro, uma pessoa, boa luz.429 rate_limitedEspere o Retry-After, em segundos.451 region_unavailableO provador não funciona na região de quem pediu.

Na loja

O botão “Experimentar em mim” em duas linhas, com a chave pública presa ao domínio da loja. selector: 'auto' acha o “Comprar” pelo texto.

<script>window.weseti=window.weseti||[];weseti.push(['init',{publicKey:'pk_live_…',selector:'auto'}]);</script>
<script src="https://cdn.weseti.com/sdk/weseti.js" async></script>

Shopify, Nuvemshop, VTEX, WooCommerce e Google Tag Manager: o passo a passo de cada um fica em Integrações, no painel.

Provador em página própria, para apps de plataforma: /t/<chave pública>/<id do produto>?return=<página do produto>.

Referência

SDKs e ferramentas

weseti.jsEm breveO botão e o provador no navegador. ESM, IIFE e tipos.
PythonEm breveCliente da API para o seu servidor.
Servidor MCPEm breveProvador, catálogo e uso dentro do Claude, do Cursor e de outros agentes.
PostmanEm breveColeção gerada do contrato OpenAPI, com exemplos.

Dados

Foto apagada pela Weseti em até 15 min; a OpenAI pode guardar até 30 dias contra abuso. A OpenAI não usa a foto para treinar modelos.

Mais em Privacidade, Suboperadores, Termos e Suporte.