API REST do LinkTwin

API de encurtador de URL: automatize links que abrem no app certo.

Crie, gerencie e acompanhe links curtos a partir do seu próprio código. Todo link criado pela API é um deep link do LinkTwin, então no celular ele abre o YouTube, a Amazon, o Spotify e mais de 100 outros apps em vez de um navegador. Conecte ao Zapier, n8n, Make, Airtable, Google Sheets ou a qualquer coisa que envie uma requisição HTTP.

Ver Documentação
cURL
curl -X POST "https://linktw.in/api/url/add" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.youtube.com/watch?v=x7K2pQ9mW4s", "custom": "desk-tour"}'
PHP
<?php
// Crie um link curto com a API do LinkTwin
$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => "https://linktw.in/api/url/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer YOUR_API_KEY",
        "Content-Type: application/json",
    ],
    CURLOPT_POSTFIELDS => json_encode([
        "url" => "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
        "custom" => "desk-tour",
    ]),
]);
$response = json_decode(curl_exec($curl));
echo $response->shorturl; // https://linktw.in/desk-tour
Node.js
// Node.js 18 ou mais recente, com o fetch nativo
const res = await fetch("https://linktw.in/api/url/add", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.LINKTWIN_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ url: "https://www.youtube.com/watch?v=x7K2pQ9mW4s", custom: "desk-tour" }),
});
const data = await res.json();
console.log(data.shorturl); // https://linktw.in/desk-tour
Python
import requests

response = requests.post(
    "https://linktw.in/api/url/add",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={"url": "https://www.youtube.com/watch?v=x7K2pQ9mW4s", "custom": "desk-tour"},
)
print(response.json()["shorturl"])  # https://linktw.in/desk-tour
TypeScript
// npm install @linktwin/client
import { LinkTwinClient } from "@linktwin/client";

const client = new LinkTwinClient({ apiKey: process.env.LINKTWIN_API_KEY });
const link = await client.links.create({
  url: "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
  custom: "desk-tour",
});
console.log(link.shorturl); // https://linktw.in/desk-tour
200Resposta
{
  "error": 0,
  "id": "1221",
  "shorturl": "https://linktw.in/desk-tour",
  "title": "My $200 desk setup (full tour)",
  "description": "A full tour of my $200 desk setup."
}
Funciona com
  • Zapier
  • n8n
  • Make
  • Airtable
  • Google Sheets
  • Slack
  • WordPress
  • Shopify
  • Apps Personalizados

Endpoints de API Populares

Os endpoints da API de links que você mais vai usar.

Todo endpoint recebe e retorna JSON via HTTPS, autenticado com sua chave de API como um token Bearer. Escolha um para ver uma requisição real e a resposta que ela retorna.

Criar um link curto ou deep link

Envie a URL longa e as opções que quiser em JSON. Só url é obrigatório. Cole uma URL do YouTube, Amazon ou Spotify e o link curto abre esse app no celular.

  • url obrigatório
  • custom
  • password
  • domain
  • expiry
  • clicklimit
  • expirationredirect
  • note
  • display_title
  • metatitle
  • metadescription
  • metaimage
  • pixels
  • collections
  • geotarget
  • devicetarget
  • languagetarget
  • abtesting
  • parameters
  • escape_inapp_browser
POST/api/url/add
curl -X POST "https://linktw.in/api/url/add" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.amazon.com/dp/B09T3KX8QV?tag=mayamakes-20",
    "custom": "desk-lamp",
    "collections": ["Amazon picks"],
    "geotarget": [
      {"location": "United Kingdom", "link": "https://www.amazon.co.uk/dp/B09T3KX8QV?tag=mayamakes-21"}
    ]
  }'
