Autentique-se com uma chave de API, crie links curtos de marca, gere senhas de uso único e valide-as. Mais endpoints serão adicionados à medida que a plataforma se expande.
Todos os endpoints são servidos a partir de uma única URL base. Cada solicitação precisa da sua chave de API no cabeçalho chave x-api e as solicitações JSON usam Content-Type: application/json.
https://cpt.cx
x-api-key: YOUR_API_KEY Content-Type: application/json
curl -X POST "https://cpt.cx/shortlink/public-generate" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "BBC News",
"url": "https://www.bbc.com/news",
"domain": "cpt.cx",
"tags": ["News", "BBC"]
}'Cada endpoint público é autenticado com uma chave de API enviada no cabeçalho chave x-api. As chaves são limitadas à sua conta, aos domínios registrados e aos provedores configurados para seus canais. Trate as chaves como segredos — nunca as inclua em código do lado do cliente.
x-api-key: YOUR_API_KEY
Crie links curtos com sua marca em qualquer domínio registrado em sua conta. Use o endpoint individual para um link, ou o endpoint de lote para gerar muitos em uma única solicitação — ideal para campanhas de SMS, RCS, WhatsApp e e-mail.
name — string, obrigatóriourl — string, obrigatório, deve usar http ou httpsdomain — string, obrigatório, deve ser um domínio registrado em sua contatags — array de strings, opcionalusername / password — opcional, devem ser enviados como um par para proteger o link com senha{
"name": "BBC News",
"url": "https://www.bbc.com/news",
"domain": "cpt.cx",
"tags": ["News", "BBC"]
}{
"name": "BBC News",
"shortUrl": "https://cpt.cx/RRRRRF",
"createdDate": "2025-07-02T15:38:02.95Z",
"expiryDate": "2025-08-01T15:38:02.95Z"
}A expiração padrão é de 30 dias a partir da criação.
Envie um array JSON de objetos de link curto. Cada item usa os mesmos campos e regras de validação que o endpoint individual. A resposta contém um resumo mais um resultado para cada item de entrada.
[
{
"name": "BBC News",
"url": "https://www.bbc.com/news",
"domain": "cpt.cx"
},
{
"name": "Facebook",
"url": "https://www.facebook.com",
"domain": "cpt.cx",
"tags": ["News", "World"]
}
]{
"summary": { "successCount": 2, "failedCount": 0 },
"results": [
{
"name": "BBC News",
"shortUrl": "https://cpt.cx/RRRRRT",
"createdDate": "2025-07-02T15:42:05Z",
"expiryDate": "2025-08-01T15:42:05Z"
},
{
"name": "Facebook",
"shortUrl": "https://cpt.cx/RRRRRa",
"createdDate": "2025-07-02T15:42:05Z",
"expiryDate": "2025-08-01T15:42:05Z"
}
]
}Gere senhas de uso único para entrega por SMS ou e-mail e valide-as mais tarde com o otpId retornado. O valor do OTP nunca é retornado pela API — ele é entregue ao destinatário e armazenado apenas como um hash com um TTL.
channel — obrigatório, email ou smsprovider — obrigatório, o provedor configurado para esse canal em sua conta (ex. generic, twilio, sendgrid)destination — obrigatório, endereço de e-mail ou número de telefone em formato E.164type — obrigatório, numeric ou alphanumericlength — obrigatório, entre 4 e 12expiresInSeconds — obrigatório, deve ser maior que 0{
"channel": "email",
"provider": "generic",
"destination": "test@example.com",
"type": "alphanumeric",
"length": 8,
"expiresInSeconds": 300
}{
"otpId": "51a6fcc7-efc8-4e69-8bc1-ebb999befb2c",
"destination": "test@example.com",
"createdAt": "2025-09-10T14:05:41Z",
"expiresAt": "2025-09-10T14:10:41Z"
}Envie o otpId retornado por /otp/generate junto com o valor do OTP que o usuário inseriu. Uma validação bem-sucedida consome o OTP — os códigos são de uso único.
{
"otpId": "c4f8814c-7a9d-4e13-b7d8-d4e66d272611",
"otp": "z4dGyBPQ"
}{
"success": true,
"message": "OTP validated successfully."
}Após repetidas tentativas falhas, a validação retornará Muitas tentativas fracassadas. Tente novamente mais tarde. até que o bloqueio temporário expire.
Erros de validação são retornados com mensagens descritivas como Formato URL inválido. ou Provedor não encontrado para este cliente e canal.. Os seguintes detalhes ainda não estão documentados publicamente — trate-os como pendências e entre em contato conosco se precisar de uma resposta definitiva para uso em produção:
Arquivos para agentes de IA, crawlers de LLM, geração de clientes de API e descoberta técnica. Vinculados a partir do <head> do site e do robots.txt para descoberta confiável.
Nós provisionaremos as chaves, registraremos seus domínios e configuraremos seus provedores — geralmente em um dia.