Pular para o conteúdo
sellumeDOCS · INTEGRADORES Portal do integrador

Produção

Galerias

Uma galeria de imagens do produto (3, 6 ou 10), feita a partir da ficha aprovada na conferência.

Antes de pedir#

  1. A versão atual do produto precisa estar aprovada na conferência para galeria (Requisitos da ficha).
  2. A quantidade pedida precisa estar em quantidadesAprovadas do resultado da conferência.

Senão, a resposta é 422 — PRODUCT_NOT_VERIFIED ou PRODUCT_REQUIREMENTS_NOT_MET — e nada é reservado.

Pedir#

POST/galerias com Idempotency-Key (um valor novo por pedido):

bash
curl -s -X POST $B/galerias -H "Authorization: Bearer $K" \
  -H "Idempotency-Key: $(uuidgen)" -H 'content-type: application/json' \
  -d '{"produtoId":"prd_01J9Z7A1B2C3D4E5F6G7H8J9K0","quantidadeImagens":6,"referenciaExterna":"pedido-erp-55120"}'
CampoObrigatórioRegra
produtoIdsimprd_…
quantidadeImagenssim3, 6 ou 10, entre as aprovadas na conferência
objetivonãoconversao (padrão)
referenciaExternanãocódigo livre seu, até 120 caracteres; volta no extrato e nos avisos

A resposta é 202 com o id (ger_…), a situacao (na_fila ou gerando) e os creditosReservados. O cabeçalho Location aponta para a consulta.

Nenhum pedido é recusado por capacidade: o plano define quantas gerações rodam ao mesmo tempo, e as outras esperam na fila com o crédito reservado. Na fila, a geração traz fila.posicao, fila.naFrente e fila.esperaEstimadaSegundos (tempo estimado para começar).

Acompanhar#

Toda geração é assíncrona. Duas formas de saber quando terminou:

  • Aviso geracao.concluida ou geracao.falhou no seu endereço (Avisos). É o jeito recomendado. Quando sai da fila, chega geracao.iniciada.
  • Consulta a GET/geracoes/{geracaoId} a cada 5 a 10 segundos.
situacaoQuer dizer
na_filarecebida, esperando a vez (fila.posicao e fila.esperaEstimadaSegundos)
gerandoem produção (progresso.etapa e progresso.percentual)
concluidatudo entregue
parcialparte entregue; cobra só o que foi entregue
falhounada entregue; créditos devolvidos
canceladacancelada antes de começar

Cancelar#

POST/geracoes/{geracaoId}/cancelar cancela só enquanto a geração está na_fila; os créditos voltam. Depois que começou (gerando), ou se um fornecedor de geração já foi chamado para o pedido, a resposta é 409 CONFLICT e a geração segue até o fim (só é cobrada se for entregue).

Baixar o resultado#

resultados.imagens[] traz id (img_…), posicao, url, expiraEm, largura, altura e formato. Os links são assinados e temporários: baixe e guarde do seu lado. Para links novos, consulte a geração de novo. A lista GET/geracoes não traz links; use o detalhe.

Com o id de uma imagem entregue você pode pedir uma edição.

Cobrança#

  • Os créditos são reservados na carteira do integrador no pedido, no preço do seu contrato.
  • A cobrança só é liquidada na entrega. Entrega parcial cobra só as imagens entregues.
  • Falha do Sellume devolve os créditos.
  • Sem crédito suficiente: 402 INSUFFICIENT_CREDITS, nada cobrado (Planos e cobrança).
  • Repetir o pedido com a mesma Idempotency-Key e o mesmo corpo não cobra de novo (Idempotência).

No teste (sk_test_), a galeria devolve imagens de exemplo, no mesmo formato, sem gastar crédito.

Erros comuns#

StatusCódigoO que fazer
400IDEMPOTENCY_KEY_REQUIREDenvie Idempotency-Key
402INSUFFICIENT_CREDITScompre um pacote avulso ou espere o próximo ciclo
409IDEMPOTENCY_KEY_REUSEDmesma chave com outro corpo: gere uma chave nova
422PRODUCT_REQUIREMENTS_NOT_METcorrija as pendências de fields e confira de novo
503SERVICE_UNAVAILABLEtente depois do Retry-After; nada cobrado