Pular para o conteúdo

Referência de erros

Toda resposta de erro tem o mesmo formato. Código de status + code legível por máquina + mensagem para humanos + field opcional apontando a entrada com problema.

Envelope

{
  "success": false,
  "error": "Content length (5000) exceeds maximum allowed (4296 characters).",
  "code": "CONTENT_TOO_LONG",
  "field": "content"
}

Códigos de status HTTP

StatusSignificado
200Sucesso
400Erro de validação — corrija a entrada e tente de novo
401Cabeçalho de autenticação ausente ou incorreto
402Gateway de chaves de usuário: falta o plano Studio ou os créditos de API acabaram
404Endpoint não encontrado
413Corpo grande demais (>10 MB) ou, no gateway de chaves de usuário, um arquivo gerado com mais de 10 MB (output_too_large)
422O motor não conseguiu produzir um QR legível nem depois da correção automática (QR_UNSCANNABLE), ou a saída passaria do orçamento (OUTPUT_TOO_COMPLEX)
429Limite de requisições — veja Retry-After
500Interno — registre e tente de novo
503Servidor ocupado (muitas renderizações grandes simultâneas) ou provedores de IA sem capacidade (AI_QUOTA_EXCEEDED)

Erros de validação (400)

CódigoSignificado
MISSING_REQUIRED_FIELDcontent (ou prompt nos endpoints de IA) está vazio
CONTENT_TOO_LONGConteúdo codificado com mais de 4296 caracteres (máximo teórico de um QR)
INVALID_JSONO corpo não pode ser interpretado como JSON
INVALID_HEXUma cor não está no formato #RGB, #RRGGBB ou #RRGGBBAA
INVALID_FIELD_VALUEGenérico — field indica qual
VALUE_OUT_OF_RANGECampo numérico fora dos limites documentados
LOW_CONTRASTPrimeiro plano vs fundo abaixo de 4:1; o motor não consegue corrigir automaticamente
LOGO_TOO_LARGElogoSizePercent acima de 25 com ECC abaixo de H
FILE_TOO_LARGEEnvio multipart com mais de 10 MB
MULTIPART_CONFIG_MISSINGCampo config ausente na requisição form-data

Erros de autenticação (401)

CódigoSignificado
UNAUTHORIZEDX-RapidAPI-Proxy-Secret ausente ou incorreto
INVALID_INTERNAL_SIGNATUREO HMAC do BFF não passou na verificação
INTERNAL_TS_EXPIREDTimestamp do BFF fora da janela de ±60s
LLM_API_KEY_INVALIDA chave do seu provedor (só no endpoint de IA do marketplace)

Erros do gateway de chaves de usuário

O gateway https://qr-branding.com/api/v1/* (Chaves de API do usuário) adiciona seus próprios códigos, em minúsculas, com o mesmo envelope success / error / code:

StatusCódigoSignificado
400invalid_bodyNão foi possível interpretar o corpo
401missing_api_keyFalta o cabeçalho X-API-Key
401invalid_api_keyChave não reconhecida, revogada ou malformada
402studio_requiredA chave é válida, mas a conta não tem um pacote Studio ativo. Inclui os links docs e pricing
402out_of_api_creditsGeração com IA nas nossas chaves sem créditos Studio restantes. Inclui os links docs e pricing
413payload_too_largeCorpo com mais de 1 MiB
413output_too_largeO arquivo gerado tem mais de 10 MB. Peça PNG ou um outputWidth menor
415multipart_not_supportedO gateway só aceita JSON

Erros do pagamento

POST /api/checkout (o botão de compra em /pricing) responde { "error": "withdrawal_waiver_required" } quando falta o consentimento:

StatusCódigoSignificado
400withdrawal_waiver_requiredA caixa anterior ao pagamento (consentimento e renúncia ao direito de arrependimento) não foi marcada. Veja Preços e créditos

Erros de geração com IA

CódigoSignificado
AI_GENERATION_FAILEDO LLM não devolveu nenhuma configuração utilizável — tente um prompt mais claro
AI_REQUEST_TIMEOUTNenhum provedor da cadeia de reserva respondeu dentro do prazo total de 45 s (cada um tem no máximo 20 s). Responde 503; tente de novo em instantes
AI_QUOTA_EXCEEDEDTodos os provedores da cadeia de reserva recusaram por cota ou limite de gastos. Responde 503; tentar de novo na hora não adianta, tente mais tarde
AI_CONFIG_INVALIDO LLM devolveu uma configuração que o motor rejeitou (raro; tente de novo com menos criatividade)
INVALID_LLM_PROVIDERSó no marketplace — llmProvider não está em openai anthropic google mistral cohere groq xai deepseek qwen local
INVALID_LLM_MODELSó no marketplace — llmModel não tem formato de ID de modelo

Erros de orçamento de saída (422)

CódigoSignificado
OUTPUT_TOO_COMPLEXO design produziria um SVG ou PDF com mais de 20 MB, ou uma tela raster interna com mais de 5120 px por lado. O tamanho de um SVG cresce com o número de módulos: um modelo com uma URL curta ocupa ~1,5 MB e com uma URL de 300 caracteres ~17 MB. Exporte em PNG, encurte o conteúdo ou use formatos de módulo mais simples

Erros do servidor (500/503)

CódigoSignificado
INTERNAL_ERRORInesperado — informe-nos com o id da requisição
QR_GENERATION_FAILEDO próprio motor de renderização lançou uma exceção. Inclui o campo problemático quando ele é conhecido
SERVER_BUSYRenderizações simultâneas em alta resolução demais. Aguarde e tente de novo

Restrições de validação dos campos

CampoRestrição
content1–4296 caracteres
prompt (IA)1–10000 caracteres
creativity (IA)0.0–1.0
pixelsPerModule1–100
outputWidth / outputHeight64–4096
logoSizePercent3–40 (o motor aplica um teto flexível de 25 com ECC H)
moduleScale0.5–1.0
moduleSizeVariation0.0–0.15 (teto flexível; qualquer valor acima disso impede a leitura)
qrShapeRadius0–50
Tamanho do arquivo de logo / fundo≤ 10 MB
Tipos de imagem de logo / fundoPNG, JPG, GIF, BMP, WebP
Documento SVG / PDF≤ 20 MB (OUTPUT_TOO_COMPLEX)
Arquivo pelo gateway de chaves de usuário≤ 10 MB (output_too_large)