Página sobrando no PDF?
Excluir páginas do PDF remove de vez o que não deve seguir no arquivo: a página em branco que o escâner criou, a duplicada, a tabela interna de custos que ninguém de fora pode ver. Você aponta os números das páginas pela API e recebe o documento limpo, sem rastro delas.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Removida de verdade, não escondida
Há uma diferença importante entre ocultar e excluir. Aqui a página sai do arquivo: o PDF gerado simplesmente não a contém, e quem receber o documento não tem como recuperá-la, porque ela não está lá. Para conteúdo sensível — preços internos, dados de terceiros, anotações — é essa garantia que interessa, não um truque de visualização que qualquer leitor de PDF desfaz.
A herança do escâner
Multifuncional com alimentador é fábrica de página em branco: todo verso vazio vira uma folha no PDF, e documentos escaneados duas vezes geram duplicatas. O resultado é um arquivo inchado e desleixado. Apontar as páginas sobrando e gerar o documento limpo leva segundos — e, num fluxo com volume, o seu sistema faz isso automaticamente depois de cada digitalização, antes de o arquivo chegar a quem vai conferir.
Antes de mandar para fora da empresa
O caso mais delicado é o documento que circula: a proposta que reaproveita um modelo interno, o relatório que tem um anexo confidencial, o material com a página de margens e custos. Excluir essas páginas antes do envio é a diferença entre compartilhar um documento e vazar informação. Como a operação é definitiva no arquivo gerado, o que saiu, saiu.
Quanto custa
US$ 0,002 por chamada — remover páginas de 500 documentos custa US$ 1,00. O arquivo de entrada pode ter até 25 MB e 200 páginas, e o original nunca é alterado: você recebe uma versão nova e limpa. Preço em dólar americano, publicado nesta página, sem assinatura e sem valor mínimo por mês — o custo existe apenas quando a operação roda, e cada chamada já sai com o valor fechado.
Casos de uso
Escaneado sem as páginas em branco
O financeiro da Distribuidora Horizonte Verde S.A. digitaliza contratos frente e verso, e metade dos versos é vazia. Antes de arquivar, o sistema exclui as páginas em branco — o arquivo fica menor e a leitura, contínua.
Proposta sem a tabela interna
Uma consultoria reaproveitou o modelo interno de proposta e a página de custos e margens quase foi junto para o cliente. Agora o fluxo exclui as páginas internas antes de qualquer envio externo.
Apostila distribuída sem o gabarito
Thiago Barbosa Lima dá treinamentos e mantém apostila e gabarito no mesmo documento-mestre. Na hora de distribuir para a turma, gera a versão sem as páginas de resposta.
Contrato sem a página duplicada
O contrato voltou do escâner com a página 8 repetida. Antes de coletar assinaturas, a duplicata sai — porque documento assinado com página dobrada gera dúvida depois.
Perguntas frequentes
Quem recebe o arquivo consegue recuperar a página excluída?
Não. A página não é ocultada: ela não existe no PDF gerado. O que foi removido não viaja junto.
Posso excluir várias páginas de uma vez?
Sim — a chamada aceita uma lista de números e intervalos (por exemplo: 3, 7, 12 a 15), tudo em uma operação só.
E se eu errar o número da página?
Sem drama: o original não é alterado. Gere de novo com a lista certa — cada chamada custa US$ 0,002.
Qual o limite de arquivo?
25 MB e 200 páginas por documento de entrada, limites publicados.
O documento fica retido no servidor?
Só o tempo necessário para você baixar o resultado. Nada é reaproveitado nem analisado — tratamento compatível com a LGPD.
O atendimento é em português?
O suporte humano atende em espanhol e inglês — mas pode escrever em português: espanhol e português se entendem bem, e a gente se vira.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/pdf/remove-pages \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/remove-pages", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/remove-pages",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/remove-pages", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/remove-pages", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"pdf": "https://ejemplo.com/documento.pdf"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.remove_pages",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 25 |
max_pages | 200 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
413 | input_too_large | A entrada passou do tamanho máximo desta tarefa. Confira os limites publicados. |