200Resposta
{
  "error": 0,
  "id": "1225",
  "shorturl": "https://linktw.in/desk-lamp",
  "title": "Amazon: LED desk lamp with clamp",
  "description": null
}
Os campos que você mais vai usar
urlA URL longa para encurtar (obrigatório)string
customAlias personalizado para a URL curta (opcional)string
expiryData de expiração para o link (opcional)datetime
passwordProteger o link com senha (opcional)string
domainUm domínio personalizado que você já adicionou à sua contastring
clicklimitNúmero máximo de cliques antes de o link expirarinteger
geotargetEnvie os visitantes de um país, ou de um estado, para uma URL diferentearray
devicetargetUma URL diferente para iPhone, Android e outros dispositivosarray
languagetargetUma URL diferente para cada idioma do navegadorarray
abtestingDivida o tráfego entre variantes por porcentagemarray
parametersUTM e outros parâmetros adicionados no redirecionamentoarray
pixels, collectionsIDs ou nomes de pixels e coleções para associararray

Ver este endpoint na documentação da API

Listar e buscar seus links

Percorra seus links página por página, ordene por data, cliques ou nome, e filtre por texto, data ou coleção.

  • limit
  • page
  • order
  • search
  • date_from
  • date_to
  • collections
  • timezone
GET/api/urls
curl "https://linktw.in/api/urls?limit=2&page=1&order=clicks_desc" \
  -H "Authorization: Bearer YOUR_API_KEY"
200Resposta, resumida
{
  "error": 0,
  "data": {
    "result": 9,
    "perpage": 2,
    "currentpage": 1,
    "nextpage": 2,
    "maxpage": 5,
    "urls": [
      {
        "id": 1221,
        "alias": "desk-tour",
        "shorturl": "https://linktw.in/desk-tour",
        "longurl": "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
        "title": "My $200 desk setup (full tour)",
        "clicks": 1764,
        "uniqueclicks": 1418,
        "date": "2026-08-06 21:41:00",
        "collections": [],
        "pixels": []
      },
      {
        "id": 1222,
        "alias": "new-camera",
        "shorturl": "https://linktw.in/new-camera",
        "longurl": "https://www.youtube.com/watch?v=Rt5pL0aZc1Q",
        "title": "Unboxing my new camera",
        "clicks": 1098,
        "uniqueclicks": 1045,
        "date": "2026-09-21 18:52:00",
        "collections": [],
        "pixels": []
      }
    ]
  }
}

Ver este endpoint na documentação da API

Obter um link

Informe o ID do link ou a URL curta completa. Você recebe as regras de segmentação, a expiração, as coleções e os pixels, além das contagens de cliques.

  • :id obrigatório
  • timezone
GET/api/url/:id
curl "https://linktw.in/api/url/1221" \
  -H "Authorization: Bearer YOUR_API_KEY"
200Resposta, resumida
{
  "error": 0,
  "id": 1221,
  "details": {
    "id": 1221,
    "alias": "desk-tour",
    "shorturl": "https://linktw.in/desk-tour",
    "longurl": "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
    "domain": "https://linktw.in",
    "title": "My $200 desk setup (full tour)",
    "pass": false,
    "expiry": null,
    "clicklimit": null,
    "date": "2026-08-06 21:41:00",
    "collections": [
      {
        "id": 4,
        "name": "YouTube",
        "description": null,
        "color": "#ff0033"
      }
    ],
    "pixels": []
  },
  "data": {
    "clicks": 1764,
    "uniqueClicks": 1418
  }
}

Ver este endpoint na documentação da API

Atualizar um link

Envie apenas os campos que você quer alterar. O link curto continua o mesmo, então todo post e QR code que o usa segue o novo destino.

  • :id obrigatório
  • url
  • e todos os campos de criação
PUT/api/url/:id/update
curl -X PUT "https://linktw.in/api/url/1221/update" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.youtube.com/watch?v=Rt5pL0aZc1Q", "expiry": "2026-12-31 23:59:59"}'
200Resposta
{
  "error": 0,
  "id": 1221,
  "shorturl": "https://linktw.in/desk-tour",
  "title": "Unboxing my new camera",
  "description": null
}

Ver este endpoint na documentação da API

Ler análise de cliques

