Guia de migração

LassoCut: saia da API do remove.bg antes de 1º de dezembro de 2026

O remove.bg fecha em 1º de dezembro de 2026 (site e contas às 9h CET). A API self-service deixa de aceitar requisições a partir de 1º de dezembro de 2026, e os plugins são retirados no mesmo dia.

Datas e contratos Enterprise (que continuam): FAQ do remove.bg. Anúncio noticiado no início de setembro de 2026 (Bitvoxy, 3 de setembro de 2026). O que fecha exatamente?

O LassoCut é compatível com a API do remove.bg: troque a URL base e a chave, e as suas requisições atuais continuam funcionando, com o mesmo endpoint, os mesmos parâmetros e os mesmos códigos de erro. Se você procura uma alternativa ao remove.bg para o seu código, este é o caminho mais curto.

  • Endpoint: POST https://api.lassocut.com/v1.0/removebg
  • Autenticação: o mesmo cabeçalho X-Api-Key
  • 50 prévias grátis por mês (até 10 por dia) em cada conta
  • Sem assinatura; os créditos comprados nunca expiram

Atualizado em 27 de setembro de 2026.

Trocar uma URL

- https://api.remove.bg/v1.0/
+ https://api.lassocut.com/v1.0/
  1. Obtenha uma chave do LassoCut. Entre com GitHub ou Google na sua conta (página em inglês) e crie uma chave.
  2. Substitua a URL base. https://api.remove.bg/v1.0/ passa a ser https://api.lassocut.com/v1.0/.
  3. Substitua a chave. Ela continua no cabeçalho X-Api-Key. As rotas, os campos de formulário, os corpos JSON e os formatos de resposta não mudam.

Compatibilidade, parâmetro por parâmetro

Cada linha é um elemento da API v1.0 do remove.bg. A coluna LassoCut indica o que a API do LassoCut aceita hoje. A coluna Leonardo.Ai é o caminho para o qual o remove.bg direciona os clientes da API self-service; ela vem do guia de migração da Leonardo, consultado em 27 de setembro de 2026. Quando a Leonardo mantém um parâmetro, ele passa para um objeto JSON parameters. «Não documentado» significa que esse guia não o menciona.

API v1.0 do remove.bgLassoCutLeonardo.Ai
Endpoint POST /v1.0/removebgMesma rotaDiferente: POST /api/rest/v2/generationssync
Autenticação X-Api-KeyMesmo cabeçalhoNão: Authorization: Bearer
image_file (multipart)SimNão: só JSON (base64, ou um endpoint de upload separado)
image_urlSimMovido: guidances.image_reference (URL)
image_file_b64SimMovido: guidances.image_reference (BASE64)
sizeSimSim, dentro de parameters
typeSimSim, dentro de parameters
format auto, png, jpg, webp, zipOs cincopng, jpg, webp; sem auto nem zip
bg_colorSimSim, dentro de parameters
bg_image_url, bg_image_fileOs doisbg_image_file: não; bg_image_url: movido para guidances.background_image_reference
crop, crop_marginSimSim, dentro de parameters
scale, positionSimSim, dentro de parameters
channels rgba, alphaSimSim, dentro de parameters
Bytes da imagem na respostaSim (ou JSON com Accept: application/json)Não: sempre JSON (URL ou base64)
Cabeçalhos X-Credits-Charged, X-Type, X-Width, X-HeightSim, além de X-Foreground-*Não: o custo vem num objeto cost, largura e altura no corpo JSON; sem X-Type nem posição do assunto
GET /v1.0/accountSim, mesmo formato de respostaNão documentado
POST /v1.0/improveSimNão

O LassoCut também aceita roi, type_level, semitransparency, add_shadow, shadow_type e shadow_opacity, os nomes de tamanho antigos (small, regular, medium, hd, 4k), e devolve os cabeçalhos de limite de requisições e 429 com Retry-After. Veja a referência da API (em inglês).

Antes e depois: só mudam a URL e a chave

Os exemplos em curl, Python e Node foram executados contra a API de produção em 27 de setembro de 2026 e devolveram um PNG.

curl

Antes

curl -H "X-Api-Key: $REMOVE_BG_API_KEY" \
     -F "image_file=@photo.jpg" \
     -F "size=auto" \
     -o sem-fundo.png \
     https://api.remove.bg/v1.0/removebg

Depois

