Encurtar links
O encurtador de link via API transforma endereços longos em URLs curtas por uma chamada HTTP, sem depender de painel nem de extensão. Foi pensado para quem gera links em escala — sistemas de disparo, e-commerce, atendimento — e precisa que cada URL caiba num SMS ou numa mensagem de WhatsApp.
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.
Encurtador de site é para uma URL; API é para mil
Colar link em site de encurtador resolve quando é um link por semana. Quando o seu sistema emite dezenas de URLs por dia — rastreamento de pedido, segunda via, link de pagamento — o encurtamento precisa acontecer dentro do fluxo, sem gente no meio. É isso que a API faz: seu código envia a URL longa, recebe a curta e segue o baile, tudo em uma chamada HTTP.
SMS, WhatsApp e impressão agradecem
No SMS, cada caractere custa: uma URL de rastreamento com 120 caracteres pode dobrar o preço do disparo ou quebrar a mensagem em duas. No WhatsApp, o link gigante empurra o texto para fora da tela e ganha cara de golpe. No papel — etiqueta, panfleto, proposta — URL longa é impossível de digitar. O link curto resolve os três cenários com o mesmo movimento.
Quanto custa
US$ 0,002 por link criado, e só. Não há mensalidade, não há pacote mínimo e não há cobrança por clique: dez mil links curtos saem por US$ 20. A compra é direta — sem abrir conta — e o pagamento é via PayPal. Para operações que hoje pagam assinatura de encurtador com franquia, a matemática por uso costuma ser sensivelmente mais leve.
Três cuidados de quem encurta em escala
Primeiro: não encurte URL com token sensível sem controlar a validade no seu sistema — o link curto é tão público quanto o longo. Segundo: em SMS, mande o link acompanhado do nome da sua empresa, porque link curto sozinho dispara o alarme de golpe no brasileiro escolado. Terceiro: padronize onde cada link é usado, para depois conseguir medir o retorno de cada canal.
Casos de uso
Rastreamento de pedido por SMS
A Distribuidora Horizonte Verde S.A. envia o link de rastreio de cada entrega por SMS. Encurtando via API na hora do faturamento, a mensagem cabe em um único SMS — e a economia paga o serviço muitas vezes.
Link de pagamento no WhatsApp
Uma loja de móveis de Porto Alegre gera o link de pagamento no ERP e o encurta antes de mandar no WhatsApp do cliente. Mensagem limpa, link clicável, menos cara de golpe.
Proposta comercial impressa
Ana Paula Ferreira, corretora em Curitiba, imprime propostas com um link curto para a versão digital sempre atualizada. O cliente digita doze caracteres em vez de oitenta.
Perguntas frequentes
O link curto expira depois de um tempo?
Não criamos links para expirar: uma vez gerado, ele segue redirecionando para o destino. Se a sua operação exige validade, controle o prazo no destino — invalidando a página — e não no link.
Tem limite de quantos links posso criar?
Não há franquia: cada link criado é cobrado a US$ 0,002 e pronto. Cem ou cem mil, a regra é a mesma.
Dá para saber quantos cliques cada link recebeu?
Dá — a consulta de estatísticas dos links curtos criados aqui também existe via API, como capacidade própria, com preço publicado.
Preciso de biblioteca ou SDK?
Não. É uma chamada HTTP comum: qualquer linguagem que faça um POST consegue usar, do PHP da hospedagem compartilhada à função serverless.
Isso é grátis no navegador, como outras ferramentas do site?
Este é um serviço de API, pago por uso, com preço publicado e sem surpresa. As ferramentas gratuitas do site são as que rodam inteiras no seu navegador; encurtar link exige um redirecionamento sempre no ar do nosso lado.
Para onde vão os dados dos meus links? E a LGPD?
O serviço registra o essencial para funcionar: a URL longa, a curta correspondente e os acessos que passam pelo redirecionamento. Não é preciso criar conta, e não pedimos dados de quem clica além do necessário técnico.
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/dev/short-url \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/dev/short-url", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/short-url",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/short-url", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/short-url", 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
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.short_url",
"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.
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. |