Cliques, cliques únicos, principal referência e país, um gráfico diário e detalhamentos por país, referência, navegador, dispositivo e idioma para um link.

  • :id obrigatório
  • date_range
  • start_date
  • end_date
  • timezone
GET/api/statistics/link/:id
curl "https://linktw.in/api/statistics/link/1221?date_range=30d" \
  -H "Authorization: Bearer YOUR_API_KEY"
200Resposta, resumida
{
  "error": 0,
  "data": {
    "link": {
      "id": 1221,
      "shortUrl": "https://linktw.in/desk-tour",
      "longUrl": "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
      "title": "My $200 desk setup (full tour)",
      "absoluteClicks": 1764,
      "createdAt": "2026-08-06 21:41:00"
    },
    "totalClicks": 504,
    "totalUniqueClicks": 483,
    "topReferrer": "https://l.instagram.com",
    "topCountry": "United States",
    "topCountryCode": "US",
    "chartData": [
      {
        "date": "2026-09-03",
        "clicks": 19
      },
      {
        "date": "2026-09-04",
        "clicks": 20
      }
    ]
  }
}

O servidor MCP e a CLI também leem as análises de links por este endpoint.

Criar um QR code

Escolha um tipo (texto, vCard, link, e-mail, telefone, SMS ou Wi-Fi), os dados e, se quiser, cores e logo. Os QR codes de link contam as leituras, e você pode mudar o destino deles depois.

  • type obrigatório
  • data obrigatório
  • background
  • foreground
  • logo
POST/api/qr/add
curl -X POST "https://linktw.in/api/qr/add" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"type": "link", "data": "https://linktw.in/desk-tour", "foreground": "rgb(13,27,46)"}'
200Resposta
{
  "error": 0,
  "id": 3,
  "link": "https://linktw.in/qr/a58f79"
}

Ver este endpoint na documentação da API

Adicionar links a uma coleção

Adicione e remova muitos links em uma única chamada. O mesmo padrão associa um pixel de retargeting a muitos links em /api/pixel/:id/links.

  • :id obrigatório
  • add
  • remove
POST/api/collection/:id/links
curl -X POST "https://linktw.in/api/collection/4/links" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"add": [1221, 1222, 1223]}'
200Resposta
{
  "error": 0,
  "collection_id": 4,
  "added": [
    1221,
    1222,
    1223
  ],
  "removed": [],
  "errors": []
}

Ver este endpoint na documentação da API

Excluir um link

Exclua um link pelo ID ou pela URL curta, ou vários de uma vez com POST /api/urls/delete e uma lista de IDs.

  • :id obrigatório
DELETE/api/url/:id/delete
curl -X DELETE "https://linktw.in/api/url/1223/delete" \
  -H "Authorization: Bearer YOUR_API_KEY"
200Resposta
{
  "error": 0,
  "message": "Link has been successfully deleted."
}

Ver este endpoint na documentação da API

Requisições e respostas de exemplo. Os campos e formatos das respostas são os reais; os links e números são dados de exemplo.

Casos de Uso

O que Você Pode Construir com Nossa API?

De um Zap de uma etapa a uma integração completa no seu próprio produto, estas são as tarefas que as equipes confiam à API do LinkTwin.

Geração Automatizada de Links

Crie links curtos automaticamente quando novos produtos são adicionados, posts de blog são publicados ou conteúdo é enviado. Perfeito para plataformas de e-commerce e conteúdo.

  • Shopify
  • WordPress
  • WooCommerce

Gerenciamento de Links em Massa

Importe milhares de URLs de planilhas, gere links curtos em massa e exporte-os de volta. Ideal para campanhas de marketing e programas de afiliados.

  • Google Sheets
  • Excel
  • Importação CSV

Integração de Análises

Leve cliques, cliques únicos, referências, países e dispositivos para os seus próprios painéis, ferramentas de BI ou relatórios.

  • Looker Studio
  • Tableau
  • Power BI

Campanhas de E-mail e SMS

Gere links de rastreamento únicos para cada destinatário nas suas campanhas de e-mail ou SMS. Acompanhe o engajamento individual e otimize seu alcance.

  • Mailchimp
  • SendGrid
  • Twilio