curl -H "X-Api-Key: $LASSOCUT_API_KEY" \
     -F "image_file=@photo.jpg" \
     -F "size=auto" \
     -o sem-fundo.png \
     https://api.lassocut.com/v1.0/removebg

Python (requests)

Antes

import os, requests

r = requests.post(
    "https://api.remove.bg/v1.0/removebg",
    headers={"X-Api-Key": os.environ["REMOVE_BG_API_KEY"]},
    files={"image_file": open("photo.jpg", "rb")},
    data={"size": "auto"},
)
r.raise_for_status()
open("sem-fundo.png", "wb").write(r.content)
print("créditos cobrados:", r.headers["X-Credits-Charged"])

Depois

import os, requests

r = requests.post(
    "https://api.lassocut.com/v1.0/removebg",
    headers={"X-Api-Key": os.environ["LASSOCUT_API_KEY"]},
    files={"image_file": open("photo.jpg", "rb")},
    data={"size": "auto"},
)
r.raise_for_status()
open("sem-fundo.png", "wb").write(r.content)
print("créditos cobrados:", r.headers["X-Credits-Charged"])

Node.js (18 ou posterior, fetch)

Antes

import { readFile, writeFile } from "node:fs/promises";

const form = new FormData();
form.append("image_file", new Blob([await readFile("photo.jpg")]), "photo.jpg");
form.append("size", "auto");

const res = await fetch("https://api.remove.bg/v1.0/removebg", {
  method: "POST",
  headers: { "X-Api-Key": process.env.REMOVE_BG_API_KEY },
  body: form,
});
if (!res.ok) throw new Error(JSON.stringify(await res.json()));
await writeFile("sem-fundo.png", Buffer.from(await res.arrayBuffer()));

Depois

import { readFile, writeFile } from "node:fs/promises";

const form = new FormData();
form.append("image_file", new Blob([await readFile("photo.jpg")]), "photo.jpg");
form.append("size", "auto");

const res = await fetch("https://api.lassocut.com/v1.0/removebg", {
  method: "POST",
  headers: { "X-Api-Key": process.env.LASSOCUT_API_KEY },
  body: form,
});
if (!res.ok) throw new Error(JSON.stringify(await res.json()));
await writeFile("sem-fundo.png", Buffer.from(await res.arrayBuffer()));

PHP (cURL)

Antes

$ch = curl_init("https://api.remove.bg/v1.0/removebg");
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => ["X-Api-Key: " . getenv("REMOVE_BG_API_KEY")],
    CURLOPT_POSTFIELDS => ["image_file" => new CURLFile("photo.jpg"), "size" => "auto"],
    CURLOPT_RETURNTRANSFER => true,
]);
file_put_contents("sem-fundo.png", curl_exec($ch));

Depois

$ch = curl_init("https://api.lassocut.com/v1.0/removebg");
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => ["X-Api-Key: " . getenv("LASSOCUT_API_KEY")],
    CURLOPT_POSTFIELDS => ["image_file" => new CURLFile("photo.jpg"), "size" => "auto"],
    CURLOPT_RETURNTRANSFER => true,
]);
file_put_contents("sem-fundo.png", curl_exec($ch));

Consultar o saldo

curl -H "X-Api-Key: $LASSOCUT_API_KEY" https://api.lassocut.com/v1.0/account

A resposta tem o mesmo formato de antes: data.attributes.credits e data.attributes.api.free_calls.

Bibliotecas e linha de comando

Python: pacote removebg

O endereço é uma constante do módulo: mude-o uma vez, antes de criar o cliente.

import removebg.removebg
removebg.removebg.API_ENDPOINT = "https://api.lassocut.com/v1.0/removebg"

from removebg import RemoveBg
RemoveBg(LASSOCUT_API_KEY, "erros.log").remove_background_from_img_file("photo.jpg")

PHP: mtownsend/remove-bg

O endereço é uma propriedade pública do cliente.

$removebg = new \Mtownsend\RemoveBg\RemoveBg($lassocutApiKey);
$removebg->endpoint = 'https://api.lassocut.com/v1.0/removebg';
$removebg->file('photo.jpg')->save('sem-fundo.png');

Linha de comando: o CLI do LassoCut

As mesmas opções da ferramenta de linha de comando do remove.bg, os resultados mantêm o sufixo -removebg e REMOVE_BG_API_KEY continua sendo lida. Requer Node.js 18 ou posterior. Detalhes no guia do CLI (em inglês).

