VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Qualidade do catálogo

Propostas: aprovar e aplicar

Lista as propostas da IA, compara atual contra proposto, aprova ou rejeita e grava as aprovadas nos produtos.

Quando o trabalho chega a review, cada produto tem uma proposta. Decida uma a uma, ou aprove tudo de uma vez e rejeite só as que não servem. Nada muda nos produtos até o apply.

Listar propostas

GET/api/v1/vendor/catalog-quality/fix-jobs/{id}/itemsSeller

Listar as propostas

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller (veja Tokens).

Parâmetros de caminho

idstring (uuid)obrigatório
Id do trabalho de revisão (job_id).

Exemplo de requisição (listar)

bash
curl "$BASE_URL/api/v1/vendor/catalog-quality/fix-jobs/$JOB_ID/items" \
  -H "Authorization: Bearer $TOKEN"

Resposta (listar)

200Propostas
json
{
  "items": [
    {
      "id": "11a22b33-0001-4c4d-8e5f-6a7b8c9d0e1f",
      "job_id": "8c7b6a50-0001-4d2e-9f3a-4b5c6d7e8f90",
      "product_id": "7bc1d5e9-a9a4-457b-866f-bbb3879d258d",
      "name": "Camiseta Básica Algodão Preta",
      "proposed": {
        "description": "<p>Camiseta 100% algodão penteado, macia e durável.</p>",
        "seo_title": "Camiseta Básica Algodão Preta | Loja Seller"
      },
      "current": {
        "description": "<p>Camiseta 100% algodão.</p>",
        "short_desc": "Camiseta 100% algodão",
        "seo_title": "",
        "seo_description": ""
      },
      "status": "proposed"
    }
  ],
  "total": 1
}

Campos da resposta

itemsarray

Uma proposta por produto do trabalho.

idstring (uuid)
Id da proposta.
job_idstring (uuid)
Trabalho.
product_idstring (uuid)
Produto.
namestring
Nome do produto.
proposedobject
Valores propostos, por campo (description, short_desc, seo_title, seo_description).
currentobject
Valores atuais dos mesmos quatro campos, para comparar.
statusstring
pendingproposedapprovedrejectedappliedfailed
Estado da proposta.
errorstring
Motivo da falha, quando failed.
totalinteger
Quantidade.

Erros (listar)

StatusQuandoCorpo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403Token que não é de seller, ou usuário sem o privilégio exigido pela rota.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_catalog"]}
404O trabalho não existe ou é de outro seller.{"error":"not found"}

Aprovar uma

POST/api/v1/vendor/catalog-quality/fix-jobs/{id}/items/{itemId}/approveSeller

Aprovar uma proposta

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller (veja Tokens).

Parâmetros de caminho

idstring (uuid)obrigatório
Id do trabalho de revisão (job_id).
itemIdstring (uuid)obrigatório
Id da proposta (id na lista).

Exemplo de requisição (aprovar)

bash
curl -X POST "$BASE_URL/api/v1/vendor/catalog-quality/fix-jobs/$JOB_ID/items/$ITEM_ID/approve" \
  -H "Authorization: Bearer $TOKEN"

Resposta (aprovar)

200Aprovada
json
{
  "status": "approved"
}

Campos da resposta

statusstring
approved.

Erros (aprovar)

StatusQuandoCorpo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403Token que não é de seller, ou usuário sem o privilégio exigido pela rota.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_catalog"]}
404O trabalho não existe ou é de outro seller.{"error":"not found"}
422A proposta não existe no trabalho ou já foi aplicada/falhou.{"error":"failed","detail":"item not found or not reviewable"}

Rejeitar uma

POST/api/v1/vendor/catalog-quality/fix-jobs/{id}/items/{itemId}/rejectSeller

Rejeitar uma proposta

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller (veja Tokens).

Parâmetros de caminho

idstring (uuid)obrigatório
Id do trabalho de revisão (job_id).
itemIdstring (uuid)obrigatório
Id da proposta (id na lista).

Exemplo de requisição (rejeitar)