Integração com Aplicativo Móvel

Crie deep links em tempo real a partir do seu app móvel. Compartilhe conteúdo com links inteligentes que abrem diretamente em outros apps em vez de navegadores.

  • iOS
  • Android
  • React Native

QR Codes Dinâmicos

Gere QR codes programaticamente para materiais impressos, embalagens de produtos ou ingressos de eventos. Atualize a URL de destino a qualquer momento sem reimprimir.

  • Sistemas de Impressão
  • Impressoras de Etiquetas
  • Sistemas PDV

Integração com Zapier

Encurtador de URL para Zapier: crie e acompanhe links a partir de qualquer Zap.

Use o LinkTwin como encurtador de URL dentro dos seus Zaps e deixe o LinkTwin avisar o Zapier quando algo acontecer. O mesmo funciona no n8n, no Make e em qualquer ferramenta que envie ou receba webhooks.

Crie links a partir de um Zap

Adicione uma ação Webhooks by Zapier que envia uma requisição POST para a API do LinkTwin. A etapa seguinte pode usar o link curto que ela retorna.

  1. GatilhoNova linha no Google Sheets
    Coluna
    URL do produto
  2. AçãoWebhooks by Zapier: POST
    URL
    https://linktw.in/api/url/add
    Tipo de payload
    json
    Dados
    url = {{Product URL}}
    Cabeçalhos
    Authorization: Bearer YOUR_API_KEY
  3. AçãoAtualize a linha com o link curto
    Link curto
    {{shorturl}}

Receba um webhook a cada novo link e clique

Cole uma URL de Catch Hook do Zapier na página de integração com o Zapier no seu painel. O LinkTwin envia um evento JSON sempre que você cria um link curto e sempre que alguém clica em um. Funciona com qualquer sistema de webhooks, não só com o Zapier.

Novo link
{
  "type": "url",
  "longurl": "https://www.youtube.com/watch?v=x7K2pQ9mW4s",
  "shorturl": "https://linktw.in/desk-tour",
  "date": "04-10-2026 09:41:12"
}
Novo clique
{
  "type": "view",
  "shorturl": "https://linktw.in/desk-tour",
  "country": "United States",
  "city": "Austin",
  "referer": "https://l.instagram.com",
  "os": "iOS",
  "browser": "Safari",
  "date": "2026-10-04 09:41:12"
}

Payloads de exemplo com os nomes de campo reais.

A mesma ideia no n8n e no Make

Use o nó HTTP Request no n8n ou o módulo HTTP no Make. Envie um POST para /api/url/add com sua chave de API no cabeçalho Authorization e a URL no corpo, depois mapeie shorturl para a etapa seguinte.

  • Guarde a chave como uma credencial de cabeçalho, nunca na URL.
  • Confira o campo error na resposta: 0 significa que o link foi criado.
  • Tarefas em massa: fique abaixo do limite de requisições e leia os cabeçalhos X-RateLimit.
n8n

Nó HTTP Request, com uma credencial Header Auth para Authorization.

{
  "method": "POST",
  "url": "https://linktw.in/api/url/add",
  "authentication": "genericCredentialType",
  "genericAuthType": "httpHeaderAuth",
  "sendBody": true,
  "bodyParameters": {
    "parameters": [
      { "name": "url", "value": "={{ $json.url }}" }
    ]
  }
}
Make

Módulo HTTP, Make a request. {{1.url}} é a URL da etapa anterior.

{
  "url": "https://linktw.in/api/url/add",
  "method": "POST",
  "headers": [
    { "name": "Authorization", "value": "Bearer YOUR_API_KEY" }
  ],
  "bodyType": "raw",
  "contentType": "application/json",
  "data": "{\"url\": \"{{1.url}}\"}"
}

Por Que Escolher Nossa API

Feito por Desenvolvedores, Para Desenvolvedores

Uma API REST simples, com JSON previsível, limites claros e documentação para cada endpoint.

Autenticação Segura