export LASSOCUT_API_KEY=sua-chave
npm install -g lassocut-cli
lassocut --output-directory saida/ fotos/

Código-fonte e lista completa de opções: github.com/jaupin94/lassocut-cli.

Node.js: pacote remove.bg

O endereço dele é fixo no código. Chame a API com fetch como acima: bastam poucas linhas.

Os plugins que param de funcionar em 1º de dezembro

Os plugins do remove.bg são retirados no mesmo dia (FAQ do remove.bg), e os plugins de terceiros que chamam a API do remove.bg deixam de funcionar com ela. O LassoCut tem plugins próprios para estas ferramentas, todos com uma única conta e um único saldo de créditos (guias em inglês):

  • Photoshop: o recorte é adicionado como uma nova camada.
  • Figma: age no próprio lugar, no Figma, FigJam e Figma Slides.
  • WordPress e WooCommerce: Biblioteca de mídia e imagens de produto, mantendo os originais.
  • GIMP 3: o recorte é adicionado como uma nova camada.
  • n8n: um nó verificado pelo n8n, ou o seu nó HTTP Request com a nova URL e a nova chave.
  • Zapier: remove o fundo da imagem em qualquer Zap e devolve um arquivo.
  • Make: um aplicativo OAuth com um módulo Remove Background, ou o seu módulo HTTP com a nova URL e a nova chave.

Você usa o aplicativo de desktop ou a ferramenta de linha de comando do remove.bg? Veja o guia do aplicativo de desktop e o guia do CLI (em inglês). Todas as ferramentas estão na página de plataformas. Para uma pasta inteira sem escrever código, veja como remover fundo em lote.

Créditos que nunca expiram

O LassoCut não tem assinatura. Você compra créditos quando precisa, e os créditos comprados não expiram enquanto sua conta estiver aberta. 1 crédito = 1 imagem em tamanho original; uma prévia custa 0,25 crédito, e cada conta tem 50 prévias grátis por mês (até 10 por dia).

Pacotes: 100 créditos por US$ 9, 1.000 por US$ 39 (US$ 0,039 por imagem), 10.000 por US$ 249 (US$ 0,0249 por imagem) e 100.000 por US$ 1.500 (US$ 0,015 por imagem). Veja os preços.

Para comparação, a Leonardo.Ai cobra US$ 0,1047 por imagem para remover o fundo (guia de migração da Leonardo, consultado em 27 de setembro de 2026).

Os créditos pré-pagos (PAYG) do remove.bg que não forem usados expiram em 1º de dezembro de 2026 e não valem no LassoCut (FAQ do remove.bg).

O que muda

  • Sombras. add_shadow e shadow_type são aceitos. A sombra suave e a sombra projetada (também o que 3D e auto dão) são desenhadas; o estilo «car» (veículo) ainda não.
  • O recorte em si. O nosso processamento não é o do remove.bg: as bordas não serão idênticas pixel a pixel. Teste com uma amostra das suas próprias imagens antes de mudar a produção.
  • Tipo detectado. Com type=auto, X-Type vem do nosso próprio classificador e pode ser diferente do que você obtinha com imagens ambíguas.
  • Créditos existentes. Os créditos do remove.bg não valem no LassoCut.

Perguntas

O LassoCut faz parte do remove.bg?

Não. O LassoCut é um serviço independente operado pela JAUPIN Design LLC. Ele implementa a API do remove.bg, documentada publicamente, para que o código existente continue funcionando.

Por que não migrar para a Leonardo.Ai?

É possível. Segundo o guia de migração da Leonardo, a API dela usa outro endpoint, um token Bearer e só requisições JSON, sem envio multipart, sem saída ZIP nem format=auto: é preciso reescrever as chamadas. Com o LassoCut, as chamadas existentes continuam funcionando assim que você troca a URL e a chave. As outras opções estão no comparativo de alternativas ao remove.bg.

A API Enterprise do remove.bg também vai fechar?

Não. Segundo a FAQ do remove.bg, os contratos de API Enterprise não são afetados. A que para de funcionar em 1º de dezembro de 2026 é a API self-service.

Minhas imagens ficam guardadas?

Não. As imagens enviadas para /removebg são processadas em memória e depois apagadas. Só ficam guardadas as imagens que você mesmo envia para /improve, para melhorar os modelos.

Algo não bate?

Envie a requisição e a resposta que você recebeu para contact@lassocut.com. Os erros de compatibilidade têm prioridade.