Esta é uma tradução fornecida por conveniência. A referência técnica autoritativa é a versão em inglês; em caso de divergência, o texto em inglês prevalece.

curl -X POST https://removegifbg.com/api/v1/jobs \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@input.gif"

Autenticação

Toda requisição precisa de uma chave de API, enviada em um destes cabeçalhos:

Authorization: Bearer bgr_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
X-API-Key: bgr_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Crie uma chave no painel de Chaves de API do seu dashboard. A chave em texto puro é mostrada exatamente uma vez, na criação — se você perdê-la, revogue-a e gere uma nova. Você pode ter até 10 chaves ativas ao mesmo tempo; todas compartilham um único saldo de créditos.

Créditos e preços

Cada arquivo custa 1 crédito por segundo de duração processada, mínimo de 3 créditos — um clipe de 2 segundos ainda custa o piso de 3 créditos, um clipe de 10 segundos custa 10. Os créditos são debitados quando o trabalho é enviado (antes de o processamento começar), com base na duração do próprio arquivo, não em uma taxa fixa por arquivo. Uma requisição em lote cobra por cada arquivo do lote antecipadamente — se seu saldo não cobrir o lote inteiro, nada nele é criado. Se um arquivo se revelar ilegível, o crédito desse arquivo é reembolsado automaticamente.

PlanoCréditosPreço
Pacote de créditos — Micro15 (nunca expiram)$1.99
Pacote de créditos — Light150 (nunca expiram)$9.99
Pacote de créditos — Heavy900 (nunca expiram)$39.99
Plus Trimestral2.700 / trimestreUS$ 79,99/tri
Pro Mensal3.000 / mêsUS$ 79,99/mês
Pro Anual36.000 / anoUS$ 799,99/ano

Os créditos ficam na sua conta, não em uma chave individual — toda chave que você cria consome do mesmo pool. Verifique seu saldo a qualquer momento com GET /api/account (autenticação de sessão do dashboard, não autenticação por chave de API).

Enviar um arquivo — POST /api/v1/jobs

Dados de formulário multipart:

CampoValoresNotas
fileobrigatório.gif, .mp4, .mov, .webm
methodauto (padrão) · fast · rembgfast usa preenchimento por inundação em vez de segmentação por IA — mais rápido, funciona melhor em fundos de cor sólida
tolerance832 (padrão 16)usado apenas por method=fast
croptrue (padrão) · falsecorta automaticamente para a caixa delimitadora do sujeito
pad050 px (padrão 12)espaçamento mantido ao redor do corte
canvasW / canvasHpxtamanho da tela de saída; omita para manter o tamanho original
anchorcenter (padrão) · bottomposicionamento do sujeito ao redimensionar para uma tela
outputFormatgif (padrão) · apng · webm · mp4veja a nota abaixo sobre mp4
bgColortransparent (padrão) · #rrggbbobrigatório para mp4
trimtrue · false (padrão)apara automaticamente quadros ociosos de entrada/saída — apenas fontes GIF

A saída mp4 não tem canal alfa, então só faz sentido com um bgColor sólido — solicitar mp4 com fundo transparente volta para gif automaticamente.

curl -X POST https://removegifbg.com/api/v1/jobs \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@input.gif" \ -F "outputFormat=apng" \ -F "bgColor=transparent"

Resposta 202:

{ "id": "b165...", "status": "queued", "creditsRemaining": 19, "links": { "self": "/api/v1/jobs/b165...", "download": "/api/v1/jobs/b165.../download" } }

Consultar status — GET /api/v1/jobs/:id

curl https://removegifbg.com/api/v1/jobs/b165... \ -H "Authorization: Bearer YOUR_API_KEY"
{ "id": "b165...", "status": "queued | processing | done | failed", "metadata": { "originalName": "input.gif", "inputSize": 372273, "frameCount": 14, "width": 512, "height": 512, "duration": 0.84, "outputSize": 158210 }, "outputFormat": "gif", "previewUrl": "/api/v1/jobs/b165.../preview", "downloadUrl": "/api/v1/jobs/b165.../download", "error": null }

previewUrl aparece assim que uma pré-visualização está disponível; downloadUrl só quando status é done. Um trabalho só é visível para a chave de API que o criou — qualquer outra chave recebe um 404.

Pré-visualização e download

GET /api/v1/jobs/:id/preview e GET /api/v1/jobs/:id/download transmitem o arquivo diretamente, autenticados da mesma forma que qualquer outra chamada — sem um token de download separado.

Lotes — POST /api/v1/batches

Os mesmos campos de POST /api/v1/jobs, mas repita o campo file uma vez por arquivo (até 20 arquivos por requisição). Um conjunto de opções se aplica a cada arquivo do lote.

curl -X POST https://removegifbg.com/api/v1/batches \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@a.gif" -F "file=@b.gif" -F "file=@c.gif"
{ "id": "batch_...", "jobs": [{ "id": "...", "filename": "a.gif" }], "creditsRemaining": 15 }

GET /api/v1/batches/:id retorna { "id", "status": "processing | partial | done", "jobs": [...] } com cada entrada no mesmo formato de GET /api/v1/jobs/:id.

Erros

StatusCorpoSignificado
401{ "error": "unauthorized" }chave de API ausente, inválida ou revogada
402{ "error": "insufficient_credits", "creditsRemaining" }créditos insuficientes — nenhum trabalho foi criado
400{ "error": "bad_request" }nenhum arquivo válido, ou corpo multipart malformado
422{ "error": "unreadable_file" }não foi possível analisar o arquivo — nenhum crédito cobrado
404{ "error": "not_found" }o trabalho/lote não existe, ou pertence a outra chave
429{ "error": "rate_limited" }muitas requisições — veja o cabeçalho Retry-After

Limites de taxa

As requisições têm limite de taxa por chave de API. Se você atingir o limite, a resposta inclui um cabeçalho Retry-After (segundos) — espere esse tempo antes de tentar de novo. Precisa de um limite maior para uma integração de produção? fale conosco pelo seu dashboard.

Obter uma chave de API