Documentação da API de remoção de fundo

Envie uma imagem e receba um PNG transparente com uma única chave API.

POSThttps://api.remox.ai/v1.0/removebg

Início rápido

Solicitar acesso API →

Guarde a chave emitida no servidor. Nunca a exponha no navegador ou aplicativo. A troca preserva a identidade e o saldo do cliente.

REMOX_API_KEY

Use JPG, PNG ou WebP estático. Redimensione antes do envio; a API não redimensiona imagens.

Exemplos de código →

Autenticação

Guarde a chave emitida no servidor. Nunca a exponha no navegador ou aplicativo. A troca preserva a identidade e o saldo do cliente.

CampoValor aceito
X-API-Keyremox_live_… / remox_test_…
Secret / X-Subuid / X-Platform-User / X-RapidAPI-User—
image_url / Base64 / shadow / refine—

Exemplos de código

cURL
# Set REMOX_API_KEY in your environment first.
curl 'https://api.remox.ai/v1.0/removebg' \
  -H "X-API-Key: $REMOX_API_KEY" \
  -H 'Idempotency-Key: image-0001' \
  -F 'image_file=@/path/to/input.jpg' \
  -F 'size=auto' \
  --max-time 75 --fail-with-body \
  -D response-headers.txt -o remox-result.png
# On non-2xx, the output file contains error JSON, not a PNG.

Use JPG, PNG ou WebP estático. Redimensione antes do envio; a API não redimensiona imagens.

input.jpg → image/jpeg · PNG → image/png · WebP → image/webp

Referência da requisição

POST /v1.0/removebg · multipart/form-data

Use JPG, PNG ou WebP estático. Redimensione antes do envio; a API não redimensiona imagens.

CampoObrigatórioValor aceito
image_file✓JPG / PNG / WebP · ≤20 MiB (20 × 1024 × 1024 bytes) · max(width, height) ≤1920 px · min(width, height) ≤1080 px
size—auto
response_format—image / json
Idempotency-Key—8–128 · A–Z a–z 0–9 . _ : -

Respostas

200 · PNG

response_format=image · Content-Type: image/png

X-Request-ID · X-Task-ID · X-Idempotency-Key

200 · JSON

response_format=json
{
  "requestId": "req_…",
  "taskId": "task_…",
  "data": {
    "result_url": "https://storage.example/result.png?signature=…&expires=…"
  }
}
data.result_url ≠ result_b64

Tempo limite e novas tentativas

Após 60 segundos, um 504 pode indicar uma tarefa em andamento. Consulte o estado ou repita com a mesma imagem e Idempotency-Key para evitar cobrança duplicada.

GET /v1.0/tasks/{taskId}
{
  "requestId": "req_…",
  "taskId": "task_…",
  "status": "completed",
  "progress": null,
  "pollAfterMs": 2000,
  "result": {
    "downloadPath": "/v1.0/tasks/task_…/result",
    "mimeType": "image/png",
    "expiresAt": "2026-10-17T00:00:00.000Z"
  }
}
GET /v1.0/tasks/{taskId}/result
GET /v1.0/tasks/{taskId}/result?response_format=json

creating → queued → processing → completed / failed / timed_out

Retry-After · pollAfterMs: 2000 · X-API-Key

Conta e créditos

Os créditos são reservados na criação, consumidos no sucesso e liberados na falha ou expiração da tarefa. O tempo limite síncrono não os libera.

CampoValor aceito
creditsavailable / reserved / consumed
GET /v1.0/accountX-API-Key
POST → AI300 ms
POST → 50460 s
task → timed_out35 min
task_expired90 d
result_expired (Worker)7 d

Erros

Verifique errors e o estado antes de repetir. Guarde requestId para suporte; nunca registre sua chave.

{
  "requestId": "req_…",
  "retryable": false,
  "errors": [
    {
      "code": "invalid_credentials",
      "title": "Invalid API key."
    }
  ]
}
HTTPerrors[].codeErros
400invalid_request, invalid_fileRequisição inválida
400invalid_size, invalid_response_formatRequisição inválida
400invalid_idempotency_key, invalid_subjectRequisição inválida
402insufficient_creditsCréditos insuficientes
403invalid_credentialsAcesso negado
403platform_disabled, platform_paused, scope_deniedAcesso negado
404not_found, upload_not_foundNão encontrado
409idempotency_conflictConflito ou tarefa incompleta
409result_not_readyConflito ou tarefa incompleta
410task_expired, result_expiredExpirado
413file_too_largeArquivo muito grande
415invalid_image, animated_image_unsupportedImagem não suportada
422image_dimensions_exceededDimensões excedidas
429rate_limit_exceeded, hourly_quota_exhausted, inflight_limit_exceededLimite de requisições
502upload_failed, upstream_rejected, upstream_unavailableFalha no serviço externo
502create_result_unknown, remote_service_error, invalid_result, result_unavailable, task_failed, task_timeoutFalha no serviço externo
503service_not_configured, credit_price_not_configured, server_errorServiço indisponível
504sync_timeoutTempo limite síncrono

retryable: 429 / 5xx

Após 60 segundos, um 504 pode indicar uma tarefa em andamento. Consulte o estado ou repita com a mesma imagem e Idempotency-Key para evitar cobrança duplicada.

Compatibilidade

Apenas remoção de fundo com chave simples. Não implementa todas as opções do remove.bg. URLs de resultado JSON são uma extensão REMOX.

Solicitar acesso API →