bash
curl -X POST "$BASE_URL/api/v1/vendor/catalog-quality/fix-jobs/$JOB_ID/items/$ITEM_ID/reject" \
  -H "Authorization: Bearer $TOKEN"

Resposta (rejeitar)

200Rejeitada
json
{
  "status": "rejected"
}

Campos da resposta

statusstring
rejected.

Erros (rejeitar)

StatusQuandoCorpo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403Token que não é de seller, ou usuário sem o privilégio exigido pela rota.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_catalog"]}
404O trabalho não existe ou é de outro seller.{"error":"not found"}
422A proposta não existe no trabalho ou já foi aplicada/falhou.{"error":"failed","detail":"item not found or not reviewable"}

Aprovar todas

POST/api/v1/vendor/catalog-quality/fix-jobs/{id}/approve-allSeller

Aprovar todas as propostas

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller (veja Tokens).

Parâmetros de caminho

idstring (uuid)obrigatório
Id do trabalho de revisão (job_id).

Exemplo de requisição (aprovar todas)

bash
curl -X POST "$BASE_URL/api/v1/vendor/catalog-quality/fix-jobs/$JOB_ID/approve-all" \
  -H "Authorization: Bearer $TOKEN"

Resposta (aprovar todas)

200Aprovadas
json
{
  "approved": 2
}

Campos da resposta

approvedinteger
Quantas propostas passaram de proposed para approved.

Erros (aprovar todas)

StatusQuandoCorpo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403Token que não é de seller, ou usuário sem o privilégio exigido pela rota.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_catalog"]}
404O trabalho não existe ou é de outro seller.{"error":"not found"}

Aplicar

Grava nos produtos as propostas aprovadas. É a única chamada deste fluxo que altera os produtos. Propostas que falham ao gravar ficam failed e as demais seguem.

POST/api/v1/vendor/catalog-quality/fix-jobs/{id}/applySeller

Aplicar as propostas aprovadas

Cabeçalhos

Authorizationstringobrigatório
Bearer $TOKEN. Token de acesso do usuário seller (veja Tokens).

Parâmetros de caminho

idstring (uuid)obrigatório
Id do trabalho de revisão (job_id).

Exemplo de requisição (aplicar)

bash
curl -X POST "$BASE_URL/api/v1/vendor/catalog-quality/fix-jobs/$JOB_ID/apply" \
  -H "Authorization: Bearer $TOKEN"

Resposta (aplicar)

200Aplicadas
json
{
  "applied": 2
}

Campos da resposta

appliedinteger
Quantas propostas foram gravadas.

Erros (aplicar)

StatusQuandoCorpo
401Token ausente, inválido ou expirado.{"error":"missing authorization header"}
403Token que não é de seller, ou usuário sem o privilégio exigido pela rota.{"error":"insufficient vendor privileges","privilege_required_any":["vendor_catalog"]}
403O recurso de preenchimento por IA não está disponível na loja.{"error":"ai fix unavailable","detail":"AI Product Fill is not available"}
404O trabalho não existe ou é de outro seller.{"error":"not found"}
Conferir antes de aplicar

O texto da IA pode ter erros de fato (medidas, materiais, promessas). Leia proposed contra current antes de aprovar, principalmente em description, que vai direto para a página do produto. A gravação passa pelas mesmas regras de moderação de uma edição normal.

Veja também

  • Qualidade do catálogo: visão geral
Anterior
Trabalhos de revisão
Próxima
Selos, kits, mixes e caixas
Nesta página
  • Listar propostas
  • Exemplo de requisição (listar)
  • Resposta (listar)
  • Erros (listar)
  • Aprovar uma
  • Exemplo de requisição (aprovar)
  • Resposta (aprovar)
  • Erros (aprovar)
  • Rejeitar uma
  • Exemplo de requisição (rejeitar)
  • Resposta (rejeitar)
  • Erros (rejeitar)
  • Aprovar todas
  • Exemplo de requisição (aprovar todas)
  • Resposta (aprovar todas)
  • Erros (aprovar todas)
  • Aplicar
  • Exemplo de requisição (aplicar)
  • Resposta (aplicar)
  • Erros (aplicar)
  • Veja também