Autenticação por token Bearer com a capacidade de regenerar sua chave de API a qualquer momento. Todas as requisições são criptografadas via HTTPS.

Limites de requisições claros

Cada chave de API pode fazer 120 requisições por minuto, e cada resposta informa em que ponto você está.

Design RESTful

Endpoints limpos e intuitivos seguindo convenções REST. Respostas JSON com mensagens de erro detalhadas e códigos de status.

Deep links por padrão

Os links criados pela API abrem no YouTube, na Amazon, no Spotify e em mais de 100 outros apps, exatamente como os links criados no painel.

Suporte ao Desenvolvedor

Travou em alguma coisa? Escreva para nós e vamos ajudar a fazer sua integração funcionar.

Fale conosco
Posts reais, pessoas reais

E o que elas publicam no X

Cada post leva à fonte original, para você ler cada recomendação no contexto.

Perguntas de Desenvolvedores

Perguntas comuns sobre nossa API, autenticação, limites de requisições e integrações. Leia a documentação completa da API.

Como obtenho uma chave de API?

Entre e abra Configurações no seu painel, ou as páginas Servidor MCP e Ferramenta CLI em Ferramentas e Integrações. Sua chave de API aparece ali quando o seu plano inclui acesso à API, disponível em todos os planos. Você pode gerar uma nova a qualquer momento, e a chave antiga para de funcionar na hora.

Quais são os limites de taxa?

Cada chave de API pode fazer 120 requisições por minuto. Toda resposta traz os cabeçalhos X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset, para que você possa dosar suas chamadas, e uma requisição acima do limite recebe o erro 429 com um valor Retry-After. A criação de links também tem sua própria cota por minuto e por hora, que depende do seu plano e é informada nos cabeçalhos X-Create-RateLimit.

Posso usar a API com N8N, Zapier ou Make?

Sim. A API funciona com qualquer plataforma de automação que envie requisições HTTP: o nó HTTP Request no n8n, o Webhooks by Zapier ou o módulo HTTP no Make. O LinkTwin também pode chamar um webhook do Zapier sempre que você cria um link ou alguém clica em um. A documentação da API traz o formato de requisição de cada endpoint.

Quais endpoints estão disponíveis?

Links (criar, listar, obter, atualizar, excluir e excluir em massa), QR codes, coleções, domínios personalizados, pixels de retargeting, canais, estatísticas de cliques e as configurações da sua conta. A documentação da API lista os parâmetros e uma resposta de exemplo para cada um.

A API está incluída no plano gratuito?

O acesso à API está disponível em todos os planos. Você pode criar uma conta grátis para testar os links do LinkTwin primeiro e fazer upgrade quando estiver pronto para desenvolver. Veja planos e preços.

Vocês fornecem exemplos de código e SDKs?

Sim. A documentação mostra cada requisição em cURL, PHP e Node.js, e esta página acrescenta Python. Para JavaScript e TypeScript existe um cliente oficial no npm, @linktwin/client, que também é a base do servidor MCP e da CLI do LinkTwin.

Os links criados pela API abrem nos apps?

Sim. Um link criado pela API funciona exatamente como um criado no painel. No celular, ele abre o app certo, como YouTube, Amazon ou Spotify, e volta para o navegador quando o app não está instalado. Veja os apps suportados.

Existe uma integração com o Zapier?

Sim, nas duas direções. Um Zap pode criar links chamando a API com Webhooks by Zapier, e o LinkTwin pode enviar um webhook ao Zapier sempre que você cria um link ou alguém clica em um. Cole as URLs dos seus webhooks na página de integração com o Zapier no seu painel.

Uma chave de API, três formas de desenvolver

A REST API, o servidor MCP e a CLI usam a mesma chave de API e gerenciam os mesmos links.

Comece a Construir com Nossa API Hoje

Crie sua conta, escolha um plano com acesso à API e copie sua chave de API. Documentação completa e exemplos de código incluídos.

Leia a documentação ou veja os planos. O acesso à API está disponível em todos os planos.