Controlar o lote
Pausa, retoma ou cancela um lote de enriquecimento com IA em andamento.
Estas três operações mudam o estado de um lote enquanto ele roda. Use pausar para segurar a geração (por exemplo, para não gastar durante o horário de pico) e retomar para continuar de onde parou. Use cancelar quando o lote não faz mais sentido: os itens que ainda não foram gerados são descartados.
As três respondem com o lote já atualizado e exigem manage_ai_tools ou manage_catalog. Não recebem corpo.
/api/v1/admin/ai-product-fill/batches/{id}/pauseAdminPausa o lote
Muda o status para paused. A geração para depois dos itens que já estão em andamento. As propostas já geradas continuam disponíveis para revisão.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição (pausar)
curl -X POST "$BASE_URL/api/v1/admin/ai-product-fill/batches/7d87db3d-2682-42f5-9c40-a91d94e7bf98/pause" \
-H "Authorization: Bearer $TOKEN"Resposta (pausar)
{
"id": "7d87db3d-2682-42f5-9c40-a91d94e7bf98",
"filter": { "category_ids": [], "vendor_id": null, "empty_description": true, "no_features": false, "include_disabled": false },
"fields": ["description", "features"],
"auto_apply_fields": [],
"status": "paused",
"total_items": 1873,
"done_items": 412,
"failed_items": 0,
"score_before": 53.4,
"score_after": null,
"created_at": "2026-07-13T03:11:04.869808Z"
}Os campos da resposta são os mesmos do lote.
Erros (pausar)
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Lote inexistente, ou o id não é um UUID válido. A mensagem é a do banco. | {"error":"sql: no rows in result set"} |
| 401 | Token ausente, inválido ou expirado. | {"error":"invalid or expired token"} |
| 403 | Sem manage_ai_tools nem manage_catalog. | {"error":"insufficient privileges","privilege_required_any":["manage_ai_tools","manage_catalog"]} |
/api/v1/admin/ai-product-fill/batches/{id}/resumeAdminRetoma o lote
Muda o status para running e reinicia a geração dos itens ainda em queued.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição (retomar)
curl -X POST "$BASE_URL/api/v1/admin/ai-product-fill/batches/7d87db3d-2682-42f5-9c40-a91d94e7bf98/resume" \
-H "Authorization: Bearer $TOKEN"Resposta (retomar)
{
"id": "7d87db3d-2682-42f5-9c40-a91d94e7bf98",
"filter": { "category_ids": [], "vendor_id": null, "empty_description": true, "no_features": false, "include_disabled": false },
"fields": ["description", "features"],
"auto_apply_fields": [],
"status": "running",
"total_items": 1873,
"done_items": 412,
"failed_items": 0,
"score_before": 53.4,
"score_after": null,
"created_at": "2026-07-13T03:11:04.869808Z"
}Os campos da resposta são os mesmos do lote.
Erros (retomar)
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Lote inexistente, ou o id não é um UUID válido. A mensagem é a do banco. | {"error":"sql: no rows in result set"} |
| 401 | Token ausente, inválido ou expirado. | {"error":"invalid or expired token"} |
| 403 | Sem manage_ai_tools nem manage_catalog. | {"error":"insufficient privileges","privilege_required_any":["manage_ai_tools","manage_catalog"]} |
/api/v1/admin/ai-product-fill/batches/{id}/cancelAdminCancela o lote
Muda o status para cancelled e marca como cancelled todos os itens que ainda estavam em queued. Itens generated, approved e applied não mudam.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição (cancelar)
curl -X POST "$BASE_URL/api/v1/admin/ai-product-fill/batches/7d87db3d-2682-42f5-9c40-a91d94e7bf98/cancel" \
-H "Authorization: Bearer $TOKEN"Resposta (cancelar)
{
"id": "7d87db3d-2682-42f5-9c40-a91d94e7bf98",
"filter": { "category_ids": [], "vendor_id": null, "empty_description": true, "no_features": false, "include_disabled": false },
"fields": ["description", "features"],
"auto_apply_fields": [],
"status": "cancelled",
"total_items": 1873,
"done_items": 412,
"failed_items": 0,
"score_before": 53.4,
"score_after": null,
"created_at": "2026-07-13T03:11:04.869808Z"
}Os campos da resposta são os mesmos do lote.
Erros (cancelar)
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Lote inexistente, ou o id não é um UUID válido. A mensagem é a do banco. | {"error":"sql: no rows in result set"} |
| 401 | Token ausente, inválido ou expirado. | {"error":"invalid or expired token"} |
| 403 | Sem manage_ai_tools nem manage_catalog. | {"error":"insufficient privileges","privilege_required_any":["manage_ai_tools","manage_catalog"]} |